Skip to content

Commit

Permalink
23283 add cd ci scripts strr pay (#169)
Browse files Browse the repository at this point in the history
* Add code owner for strr-api directory

* adding thor as a codeowner for strr-api

* addomg cd and ci scripts for strr pay

* fix backend link

* add devops folder with gcp info

* add isort

* ran isort

* setup pylint

* fixing issues pointed out by pylint

* formatting

* working on flake8 errors

* added flake8 formatting file

* adding test repo for team to be automating tests

* run formatter

* adding doc string to fake test

* resolve mismatch between config.py and clouddeploy.yaml

* fix typo

* add flake8 configuration to pyproject.toml

* profile values

* rename testing to test in gcp config file

* Refactor config to separate unit testing and GCP test environments, renaming  and adding new

* fix indent on line 66

* update strr-api refrence to move away from forked repo
  • Loading branch information
avni-work authored Oct 11, 2024
1 parent 8d0feaf commit 704846a
Show file tree
Hide file tree
Showing 12 changed files with 1,163 additions and 826 deletions.
30 changes: 30 additions & 0 deletions .github/workflows/strr-pay-cd.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: STRR PAY CD

on:
push:
branches:
- main
paths:
- "queue_services/strr-pay/**"
workflow_dispatch:
inputs:
target:
description: "Deploy To"
required: true
type: choice
options:
- dev
- test
- sandbox
- prod

jobs:
strr-pay-cd:
uses: bcgov/bcregistry-sre/.github/workflows/backend-cd.yaml@main
with:
target: ${{ inputs.target }}
app_name: "strr-pay"
working_directory: "queue_services/strr-pay"
secrets:
WORKLOAD_IDENTIFY_POOLS_PROVIDER: ${{ secrets.WORKLOAD_IDENTIFY_POOLS_PROVIDER }}
GCP_SERVICE_ACCOUNT: ${{ secrets.GCP_SERVICE_ACCOUNT }}
20 changes: 20 additions & 0 deletions .github/workflows/strr-pay-ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: STRR PAY CI

on:
pull_request:
paths:
- "queue_services/strr-pay/**"
workflow_dispatch:

defaults:
run:
shell: bash
working-directory: ./queue_services/strr-pay

jobs:
strr-pay-ci:
uses: bcgov/bcregistry-sre/.github/workflows/backend-ci.yaml@main
with:
app_name: "strr-pay"
working_directory: "./queue_services/strr-pay"
codecov_flag: "strrpay"
63 changes: 63 additions & 0 deletions queue_services/strr-pay/devops/gcp/clouddeploy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
apiVersion: deploy.cloud.google.com/v1
kind: DeliveryPipeline
metadata:
name: strr-pay-pipeline
description: Deployment pipeline
serialPipeline:
stages:
- targetId: bcrbk9-dev
profiles: [dev]
strategy:
standard:
verify: false
deployParameters:
- values:
deploy-env: "development"
deploy-project-id: "bcrbk9-dev"
service-name: "strr-pay-dev"
container-name: "strr-pay-dev"
cloudsql-instances: "bcrbk9-dev:northamerica-northeast1:strr-db-dev"
service-account: "[email protected]"

- targetId: bcrbk9-test
profiles: [test]
strategy:
standard:
verify: false
deployParameters:
- values:
deploy-env: "test"
deploy-project-id: "bcrbk9-test"
service-name: "strr-pay-test"
container-name: "strr-pay-test"
cloudsql-instances: "bcrbk9-test:northamerica-northeast1:strr-db-test"
service-account: "[email protected]"

- targetId: bcrbk9-sandbox
profiles: [sandbox]
standard:
verify: false
deployParameters:
- values:
deploy-env: "staging"
deploy-project-id: "bcrbk9-tools"
service-name: "strr-pay-sandbox"
container-name: "strr-pay-sandbox"
cloudsql-instances: "bcrbk9-tools:northamerica-northeast1:strr-db-sandbox"
service-account: "[email protected]"

- targetId: bcrbk9-prod
profiles: [prod]
strategy:
standard:
verify: false
deployParameters:
- values:
deploy-env: "production"
deploy-project-id: "bcrbk9-prod"
service-name: "strr-pay-prod"
container-name: "strr-pay-prod"
cloudsql-instances: "bcrbk9-prod:northamerica-northeast1:strr-db-prod"
service-account: "[email protected]"
max-scale: "10"
container-concurrency: "20"
30 changes: 30 additions & 0 deletions queue_services/strr-pay/devops/vaults.gcp.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
LD_SDK_KEY="op://launchdarkly/$APP_ENV/strr/STRR_LD_SDK_KEY"
PAY_API_URL="op://API/$APP_ENV/pay-api/PAY_API_URL"
PAY_API_VERSION="op://API/$APP_ENV/pay-api/PAY_API_VERSION"
AUTH_API_URL="op://API/$APP_ENV/auth-api/AUTH_API_URL"
AUTH_API_VERSION="op://API/$APP_ENV/auth-api/AUTH_API_VERSION"
LEGAL_API_URL="op://API/$APP_ENV/legal-api/LEGAL_API_URL"
LEGAL_API_VERSION_2="op://API/$APP_ENV/legal-api/LEGAL_API_VERSION_2"
LTSA_API_URL="op://API/$APP_ENV/ltsa-api/LTSA_API_URL"
LTSA_API_VERSION="op://API/$APP_ENV/ltsa-api/LTSA_API_VERSION"
LTSA_API_KEY_STRR="op://API/$APP_ENV/ltsa-api/LTSA_API_KEY_STRR"
GEOCODER_API_URL="op://API/$APP_ENV/geocoder/GEOCODER_API_URL"
GEOCODER_API_AUTH_KEY="op://API/$APP_ENV/geocoder/GEOCODER_API_AUTH_KEY"
KEYCLOAK_AUTH_TOKEN_URL="op://keycloak/$APP_ENV/base/KEYCLOAK_AUTH_TOKEN_URL"
STRR_SERVICE_ACCOUNT_CLIENT_ID="op://keycloak/$APP_ENV/strr-service-account/STRR_SERVICE_ACCOUNT_CLIENT_ID"
STRR_SERVICE_ACCOUNT_SECRET="op://keycloak/$APP_ENV/strr-service-account/STRR_SERVICE_ACCOUNT_SECRET"
DATABASE_NAME="op://database/$APP_ENV/strr-db/DATABASE_NAME"
DATABASE_PASSWORD="op://database/$APP_ENV/strr-db/DATABASE_PASSWORD"
DATABASE_PORT="op://database/$APP_ENV/strr-db/DATABASE_PORT"
DATABASE_UNIX_SOCKET="op://database/$APP_ENV/strr-db/DATABASE_UNIX_SOCKET"
DATABASE_USERNAME="op://database/$APP_ENV/strr-db/DATABASE_USERNAME"
JWT_OIDC_AUDIENCE="op://keycloak/$APP_ENV/account-services-account/ACCOUNT_SERVICES_SERVICE_ACCOUNT_CLIENT_ID"
JWT_OIDC_JWKS_CACHE_TIMEOUT="op://keycloak/$APP_ENV/jwt-base/JWT_OIDC_JWKS_CACHE_TIMEOUT"
JWT_OIDC_WELL_KNOWN_CONFIG="op://keycloak/$APP_ENV/jwt-base/JWT_OIDC_WELL_KNOWN_CONFIG"
JWT_OIDC_ISSUER="op://keycloak/$APP_ENV/jwt-base/JWT_OIDC_ISSUER"
JWT_OIDC_CACHING_ENABLED="op://keycloak/$APP_ENV/jwt-base/JWT_OIDC_CACHING_ENABLED"
JWT_OIDC_ALGORITHMS="op://keycloak/$APP_ENV/jwt-base/JWT_OIDC_ALGORITHMS"
GCP_AUTH_KEY="op://buckets/$APP_ENV/strr/GCP_AUTH_KEY"
GCP_CS_PROJECT_ID="op://buckets/$APP_ENV/strr/GCP_CS_PROJECT_ID"
GCP_CS_SA_SCOPE="op://buckets/$APP_ENV/strr/GCP_CS_SA_SCOPE"
GCP_CS_BUCKET_ID="op://buckets/$APP_ENV/strr/GCP_CS_BUCKET_ID"
Loading

0 comments on commit 704846a

Please sign in to comment.