50 lines
1.0 KiB
YAML
50 lines
1.0 KiB
YAML
name: build and deploy portfolio
|
|
|
|
on:
|
|
push:
|
|
branches: [ "master" ]
|
|
pull_request:
|
|
branches: [ "master" ]
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: 'Create env file'
|
|
run: |
|
|
touch api/.env
|
|
echo DB_STRING=${{ secrets.DB_STRING }} >> api/.env
|
|
- name: Build the Docker image
|
|
run: docker compose build
|
|
- name: Docker push
|
|
run: docker push docker.dariusklein.nl/portfolio-api:latest
|
|
|
|
|
|
publish:
|
|
|
|
needs: build
|
|
|
|
runs-on: self-hosted
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
sparse-checkout: |
|
|
docker-compose.yml
|
|
- name: copy file
|
|
run: mv docker-compose.yml /home/darius/portfolio
|
|
- name: Docker login
|
|
run: docker login docker.kleinwizard.nl -u Darius -p ${{ secrets.DOCKER_PASSWORD }}
|
|
- name: Docker pull
|
|
run: |
|
|
cd /home/darius/portfolio
|
|
docker compose pull
|
|
- name: Docker run
|
|
run: |
|
|
cd /home/darius/portfolio
|
|
docker compose up -d
|