diff --git a/.github/workflows/deployement.yml b/.github/workflows/deployement.yml deleted file mode 100644 index 9bc4342..0000000 --- a/.github/workflows/deployement.yml +++ /dev/null @@ -1,84 +0,0 @@ -name: Deploy to production - -on: - workflow_run: - workflows: - - Docker Image CI - types: - - completed - -jobs: - check-and-deploy: - if: ${{ github.event.workflow_run.conclusion == 'success' }} - runs-on: ubuntu-latest - environment: prod - - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - ref: ${{ github.event.workflow_run.head_sha }} - fetch-depth: 0 - - - name: Check if tag is from prod branch - id: check - run: | - TAG_REF="${{ github.event.workflow_run.head_branch }}" - echo "Tag/Branch: $TAG_REF" - - # Récupère les branches contenant ce commit - BRANCHES=$(git branch -r --contains ${{ github.event.workflow_run.head_sha }}) - echo "Branches containing this commit: $BRANCHES" - - if echo "$BRANCHES" | grep -q "origin/prod"; then - echo "is_prod=true" >> $GITHUB_OUTPUT - echo "✅ Tag is from prod branch - will deploy" - else - echo "is_prod=false" >> $GITHUB_OUTPUT - echo "❌ Tag is not from prod branch - skipping deployment" - fi - - - name: Deploy to production server - if: steps.check.outputs.is_prod == 'true' - uses: appleboy/ssh-action@v1.0.3 - with: - host: ${{ secrets.PROD_SSH_HOST }} - username: ${{ secrets.PROD_SSH_USER }} - key: ${{ secrets.PROD_SSH_KEY }} - script: | - set -e - cd /root/AperiSolve - - # update code - git pull - - # create .env - cat < .env - MAX_CONTENT_LENGTH=${{ vars.MAX_CONTENT_LENGTH }} - MAX_PENDING_TIME=${{ vars.MAX_PENDING_TIME }} - MAX_STORE_TIME=${{ vars.MAX_STORE_TIME }} - CLEAR_AT_RESTART=${{ vars.CLEAR_AT_RESTART }} - SKIP_IHDR_FILL=${{ vars.SKIP_IHDR_FILL }} - - FLASK_DEBUG=${{ vars.FLASK_DEBUG }} - FLASK_ENV=${{ vars.FLASK_ENV }} - - RQ_DASHBOARD_REDIS_URL=${{ secrets.REDIS_URL }} - - POSTGRES_USER=${{ secrets.POSTGRES_USER }} - POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} - POSTGRES_DB=${{ secrets.POSTGRES_DB }} - DB_URI=${{ secrets.DATABASE_URL }} - - SENTRY_DSN=${{ secrets.SENTRY_DSN }} - SENTRY_TRACES_SAMPLE_RATE=${{ secrets.SENTRY_TRACES_SAMPLE_RATE }} - SENTRY_PROFILES_SAMPLE_RATE=${{ secrets.SENTRY_PROFILES_SAMPLE_RATE }} - SENTRY_RELEASE=${{ secrets.SENTRY_RELEASE }} - SENTRY_ENVIRONMENT=${{ secrets.SENTRY_ENVIRONMENT }} - EOF - - # Pull images and deploy - docker compose pull - docker compose down - docker compose up -d - docker image prune -f diff --git a/.github/workflows/releases.yml b/.github/workflows/release.yml similarity index 54% rename from .github/workflows/releases.yml rename to .github/workflows/release.yml index cd82718..b866453 100644 --- a/.github/workflows/releases.yml +++ b/.github/workflows/release.yml @@ -18,25 +18,6 @@ jobs: - name: Checkout uses: actions/checkout@v4 - with: - fetch-depth: 0 # required to verify branch - - - name: Check which branch the tag belongs to - id: check_branch - run: | - # Trouve les branches qui contiennent ce tag - BRANCHES=$(git branch -r --contains ${{ github.ref }}) - - if echo "$BRANCHES" | grep -q "origin/main"; then - echo "branch=main" >> $GITHUB_OUTPUT - echo "LATEST_TAG=latest" >> $GITHUB_ENV - elif echo "$BRANCHES" | grep -q "origin/prod"; then - echo "branch=prod" >> $GITHUB_OUTPUT - echo "LATEST_TAG=latest-prod" >> $GITHUB_ENV - else - echo "branch=other" >> $GITHUB_OUTPUT - echo "LATEST_TAG=" >> $GITHUB_ENV - fi - name: Set up QEMU uses: docker/setup-qemu-action@v3 @@ -58,4 +39,4 @@ jobs: push: true tags: | ghcr.io/${{ env.lower_actor }}/aperisolve:${{ env.RELEASE_VERSION }} - ${{ env.LATEST_TAG && format('ghcr.io/{0}/aperisolve:{1}', env.lower_actor, env.LATEST_TAG) || '' }} + ghcr.io/${{ env.lower_actor }}/aperisolve:latest