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