diff --git a/.github/actions/notify-slack/action.yml b/.github/actions/notify-slack/action.yml index 0de0d6cb5..d2e6ea923 100644 --- a/.github/actions/notify-slack/action.yml +++ b/.github/actions/notify-slack/action.yml @@ -19,7 +19,7 @@ runs: steps: - name: Load secrets from 1Password id: onepw_secrets - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -78,9 +78,10 @@ runs: }' > slack_payload.json - name: Post notification in Slack channel - uses: slackapi/slack-github-action@v1.26.0 + uses: slackapi/slack-github-action@v4 with: + # slack-github-action v2+ moved the webhook URL and type from env vars + # (SLACK_WEBHOOK_URL / SLACK_WEBHOOK_TYPE) to these inputs. + webhook: ${{ env.SLACK_WEBHOOK_URL }} + webhook-type: incoming-webhook payload-file-path: ./slack_payload.json - env: - SLACK_WEBHOOK_URL: ${{ env.SLACK_WEBHOOK_URL }} - SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK diff --git a/.github/workflows/api-deploy-developer.yml b/.github/workflows/api-deploy-developer.yml index 7fa8743ed..cdb6fa22f 100644 --- a/.github/workflows/api-deploy-developer.yml +++ b/.github/workflows/api-deploy-developer.yml @@ -57,18 +57,18 @@ jobs: needs: [] steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Extract commit hash and version from git run: ./scripts/extract-hash-and-version.sh - name: Set up JDK ${{ env.java_version }} - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: ${{ env.java_version }} distribution: 'temurin' - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -111,32 +111,32 @@ jobs: run: scripts/function-python-build.sh --function_name operations_api - name: Upload generated feeds_gen - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: feeds_gen path: api/src/feeds_gen/ - name: Upload generated database_gen - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: database_gen path: api/src/shared/database_gen/ - name: Upload generated users_database_gen - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: users_database_gen path: api/src/shared/users_database_gen/ - name: Upload generated user_service_gen - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: user_service_gen path: api/src/user_service_gen/ - name: Upload operations API build if: ${{ github.event.inputs.deploy_operations_api != 'false' }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: operations_api_build path: functions-python/operations_api/.dist/ @@ -153,7 +153,7 @@ jobs: service_url: ${{ steps.get_url.outputs.url }} steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Set service name and image tag id: names @@ -162,22 +162,22 @@ jobs: echo "image_tag=developer-$(date +%s)-${GITHUB_SHA::8}" >> "$GITHUB_OUTPUT" - name: Download generated artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: feeds_gen path: api/src/feeds_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: database_gen path: api/src/shared/database_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: users_database_gen path: api/src/shared/users_database_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: user_service_gen path: api/src/user_service_gen/ @@ -187,12 +187,12 @@ jobs: echo "ENVIRONMENT=dev" > config/.env.local - name: Authenticate to Google Cloud - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.DEV_GCP_MOBILITY_FEEDS_SA_KEY }} - name: Login to Artifact Registry - uses: docker/login-action@v3 + uses: docker/login-action@v4 with: registry: ${{ env.REGION }}-docker.pkg.dev username: _json_key_base64 @@ -208,7 +208,7 @@ jobs: -version "${{ steps.names.outputs.image_tag }}" - name: GCloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Deploy to developer Cloud Run # Creates/updates ONLY developer-feed-api- — shared dev Cloud Run is untouched. @@ -248,7 +248,7 @@ jobs: function_url: ${{ steps.get_url.outputs.url }} steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Set function name id: names @@ -256,18 +256,18 @@ jobs: echo "function_name=operations-api-developer-${{ github.event.inputs.name_suffix || 'dev' }}" >> "$GITHUB_OUTPUT" - name: Download operations API build - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: operations_api_build path: functions-python/operations_api/.dist/ - name: Authenticate to Google Cloud - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.DEV_GCP_MOBILITY_FEEDS_SA_KEY }} - name: Load OPERATIONS_OAUTH2_CLIENT_ID from 1Password - uses: 1password/load-secrets-action@v2 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -275,7 +275,7 @@ jobs: OPERATIONS_OAUTH2_CLIENT_ID: "op://rbiv7rvkkrsdlpcrz3bmv7nmcu/GCP_RETOOL_OAUTH2_CREDS/username" - name: GCloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Deploy to developer Cloud Function # Creates/updates ONLY operations-api-developer- — shared operations-api is untouched. diff --git a/.github/workflows/api-deployer.yml b/.github/workflows/api-deployer.yml index 07629b5d6..08d35707b 100644 --- a/.github/workflows/api-deployer.yml +++ b/.github/workflows/api-deployer.yml @@ -101,20 +101,20 @@ jobs: permissions: write-all steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Set Variables run: | @@ -130,7 +130,7 @@ jobs: scripts/replace-variables.sh -in_file infra/backend.conf.rename_me -out_file infra/artifact-registry/backend.conf -variables BUCKET_NAME,OBJECT_PREFIX scripts/replace-variables.sh -in_file infra/artifact-registry/vars.tfvars.rename_me -out_file infra/artifact-registry/vars.tfvars -variables PROJECT_ID,REGION,ENVIRONMENT,ARTIFACT_REPO_NAME - - uses: hashicorp/setup-terraform@v3 + - uses: hashicorp/setup-terraform@v4 with: terraform_version: 1.5.3 terraform_wrapper: false @@ -158,7 +158,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Persist TF plan - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: terraform-artifact-plan.txt path: infra/artifact-registry/terraform-plan.txt @@ -171,13 +171,13 @@ jobs: needs: [create-artifact-repo, api-build-test] steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Extract commit hash and version from git run: ./scripts/extract-hash-and-version.sh - name: Upload version_info to workflow artefacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: version_info path: api/src/version_info @@ -185,24 +185,24 @@ jobs: - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: Login to Google Artifact Registry - uses: docker/login-action@v3 + uses: docker/login-action@v4 with: registry: ${{inputs.REGION}}-docker.pkg.dev username: _json_key_base64 password: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: Set up JDK ${{ env.java_version }} - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: ${{ env.java_version }} distribution: 'temurin' - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -219,23 +219,23 @@ jobs: echo "ENVIRONMENT=dev" >> config/.env.local # db models were generated and uploaded in api-build-test job above. - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: database_gen path: api/src/shared/database_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: users_database_gen path: api/src/shared/users_database_gen/ # api schema was generated and uploaded in api-build-test job above. - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: feeds_gen path: api/src/feeds_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: user_service_gen path: api/src/user_service_gen/ @@ -263,38 +263,38 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Extract commit hash and version from git run: ./scripts/extract-hash-and-version.sh - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} # db models were generated and uploaded in api-build-test job above. - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: database_gen path: api/src/shared/database_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: users_database_gen path: api/src/shared/users_database_gen/ # api schema was generated and uploaded in api-build-test job above. - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: feeds_gen path: api/src/feeds_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: user_service_gen path: api/src/user_service_gen/ - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: feeds_operations_gen path: functions-python/operations_api/src/feeds_gen/ @@ -305,12 +305,12 @@ jobs: - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Set Variables run: | @@ -330,7 +330,7 @@ jobs: echo "BREVO_API_ANNOUNCEMENTS_LIST_ID=${{ inputs.BREVO_API_ANNOUNCEMENTS_LIST_ID }}" >> $GITHUB_ENV - name: Load secret from 1Password - uses: 1password/load-secrets-action@v2 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -341,7 +341,7 @@ jobs: - name: Load website revalidation secret from 1Password if: ${{ inputs.WEB_APP_REVALIDATE_SECRET_1PASSWORD != '' }} - uses: 1password/load-secrets-action@v2 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -353,7 +353,7 @@ jobs: scripts/replace-variables.sh -in_file infra/backend.conf.rename_me -out_file infra/backend.conf -variables BUCKET_NAME,OBJECT_PREFIX scripts/replace-variables.sh -in_file infra/vars.tfvars.rename_me -out_file infra/vars.tfvars -variables PROJECT_ID,REGION,ENVIRONMENT,DEPLOYER_SERVICE_ACCOUNT,FEED_API_IMAGE_VERSION,OAUTH2_CLIENT_ID,OAUTH2_CLIENT_SECRET,GLOBAL_RATE_LIMIT_REQ_PER_MINUTE,ARTIFACT_REPO_NAME,VALIDATOR_ENDPOINT,TRANSITLAND_API_KEY,OPERATIONS_OAUTH2_CLIENT_ID,TDG_API_TOKEN,WEB_APP_REVALIDATE_URL,WEB_APP_REVALIDATE_SECRET,BREVO_API_ANNOUNCEMENTS_LIST_ID - - uses: hashicorp/setup-terraform@v3 + - uses: hashicorp/setup-terraform@v4 with: terraform_version: 1.5.3 terraform_wrapper: false @@ -374,7 +374,7 @@ jobs: PLAN_OUTPUT: ${{ steps.plan.outputs.stdout }} - name: Persist TF plan - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: terraform-plan.txt path: infra/terraform-plan.txt diff --git a/.github/workflows/api-dev.yml b/.github/workflows/api-dev.yml index a06b68f2b..e9668b859 100644 --- a/.github/workflows/api-dev.yml +++ b/.github/workflows/api-dev.yml @@ -50,7 +50,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: diff --git a/.github/workflows/assign_next_release_milestone.yml b/.github/workflows/assign_next_release_milestone.yml index 1c5f72a11..37fe084ae 100644 --- a/.github/workflows/assign_next_release_milestone.yml +++ b/.github/workflows/assign_next_release_milestone.yml @@ -24,7 +24,7 @@ jobs: - name: Load secrets from 1Password id: onepw_secrets - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -32,10 +32,10 @@ jobs: GH_TOKEN: "op://rbiv7rvkkrsdlpcrz3bmv7nmcu/GitHub generic action token for all repos/credential" - name: Checkout repository - uses: actions/checkout@v4.2.2 + uses: actions/checkout@v7 - name: Setup Node.js - uses: actions/setup-node@v4.4.0 + uses: actions/setup-node@v7 with: node-version: 22 diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index 2579729cd..1d9aa9009 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -28,7 +28,7 @@ jobs: test-matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Set whether to run tests id: set-should-run-tests @@ -47,17 +47,17 @@ jobs: run: ./scripts/extract-hash-and-version.sh - name: Set up JDK ${{ env.java_version }} - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: ${{ env.java_version }} distribution: 'temurin' - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} - name: Cache lint virtualenvs - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: | api/venv @@ -78,7 +78,7 @@ jobs: - name: Cache Liquibase id: cache-liquibase - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: ~/.liquibase key: liquibase-${{ env.liquibase_version }} @@ -147,35 +147,35 @@ jobs: echo "matrix=$(printf '%s\n%s' "$api" "$functions" | jq -sc 'add | {include: .}')" >> "$GITHUB_OUTPUT" - name: Upload DB models - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: database_gen path: api/src/shared/database_gen/ overwrite: true - name: Upload users DB models - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: users_database_gen path: api/src/shared/users_database_gen/ overwrite: true - name: Upload API generated code - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: feeds_gen path: api/src/feeds_gen/ overwrite: true - name: Upload User Service API generated code - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: user_service_gen path: api/src/user_service_gen/ overwrite: true - name: Upload Operations API generated code - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: feeds_operations_gen path: functions-python/operations_api/src/feeds_gen/ @@ -192,38 +192,38 @@ jobs: matrix: ${{ fromJSON(needs.setup.outputs.test-matrix) }} steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} - name: Download DB models - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: database_gen path: api/src/shared/database_gen/ - name: Download users DB models - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: users_database_gen path: api/src/shared/users_database_gen/ - name: Download API generated code - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: feeds_gen path: api/src/feeds_gen/ - name: Download User Service API generated code - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: user_service_gen path: api/src/user_service_gen/ - name: Download Operations API generated code - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: name: feeds_operations_gen path: functions-python/operations_api/src/feeds_gen/ @@ -234,14 +234,14 @@ jobs: working-directory: ${{ github.workspace }} - name: Set up JDK ${{ env.java_version }} - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: ${{ env.java_version }} distribution: 'temurin' - name: Cache Liquibase id: cache-liquibase - uses: actions/cache@v4 + uses: actions/cache@v6 with: path: ~/.liquibase key: liquibase-${{ env.liquibase_version }} @@ -283,7 +283,7 @@ jobs: run: scripts/api-tests.sh --folder ${{ matrix.folder }} --html_report - name: Upload coverage report - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: coverage_report_${{ matrix.group }} path: scripts/coverage_reports/ diff --git a/.github/workflows/catalog-update.yml b/.github/workflows/catalog-update.yml index 79582118a..0ab5be334 100644 --- a/.github/workflows/catalog-update.yml +++ b/.github/workflows/catalog-update.yml @@ -54,7 +54,7 @@ jobs: CHECKOUT_REF: ${{ steps.resolve.outputs.COMMIT_SHA != '' && steps.resolve.outputs.COMMIT_SHA || 'main' }} steps: - name: Checkout repo (for scripts and local action) - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Resolve API commit/version id: resolve @@ -97,7 +97,7 @@ jobs: CHECKOUT_REF: ${{ steps.resolve.outputs.COMMIT_SHA != '' && steps.resolve.outputs.COMMIT_SHA || 'main' }} steps: - name: Checkout repo (for scripts and local action) - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Resolve API commit/version id: resolve @@ -140,7 +140,7 @@ jobs: CHECKOUT_REF: ${{ steps.resolve.outputs.COMMIT_SHA != '' && steps.resolve.outputs.COMMIT_SHA || 'main' }} steps: - name: Checkout repo (for scripts and local action) - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Resolve API commit/version id: resolve @@ -185,7 +185,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: diff --git a/.github/workflows/datasets-batch-deployer-dev.yml b/.github/workflows/datasets-batch-deployer-dev.yml index 7bd9aa735..8771df03a 100644 --- a/.github/workflows/datasets-batch-deployer-dev.yml +++ b/.github/workflows/datasets-batch-deployer-dev.yml @@ -27,7 +27,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: diff --git a/.github/workflows/datasets-batch-deployer.yml b/.github/workflows/datasets-batch-deployer.yml index ca250a64c..fb79b1acd 100644 --- a/.github/workflows/datasets-batch-deployer.yml +++ b/.github/workflows/datasets-batch-deployer.yml @@ -50,16 +50,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Set Variables run: | @@ -84,7 +84,7 @@ jobs: docker compose --env-file ./config/.env.local up -d postgres working-directory: ${{ github.workspace }} - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -115,7 +115,7 @@ jobs: scripts/db-gen.sh - name: Upload DB models - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: database_gen path: api/src/shared/database_gen/ @@ -125,7 +125,7 @@ jobs: scripts/function-python-build.sh --all - name: Install Terraform - uses: hashicorp/setup-terraform@v3 + uses: hashicorp/setup-terraform@v4 with: terraform_version: 1.5.3 terraform_wrapper: false diff --git a/.github/workflows/db-deployer.yml b/.github/workflows/db-deployer.yml index a4cc88a7b..486673fb1 100644 --- a/.github/workflows/db-deployer.yml +++ b/.github/workflows/db-deployer.yml @@ -81,19 +81,19 @@ jobs: db_instance_host: ${{ steps.get_outputs.outputs.db_instance_host }} steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Load users DB credentials from 1Password - uses: 1password/load-secrets-action@v2 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -159,7 +159,7 @@ jobs: fi - name: Install Terraform - uses: hashicorp/setup-terraform@v3 + uses: hashicorp/setup-terraform@v4 with: terraform_version: 1.5.3 terraform_wrapper: false @@ -210,7 +210,7 @@ jobs: DB_INSTANCE_HOST: ${{ needs.terraform.outputs.db_instance_host }} steps: - name: Load app user credentials from 1Password - uses: 1password/load-secrets-action@v2 + uses: 1password/load-secrets-action@v4 with: export-env: true env: @@ -219,12 +219,12 @@ jobs: POSTGRE_USER_APP_PASSWORD: ${{ inputs.POSTGRE_USER_APP_PASSWORD_1PASSWORD }} - name: Authenticate to Google Cloud DEV - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.DEV_GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup DEV - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Create or Update Secret in DEV run: | diff --git a/.github/workflows/db-update-content.yml b/.github/workflows/db-update-content.yml index 4b1525c51..f1e422f9d 100644 --- a/.github/workflows/db-update-content.yml +++ b/.github/workflows/db-update-content.yml @@ -82,23 +82,23 @@ jobs: # The caller should decide when to invoke this reusable workflow. steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v7 with: ref: ${{ inputs.CHECKOUT_REF }} fetch-depth: 0 - name: Setup python - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} - name: Authenticate to Google Cloud QA/PROD - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.DB_GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Update .env file run: | @@ -122,7 +122,7 @@ jobs: echo "ENVIRONMENT=${{ inputs.ENVIRONMENT }}" >> config/.env.local - name: Load secrets from 1Password - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true # Export loaded secrets as environment variables env: @@ -164,7 +164,7 @@ jobs: - name: GTFS - Upload sources.csv file for verification if: ${{ env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual' }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: sources-${{ inputs.ENVIRONMENT }}-verification.csv path: ${{ steps.getpath.outputs.GTFS_PATH }} @@ -175,7 +175,7 @@ jobs: - name: GTFS - Upload log file for verification if: ${{ always() && !inputs.DRY_RUN && (env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual') }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: populate-${{ inputs.ENVIRONMENT }}.log path: populate.log @@ -191,7 +191,7 @@ jobs: - name: GBFS - Upload systems.csv file for verification if: ${{ env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual' }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: systems-${{ inputs.ENVIRONMENT }}-verification.csv path: ${{ steps.getsyspath.outputs.GBFS_PATH }} @@ -202,7 +202,7 @@ jobs: - name: GBFS - Upload log file for verification if: ${{ always() && !inputs.DRY_RUN && (env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual') }} - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: populate-gbfs-${{ inputs.ENVIRONMENT }}.log path: populate-gbfs.log @@ -212,16 +212,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Authenticate to Google Cloud - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Load secrets from 1Password id: onepw_secrets - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true # Export loaded secrets as environment variables env: diff --git a/.github/workflows/db-update.yml b/.github/workflows/db-update.yml index 0bcccb465..c2b9d486f 100644 --- a/.github/workflows/db-update.yml +++ b/.github/workflows/db-update.yml @@ -57,18 +57,18 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud QA/PROD - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.DB_GCP_MOBILITY_FEEDS_SA_KEY }} - name: Google Cloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Load secrets from 1Password - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true # Export loaded secrets as environment variables env: diff --git a/.github/workflows/duplicate-prod-db.yml b/.github/workflows/duplicate-prod-db.yml index bc1d2ad5c..d8ac8ea82 100644 --- a/.github/workflows/duplicate-prod-db.yml +++ b/.github/workflows/duplicate-prod-db.yml @@ -34,16 +34,16 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud PROD project id: gcloud_auth_prod - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.PROD_GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup PROD - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Get PROD SQL service account run: | @@ -53,41 +53,41 @@ jobs: - name: Authenticate to Google Cloud QA project id: gcloud_auth_qa - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.QA_GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup QA - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Create DB dump bucket and give permissions run: bash scripts/duplicate-prod-db/create-dump-bucket.sh - name: Authenticate to Google Cloud PROD project Again - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.PROD_GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup PROD again - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Dump the PROD DB run: | gcloud sql export sql $DB_INSTANCE_NAME gs://$DUMP_BUCKET_NAME/$DUMP_FILE_NAME --database=$SOURCE_DATABASE_NAME --quiet - name: Authenticate to Google Cloud QA project Again - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.QA_GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup QA Again - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: QA backup and import dump into the QA DB run: bash scripts/duplicate-prod-db/copy-prod-db-to-qa.sh - name: Load secrets from 1Password - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true # Export loaded secrets as environment variables env: diff --git a/.github/workflows/integration-tests-pr.yml b/.github/workflows/integration-tests-pr.yml index e68f7c497..c9085e9bd 100644 --- a/.github/workflows/integration-tests-pr.yml +++ b/.github/workflows/integration-tests-pr.yml @@ -26,10 +26,10 @@ jobs: labels: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud QA - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.QA_GCP_MOBILITY_FEEDS_SA_KEY }} @@ -37,7 +37,7 @@ jobs: run: ./scripts/extract-hash-and-version.sh - name: Set up Python ${{ env.python_version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -49,7 +49,7 @@ jobs: run: echo "FILE_PATH=$(realpath sources.csv)" >> $GITHUB_ENV - name: Set up JDK ${{ env.java_version }} - uses: actions/setup-java@v4 + uses: actions/setup-java@v5 with: java-version: ${{ env.java_version }} distribution: 'temurin' @@ -101,7 +101,7 @@ jobs: scripts/api-user-service-gen.sh - name: Load secrets from 1Password - uses: 1password/load-secrets-action@v2.0.0 + uses: 1password/load-secrets-action@v4 with: export-env: true # Export loaded secrets as environment variables env: @@ -147,7 +147,7 @@ jobs: - name: Upload Test Logs if: ${{ always() }} # always upload the available logs even if the integration tests failed. - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: integration-tests-results path: | diff --git a/.github/workflows/integration-tests.yml b/.github/workflows/integration-tests.yml index e27729403..ccb791285 100644 --- a/.github/workflows/integration-tests.yml +++ b/.github/workflows/integration-tests.yml @@ -26,13 +26,13 @@ jobs: labels: ubuntu-latest-4-cores steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Extract commit hash and version from git run: ./scripts/extract-hash-and-version.sh -e ${{ inputs.ENVIRONMENT }} - name: Set up Python 3.11 - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -67,7 +67,7 @@ jobs: - name: Upload Test Logs if: ${{ always() }} # always upload the available logs even if the integration tests failed. - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: integration-tests-results-${{ inputs.ENVIRONMENT }} path: | diff --git a/.github/workflows/release-qa.yml b/.github/workflows/release-qa.yml index f53ba69a8..065f673a7 100644 --- a/.github/workflows/release-qa.yml +++ b/.github/workflows/release-qa.yml @@ -40,7 +40,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index cb46a7985..51a0b4e5b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -40,9 +40,9 @@ jobs: contents: write steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v7 with: node-version: 22 - name: Bundle OpenAPI schemas @@ -63,7 +63,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: diff --git a/.github/workflows/schedule-load-test.yml b/.github/workflows/schedule-load-test.yml index ba09abcc5..37b6fa8e9 100644 --- a/.github/workflows/schedule-load-test.yml +++ b/.github/workflows/schedule-load-test.yml @@ -19,10 +19,10 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v7 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ env.python_version }} @@ -53,7 +53,7 @@ jobs: -u ${LOCUST_USERS} -r ${LOCUST_RATE} --headless -t ${LOCUST_DURATION} --only-summary --csv locust_results - name: Upload load test results as artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: load_test_results path: locust_results_* \ No newline at end of file diff --git a/.github/workflows/validator-update.yml b/.github/workflows/validator-update.yml index 6884be238..63bc3c205 100644 --- a/.github/workflows/validator-update.yml +++ b/.github/workflows/validator-update.yml @@ -10,16 +10,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v7 - name: Authenticate to Google Cloud id: gcloud_auth - uses: google-github-actions/auth@v2 + uses: google-github-actions/auth@v3 with: credentials_json: ${{ secrets.PROD_GCP_MOBILITY_FEEDS_SA_KEY }} - name: GCloud Setup - uses: google-github-actions/setup-gcloud@v2 + uses: google-github-actions/setup-gcloud@v3 - name: Set environment variables run: | @@ -47,7 +47,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v7 - name: Notify Slack uses: ./.github/actions/notify-slack with: