From bd0b7e56be29838043de081044631da7e7f47364 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:46:48 -0400 Subject: [PATCH 01/15] Set-up UV so the OpenAPI Spec can be retrieved --- .github/workflows/test_pr.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 7b1a369..e4f13bb 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -23,6 +23,16 @@ jobs: # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout - uses: actions/checkout@v3 + # Retrieve the OpenAPI Schema + - name: Install the latest version of uv + uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 + + - name: Generate OpenAPI Spec + run: | + # Using the script or CLI approach + cd app + python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json + # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from a sidecar) - name: Checkout Databridge Schemas uses: actions/checkout@v4 From 6c4fa9f60ff7d9cc3ecaa759b6c882b3902426c4 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:51:07 -0400 Subject: [PATCH 02/15] Add setup python script --- .github/workflows/test_pr.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index e4f13bb..4d37650 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -24,6 +24,10 @@ jobs: - uses: actions/checkout@v3 # Retrieve the OpenAPI Schema + - uses: actions/setup-python@v6 + with: + python-version: "3.14" + - name: Install the latest version of uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 From 02c7fa1f30a61019f3886b4c2c691600c33f74a5 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:53:58 -0400 Subject: [PATCH 03/15] Use different workflow for openapi --- .github/workflows/test_pr.yml | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 4d37650..60e1c06 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -11,6 +11,19 @@ concurrency: cancel-in-progress: false jobs: + api_catalog: + name: API Catalog + runs-on: ubuntu-latest + + steps: + - name: Install the latest version of uv + uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 + + - name: Generate OpenAPI Spec + run: | + # Using the script or CLI approach + cd app + python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json build: name: build-test if: "!contains(github.event.head_commit.message, 'skip ci')" @@ -23,20 +36,6 @@ jobs: # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout - uses: actions/checkout@v3 - # Retrieve the OpenAPI Schema - - uses: actions/setup-python@v6 - with: - python-version: "3.14" - - - name: Install the latest version of uv - uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 - - - name: Generate OpenAPI Spec - run: | - # Using the script or CLI approach - cd app - python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json - # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from a sidecar) - name: Checkout Databridge Schemas uses: actions/checkout@v4 From 855e78a7e4b279bc553eb0530e5cd5b6e626e923 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:54:41 -0400 Subject: [PATCH 04/15] Add missing checkout --- .github/workflows/test_pr.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 60e1c06..60248c1 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -16,6 +16,8 @@ jobs: runs-on: ubuntu-latest steps: + - uses: actions/checkout@v3 + - name: Install the latest version of uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 From 406bcbc3f82dd674a89465a711316e9227a7d89a Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:57:35 -0400 Subject: [PATCH 05/15] Add pip install --- .github/workflows/test_pr.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 60248c1..2ef7e88 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -21,6 +21,9 @@ jobs: - name: Install the latest version of uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 + - name: UV Pip Install + run: uv pip install . + - name: Generate OpenAPI Spec run: | # Using the script or CLI approach From 1ca94119dfae0cf1b6cb287f9ccfe6fccadd138f Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 13:58:17 -0400 Subject: [PATCH 06/15] Add uv venv command --- .github/workflows/test_pr.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 2ef7e88..89a012b 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -22,7 +22,9 @@ jobs: uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 - name: UV Pip Install - run: uv pip install . + run: | + uv venv + uv pip install . - name: Generate OpenAPI Spec run: | From c29908ce5a46d9a175c9bd9bf4964c962657f7cc Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 14:00:30 -0400 Subject: [PATCH 07/15] Run with python -c --- .github/workflows/test_pr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 89a012b..ed23917 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -30,7 +30,7 @@ jobs: run: | # Using the script or CLI approach cd app - python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json + uv run python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json build: name: build-test if: "!contains(github.event.head_commit.message, 'skip ci')" From a20e462ab18a0968c966df80eca24ff517b17a3a Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 14:06:32 -0400 Subject: [PATCH 08/15] Try small Python script --- .github/workflows/test_pr.yml | 2 +- extract_openapi.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 extract_openapi.py diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index ed23917..0fb8488 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -30,7 +30,7 @@ jobs: run: | # Using the script or CLI approach cd app - uv run python -c "import json; from main import app; print(json.dumps(app.openapi()))" > openapi.json + uv run extract_openapi.py build: name: build-test if: "!contains(github.event.head_commit.message, 'skip ci')" diff --git a/extract_openapi.py b/extract_openapi.py new file mode 100644 index 0000000..5eca2de --- /dev/null +++ b/extract_openapi.py @@ -0,0 +1,7 @@ +import json +from pathlib import Path + +from app.main import app + +OUTPUT_FILE = Path(__file__).parent / "openapi.json" +OUTPUT_FILE.write_text(json.dumps(app.openapi(), indent=2)) From 2295eb06f696a9b6a6a0033067eeb36f919be75d Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 14:08:00 -0400 Subject: [PATCH 09/15] Fix incorrect working directory --- .github/workflows/test_pr.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 0fb8488..70edc52 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -28,8 +28,6 @@ jobs: - name: Generate OpenAPI Spec run: | - # Using the script or CLI approach - cd app uv run extract_openapi.py build: name: build-test From 2853350c553a8dec731c0098a231d60037eec67f Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 14:09:56 -0400 Subject: [PATCH 10/15] Try with databridge-schemas --- .github/workflows/test_pr.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 70edc52..e5bfb72 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -18,6 +18,15 @@ jobs: steps: - uses: actions/checkout@v3 + # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from a sidecar) + - name: Checkout Databridge Schemas + uses: actions/checkout@v4 + with: + repository: CityOfPhiladelphia/databridge-schemas + ssh-key: ${{ secrets.DB_SCHEMAS_DEPLOY_KEY }} + path: ./databridge-schemas # Places it in the build context + ref: main + - name: Install the latest version of uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 From 84996be9bb0d490d9029269872331e0937e541f0 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 14:12:44 -0400 Subject: [PATCH 11/15] Try copying to correct folder --- .github/workflows/build_push_to_ecr.yml | 127 ++++++++++++------------ 1 file changed, 63 insertions(+), 64 deletions(-) diff --git a/.github/workflows/build_push_to_ecr.yml b/.github/workflows/build_push_to_ecr.yml index 9236ed8..d56ae41 100644 --- a/.github/workflows/build_push_to_ecr.yml +++ b/.github/workflows/build_push_to_ecr.yml @@ -3,7 +3,7 @@ name: build-push-to-ecr on: push: branches: - - 'main' + - "main" workflow_dispatch: concurrency: @@ -17,71 +17,71 @@ jobs: runs-on: self-hosted steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - # This is a github function? Ref doc: https://github.com/actions/checkout#checkout-a-different-branch - # IMPORTANT NOTE: pinned to v3 instead of master, because v4 uses node20 and glibc 2.27. Amazon linux 2 atm only supports - # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout - - uses: actions/checkout@v3 + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + # This is a github function? Ref doc: https://github.com/actions/checkout#checkout-a-different-branch + # IMPORTANT NOTE: pinned to v3 instead of master, because v4 uses node20 and glibc 2.27. Amazon linux 2 atm only supports + # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout + - uses: actions/checkout@v3 - # https://github.com/aws-actions/amazon-ecr-login - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@main - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-east-1 + # https://github.com/aws-actions/amazon-ecr-login + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@main + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 - # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from an eks pod sidecar) - - name: Checkout Databridge Schemas - uses: actions/checkout@v4 - with: - repository: CityOfPhiladelphia/databridge-schemas - ssh-key: ${{ secrets.DB_SCHEMAS_DEPLOY_KEY }} - path: ./databridge-schemas # Places it in the build context - ref: main - - # Build our docker container and insert our AWS secret keys - # no-cache so we're sure we're getting all changes (such as geopetl changes) - # NOTE: right now just build and test python 3.12 for prod deployment, but we have 3.11 and 3.13 Dockerfiles too. - - name: Build docker container - run: docker build -t databridge_api:latest --no-cache . - - - name: pytests - run: > - docker run --rm - -e CARTO_TOKEN - -e AGO_USER - -e AGO_PASSWORD - -e AGO_URL - databridge_api:latest - pytest - --maxfail=4 - --tb=short - -v - env: - CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} - AGO_USER: ${{ secrets.AGO_USER }} - AGO_PASSWORD: ${{ secrets.AGO_PASSWORD }} - AGO_URL: ${{ secrets.AGO_URL }} - - # https://github.com/aws-actions/amazon-ecr-login - - name: Login to Amazon ECR - id: login-ecr - uses: aws-actions/amazon-ecr-login@v2 - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_REGION: us-east-1 + # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from an eks pod sidecar) + - name: Checkout Databridge Schemas + uses: actions/checkout@v4 + with: + repository: CityOfPhiladelphia/databridge-schemas + ssh-key: ${{ secrets.DB_SCHEMAS_DEPLOY_KEY }} + path: /scripts/databridge-schemas # Places it in the build context + ref: main + + # Build our docker container and insert our AWS secret keys + # no-cache so we're sure we're getting all changes (such as geopetl changes) + # NOTE: right now just build and test python 3.12 for prod deployment, but we have 3.11 and 3.13 Dockerfiles too. + - name: Build docker container + run: docker build -t databridge_api:latest --no-cache . + + - name: pytests + run: > + docker run --rm + -e CARTO_TOKEN + -e AGO_USER + -e AGO_PASSWORD + -e AGO_URL + databridge_api:latest + pytest + --maxfail=4 + --tb=short + -v + env: + CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} + AGO_USER: ${{ secrets.AGO_USER }} + AGO_PASSWORD: ${{ secrets.AGO_PASSWORD }} + AGO_URL: ${{ secrets.AGO_URL }} + + # https://github.com/aws-actions/amazon-ecr-login + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v2 + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: us-east-1 + + - name: Docker Push to ECR + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + ECR_REPOSITORY_URL: ${{ secrets.ECR_REPOSITORY_URL }} + run: | + docker tag databridge_api:latest $ECR_REPOSITORY_URL:latest + docker push $ECR_REPOSITORY_URL:latest - - name: Docker Push to ECR - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - ECR_REPOSITORY_URL: ${{ secrets.ECR_REPOSITORY_URL }} - run: | - docker tag databridge_api:latest $ECR_REPOSITORY_URL:latest - docker push $ECR_REPOSITORY_URL:latest - # Triggers Renovate to run on just the citygeo-variety-apps github repo # This will create pull requests to update the cluster to the newest # version of your code @@ -93,4 +93,3 @@ jobs: with: target_repo: "CityOfPhiladelphia/citygeo-variety-apps" secrets: inherit - From 5e760bc4c5af723ff554fbef9b706e0b11848121 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 15:01:29 -0400 Subject: [PATCH 12/15] Try moving scripts --- .github/workflows/build_push_to_ecr.yml | 127 ++++++++++++------------ .github/workflows/test_pr.yml | 6 ++ 2 files changed, 70 insertions(+), 63 deletions(-) diff --git a/.github/workflows/build_push_to_ecr.yml b/.github/workflows/build_push_to_ecr.yml index d56ae41..9236ed8 100644 --- a/.github/workflows/build_push_to_ecr.yml +++ b/.github/workflows/build_push_to_ecr.yml @@ -3,7 +3,7 @@ name: build-push-to-ecr on: push: branches: - - "main" + - 'main' workflow_dispatch: concurrency: @@ -17,71 +17,71 @@ jobs: runs-on: self-hosted steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - # This is a github function? Ref doc: https://github.com/actions/checkout#checkout-a-different-branch - # IMPORTANT NOTE: pinned to v3 instead of master, because v4 uses node20 and glibc 2.27. Amazon linux 2 atm only supports - # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout - - uses: actions/checkout@v3 + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + # This is a github function? Ref doc: https://github.com/actions/checkout#checkout-a-different-branch + # IMPORTANT NOTE: pinned to v3 instead of master, because v4 uses node20 and glibc 2.27. Amazon linux 2 atm only supports + # glibc 2.26. Change notes: https://github.com/marketplace/actions/checkout + - uses: actions/checkout@v3 - # https://github.com/aws-actions/amazon-ecr-login - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@main - with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-east-1 + # https://github.com/aws-actions/amazon-ecr-login + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@main + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 - # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from an eks pod sidecar) - - name: Checkout Databridge Schemas - uses: actions/checkout@v4 - with: - repository: CityOfPhiladelphia/databridge-schemas - ssh-key: ${{ secrets.DB_SCHEMAS_DEPLOY_KEY }} - path: /scripts/databridge-schemas # Places it in the build context - ref: main - - # Build our docker container and insert our AWS secret keys - # no-cache so we're sure we're getting all changes (such as geopetl changes) - # NOTE: right now just build and test python 3.12 for prod deployment, but we have 3.11 and 3.13 Dockerfiles too. - - name: Build docker container - run: docker build -t databridge_api:latest --no-cache . - - - name: pytests - run: > - docker run --rm - -e CARTO_TOKEN - -e AGO_USER - -e AGO_PASSWORD - -e AGO_URL - databridge_api:latest - pytest - --maxfail=4 - --tb=short - -v - env: - CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} - AGO_USER: ${{ secrets.AGO_USER }} - AGO_PASSWORD: ${{ secrets.AGO_PASSWORD }} - AGO_URL: ${{ secrets.AGO_URL }} - - # https://github.com/aws-actions/amazon-ecr-login - - name: Login to Amazon ECR - id: login-ecr - uses: aws-actions/amazon-ecr-login@v2 - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_REGION: us-east-1 - - - name: Docker Push to ECR - env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - ECR_REPOSITORY_URL: ${{ secrets.ECR_REPOSITORY_URL }} - run: | - docker tag databridge_api:latest $ECR_REPOSITORY_URL:latest - docker push $ECR_REPOSITORY_URL:latest + # Copy private databridge-schemas repo for use in the container (just so pytests work, in prod it will get the gh repo from an eks pod sidecar) + - name: Checkout Databridge Schemas + uses: actions/checkout@v4 + with: + repository: CityOfPhiladelphia/databridge-schemas + ssh-key: ${{ secrets.DB_SCHEMAS_DEPLOY_KEY }} + path: ./databridge-schemas # Places it in the build context + ref: main + + # Build our docker container and insert our AWS secret keys + # no-cache so we're sure we're getting all changes (such as geopetl changes) + # NOTE: right now just build and test python 3.12 for prod deployment, but we have 3.11 and 3.13 Dockerfiles too. + - name: Build docker container + run: docker build -t databridge_api:latest --no-cache . + + - name: pytests + run: > + docker run --rm + -e CARTO_TOKEN + -e AGO_USER + -e AGO_PASSWORD + -e AGO_URL + databridge_api:latest + pytest + --maxfail=4 + --tb=short + -v + env: + CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} + AGO_USER: ${{ secrets.AGO_USER }} + AGO_PASSWORD: ${{ secrets.AGO_PASSWORD }} + AGO_URL: ${{ secrets.AGO_URL }} + + # https://github.com/aws-actions/amazon-ecr-login + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v2 + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_REGION: us-east-1 + - name: Docker Push to ECR + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + ECR_REPOSITORY_URL: ${{ secrets.ECR_REPOSITORY_URL }} + run: | + docker tag databridge_api:latest $ECR_REPOSITORY_URL:latest + docker push $ECR_REPOSITORY_URL:latest + # Triggers Renovate to run on just the citygeo-variety-apps github repo # This will create pull requests to update the cluster to the newest # version of your code @@ -93,3 +93,4 @@ jobs: with: target_repo: "CityOfPhiladelphia/citygeo-variety-apps" secrets: inherit + diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index e5bfb72..38618e4 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -27,6 +27,12 @@ jobs: path: ./databridge-schemas # Places it in the build context ref: main + - name: Move databridge schemas + run: | + mkdir /scripts + mv databridge-schemas /scripts/ + ls /scripts + - name: Install the latest version of uv uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # v8.3.2 From 3e7d3c1816a27d2b33bab3a0f443ca2a96a2451d Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 15:02:59 -0400 Subject: [PATCH 13/15] Try fixing sudo permissions --- .github/workflows/test_pr.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 38618e4..7f857f5 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -29,7 +29,8 @@ jobs: - name: Move databridge schemas run: | - mkdir /scripts + sudo mkdir -p /scripts + sudo chown -R runner:docker /scripts mv databridge-schemas /scripts/ ls /scripts From 766dc34636f2a4ed06b283364f197ed8db3a1352 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 15:04:21 -0400 Subject: [PATCH 14/15] Try adding env --- .github/workflows/test_pr.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 7f857f5..1d431a9 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -45,6 +45,11 @@ jobs: - name: Generate OpenAPI Spec run: | uv run extract_openapi.py + env: + CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} + AGO_USER: ${{ secrets.AGO_USER }} + AGO_PASSWORD: ${{ secrets.AGO_PASSWORD }} + AGO_URL: ${{ secrets.AGO_URL }} build: name: build-test if: "!contains(github.event.head_commit.message, 'skip ci')" From 4a3f3942f7fd19d22d600f6d829c64d38b135916 Mon Sep 17 00:00:00 2001 From: Ryan Weast Date: Thu, 16 Jul 2026 15:05:38 -0400 Subject: [PATCH 15/15] Try reading back openapi.json --- .github/workflows/test_pr.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test_pr.yml b/.github/workflows/test_pr.yml index 1d431a9..5f5fa6b 100644 --- a/.github/workflows/test_pr.yml +++ b/.github/workflows/test_pr.yml @@ -45,6 +45,8 @@ jobs: - name: Generate OpenAPI Spec run: | uv run extract_openapi.py + ls + cat openapi.json env: CARTO_TOKEN: ${{ secrets.CARTO_TOKEN }} AGO_USER: ${{ secrets.AGO_USER }}