Skip to content

Commit

Permalink
fix: adjusting workflows to latest changes in gh-workflows, adding ba…
Browse files Browse the repository at this point in the history
…ck ci.yml
  • Loading branch information
nutrina committed Jul 24, 2024
1 parent 131d6d2 commit 3909a40
Show file tree
Hide file tree
Showing 3 changed files with 111 additions and 32 deletions.
16 changes: 9 additions & 7 deletions .github/workflows/build_and_deploy_generic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
AWS_ACCESS_KEY_ID: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
- id: build_and_push_docker_image
uses: passportxyz/gh-workflows/.github/actions/build_and_push@fix_build_dir
uses: passportxyz/gh-workflows/.github/actions/build_and_push@main
with:
refspec: ${{ needs.ref.outputs.refspec }}
docker_tag: ${{ needs.ref.outputs.docker_tag }}
Expand All @@ -68,7 +68,7 @@ jobs:
AWS_ACCESS_KEY_ID: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
- id: build_and_push_docker_image
uses: passportxyz/gh-workflows/.github/actions/build_and_push@fix_build_dir
uses: passportxyz/gh-workflows/.github/actions/build_and_push@main
with:
refspec: ${{ needs.ref.outputs.refspec }}
docker_tag: ${{ needs.ref.outputs.docker_tag }}
Expand All @@ -94,7 +94,7 @@ jobs:
AWS_ACCESS_KEY_ID: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
- id: build_and_push_docker_image
uses: passportxyz/gh-workflows/.github/actions/build_and_push@fix_build_dir
uses: passportxyz/gh-workflows/.github/actions/build_and_push@main
with:
refspec: ${{ needs.ref.outputs.refspec }}
docker_tag: ${{ needs.ref.outputs.docker_tag }}
Expand All @@ -105,6 +105,7 @@ jobs:
dockerfile_name: ./indexer/Dockerfile
build_dir: ./indexer/


deploy_preview:
name: Preview - Deploying AWS Infra
needs: [ref, docker-ecs, docker-lambda, docker-indexer]
Expand All @@ -131,9 +132,9 @@ jobs:
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/PULUMI_ACCESS_TOKEN
- name: Prepare to Deploy to AWS
uses: ./.github/actions/prepare_deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/prepare_deploy_to_aws@main
- name: Deploy Preview
uses: ./.github/actions/deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/deploy_to_aws@main
with:
docker_tag: ${{ needs.ref.outputs.docker_tag }}
stack_name: gitcoin/scroll-badge-service/${{ inputs.environment }}
Expand Down Expand Up @@ -181,12 +182,13 @@ jobs:
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/PULUMI_ACCESS_TOKEN
- name: Prepare to Deploy to AWS
uses: ./.github/actions/prepare_deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/prepare_deploy_to_aws@main
- name: Deploy Review
uses: ./.github/actions/deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/deploy_to_aws@main
with:
docker_tag: ${{ needs.ref.outputs.docker_tag }}
stack_name: gitcoin/scroll-badge-service/${{ inputs.environment }}
pulumi_command: up
aws_region: us-west-2
AWS_ACCESS_KEY_ID: ${{ env.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.AWS_SECRET_ACCESS_KEY }}
Expand Down
86 changes: 86 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
name: CI

on:
push:
branches: [main]
pull_request:
branches: [main]

jobs:
api-test:
runs-on: ubuntu-latest

services:
redis:
image: redis
# Set health checks to wait until redis has started
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 6379:6379

postgres:
image: postgres:12.3-alpine
env:
POSTGRES_USER: passport_scorer
POSTGRES_PASSWORD: passport_scorer_pwd
POSTGRES_DB: passport_scorer

ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.11"

- name: Install pipenv
run: pip3 install pipenv

- name: Generate requirements.txt
working-directory: ./api
run: pipenv requirements --dev > requirements.txt

- name: Install API dependencies
working-directory: ./api
run: pip3 install -r requirements.txt

- name: Django Check
working-directory: ./api
env:
CERAMIC_CACHE_SCORER_ID: ""
SECRET_KEY: secret-test-value
run: python manage.py check

- name: Run API unittests
working-directory: ./api
run: pytest
env:
CERAMIC_CACHE_SCORER_ID: ""
SECRET_KEY: secret-test-value
DATABASE_URL: postgres://passport_scorer:passport_scorer_pwd@localhost:5432/passport_scorer
DATA_MODEL_DATABASE_URL: postgres://passport_scorer:passport_scorer_pwd@localhost:5432/passport_scorer
FF_API_ANALYTICS: on

ui-test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- name: Install UI dependencies
working-directory: ./interface
run: yarn --frozen-lockfile && yarn build

- name: Run tests
working-directory: ./interface
run: yarn test
41 changes: 16 additions & 25 deletions .github/workflows/deploy_generic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- id: ref
uses: ./.github/actions/load_commit_ref
uses: passportxyz/gh-workflows/.github/actions/load_commit_ref@main
with:
commit: ${{ inputs.commit }}

outputs:
version_tag: ${{ steps.ref.outputs.version_tag }}
docker_tag: ${{ steps.ref.outputs.sha_short }}
docker_tag: ${{ steps.ref.outputs.docker_tag }}
refspec: ${{ steps.ref.outputs.refspec }}

deploy_preview:
Expand All @@ -48,16 +48,13 @@ jobs:
with:
export-env: true
env:
AWS_ACCESS_KEY_ID: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/PULUMI_ACCESS_TOKEN
ROUTE_53_DOMAIN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/ROUTE_53_DOMAIN
SCROLL_SECRETS_ARN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/SCROLL_SECRETS_ARN
VC_SECRETS_ARN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/VC_SECRETS_ARN
AWS_ACCESS_KEY_ID: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/PULUMI_ACCESS_TOKEN
- name: Prepare to Deploy to AWS
uses: ./.github/actions/prepare_deploy_to_aws
- name: Preview Deploy
uses: ./.github/actions/deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/prepare_deploy_to_aws@main
- name: Deploy Review
uses: passportxyz/gh-workflows/.github/actions/deploy_to_aws@main
with:
docker_tag: ${{ needs.ref.outputs.docker_tag }}
stack_name: gitcoin/scroll-badge-service/${{ inputs.environment }}
Expand All @@ -67,9 +64,7 @@ jobs:
AWS_ACCESS_KEY_ID: ${{ env.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.AWS_SECRET_ACCESS_KEY }}
PULUMI_ACCESS_TOKEN: ${{ env.PULUMI_ACCESS_TOKEN }}
ROUTE_53_DOMAIN: ${{ env.ROUTE_53_DOMAIN }}
SCROLL_SECRETS_ARN: ${{ env.SCROLL_SECRETS_ARN }}
VC_SECRETS_ARN: ${{ env.VC_SECRETS_ARN }}
OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }}

deploy_confirm:
name: Review Approval Pending
Expand Down Expand Up @@ -103,23 +98,19 @@ jobs:
with:
export-env: true
env:
AWS_ACCESS_KEY_ID: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-secrets/service/PULUMI_ACCESS_TOKEN
ROUTE_53_DOMAIN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/ROUTE_53_DOMAIN
SCROLL_SECRETS_ARN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/SCROLL_SECRETS_ARN
VC_SECRETS_ARN: op://DevOps/passport-scroll-badge-service-${{ inputs.environment }}-env/service/VC_SECRETS_ARN
AWS_ACCESS_KEY_ID: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/AWS_SECRET_ACCESS_KEY
PULUMI_ACCESS_TOKEN: op://DevOps/passport-scorer-${{ inputs.environment }}-secrets/ci/PULUMI_ACCESS_TOKEN
- name: Prepare to Deploy to AWS
uses: ./.github/actions/prepare_deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/prepare_deploy_to_aws@main
- name: Deploy Review
uses: ./.github/actions/deploy_to_aws
uses: passportxyz/gh-workflows/.github/actions/deploy_to_aws@main
with:
docker_tag: ${{ needs.ref.outputs.docker_tag }}
stack_name: gitcoin/scroll-badge-service/${{ inputs.environment }}
pulumi_command: up
aws_region: us-west-2
AWS_ACCESS_KEY_ID: ${{ env.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ env.AWS_SECRET_ACCESS_KEY }}
PULUMI_ACCESS_TOKEN: ${{ env.PULUMI_ACCESS_TOKEN }}
ROUTE_53_DOMAIN: ${{ env.ROUTE_53_DOMAIN }}
SCROLL_SECRETS_ARN: ${{ env.SCROLL_SECRETS_ARN }}
VC_SECRETS_ARN: ${{ env.VC_SECRETS_ARN }}
OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN }}

0 comments on commit 3909a40

Please sign in to comment.