portfolio/.gitea/workflows/publish.yml
Ryan Freeman a33e31aaf5
Some checks failed
Build And Publish / BuildAndPublish (push) Failing after 1m58s
Add docker compose
2025-06-09 23:08:14 +01:00

69 lines
2.4 KiB
YAML

name: Build And Publish
run-name: ${{ gitea.actor }} runs ci pipeline
on:
push:
branches:
- 'main'
jobs:
BuildAndPublish:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: https://github.com/actions/checkout@v4
- name: Generate env
run: ./generate_env.sh
env:
NEXT_PUBLIC_SITE_URL: ${{ secrets.NEXT_PUBLIC_SITE_URL }}
GITHUB_ACCESS_TOKEN: ${{ secrets._GITHUB_ACCESS_TOKEN }}
GITHUB_USER_ID: ${{ secrets._GITHUB_USER_ID }}
GITHUB_USERNAME: ${{ secrets._GITHUB_USERNAME }}
GITHUB_CLIENT_ID: ${{ secrets._GITHUB_CLIENT_ID }}
GITHUB_SECRET: ${{ secrets._GITHUB_SECRET }}
NEXT_PUBLIC_SUPABASE_URL: ${{ secrets.NEXT_PUBLIC_SUPABASE_URL }}
NEXT_PUBLIC_SUPABASE_ANON_KEY: ${{ secrets.NEXT_PUBLIC_SUPABASE_ANON_KEY }}
SUPABASE_SERVICE_ROLE_KEY: ${{ secrets.SUPABASE_SERVICE_ROLE_KEY }}
AUTH_SECRET: ${{ secrets.AUTH_SECRET }}
AUTH_TRUST_HOST: ${{ secrets.AUTH_TRUST_HOST }}
AUTH_REDIRECT_PROXY_URL: ${{ secrets.AUTH_REDIRECT_PROXY_URL }}
NTFY_URL: ${{ secrets.NTFY_URL }}
NTFY_TOKEN: ${{ secrets.NTFY_TOKEN }}
LISTMONK_URL: ${{ secrets.LISTMONK_URL }}
LISTMONK_LIST_ID: ${{ secrets.LISTMONK_LIST_ID }}
LISTMONK_USERNAME: ${{ secrets.LISTMONK_USERNAME }}
LISTMONK_TOKEN: ${{ secrets.LISTMONK_TOKEN }}
- name: Create docker compose
run: ./docker_compose.sh
env:
SERVER_IP: ${{ vars.SERVER_IP }}
- name: Use Node.js
uses: https://github.com/actions/setup-node@v3
with:
node-version: '18.17.0'
- name: Stop container and remove old images
continue-on-error: true
run: |
sudo docker compose down
sudo docker image rm portfolio/frontend
- name: Docker compose up
run: |
sudo docker compose up -d
#
# - name: Stop and remove old Docker container
# continue-on-error: true
# run: |
# sudo docker stop ${{vars.REPO_NAME}}
# sudo docker rm ${{vars.REPO_NAME}}
#
# - name: Pull new image and start Docker container
# run: |
# sudo docker run -d --restart unless-stopped \
# --env-file ./.env \
# --name ${{vars.REPO_NAME}} \
# -p ${{vars.SERVER_IP}}:3000:3000 \
# ${{vars.REPO_NAME}}:latest