Skip to content

Commit 146b33d

Browse files
committed
restored gbfs systems update to workflow
1 parent da2f19c commit 146b33d

File tree

4 files changed

+50
-6
lines changed

4 files changed

+50
-6
lines changed

.github/workflows/db-update-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ on:
88
- 'liquibase/changelog.xml'
99
- 'api/src/scripts/populate_db*'
1010
repository_dispatch: # Update on mobility-database-catalog repo dispatch
11-
types: [ catalog-sources-updated ]
11+
types: [ catalog-sources-updated, gbfs-repo-updated ]
1212
workflow_dispatch:
1313
jobs:
1414
update:

.github/workflows/db-update-prod.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
workflow_dispatch:
55
workflow_call:
66
repository_dispatch: # Update on mobility-database-catalog repo dispatch
7-
types: [ catalog-sources-updated ]
7+
types: [ catalog-sources-updated, gbfs-repo-updated ]
88
jobs:
99
update:
1010
uses: ./.github/workflows/db-update.yml

.github/workflows/db-update-qa.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
# Update the Mobility Database Schema
21
name: Database Update - QA
32
on:
43
workflow_dispatch:
54
workflow_call:
6-
repository_dispatch: # Update on mobility-database-catalog repo dispatch
7-
types: [ catalog-sources-updated ]
5+
repository_dispatch:
6+
types: [ catalog-sources-updated, gbfs-repo-updated ]
7+
88
jobs:
99
update:
1010
uses: ./.github/workflows/db-update.yml

.github/workflows/db-update.yml

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ jobs:
130130
liquibase update
131131
132132
db-content-update:
133+
# Here if the trigger is repo dispatch of the catalog
133134
name: 'Database Content Update'
134135
permissions: write-all
135136
runs-on: ubuntu-latest
@@ -185,23 +186,66 @@ jobs:
185186
- name: Install requirements and generate db model
186187
run: scripts/db-gen.sh
187188

189+
# TODO: remove before merge
190+
- name: Log GitHub event payload
191+
run: |
192+
echo "GITHUB_EVENT_NAME=${{ github.event_name }}"
193+
echo "GITHUB_EVENT_ACTION=${{ github.event.action }}"
194+
echo "Full GitHub Event Payload:"
195+
cat $GITHUB_EVENT_PATH
196+
197+
- name: Determine update type
198+
id: update-type
199+
run: |
200+
if [[ "${{ github.event.action }}" == "gbfs-repo-updated" ]]; then
201+
echo "UPDATE_TYPE=gbfs" >> $GITHUB_ENV
202+
elif [[ "${{ github.event.action }}" == "catalog-sources-updated" ]]; then
203+
echo "UPDATE_TYPE=gtfs" >> $GITHUB_ENV
204+
else
205+
echo "UPDATE_TYPE=manual" >> $GITHUB_ENV # fallback for workflow_dispatch
206+
fi
207+
188208
- name: Download csv version of the database
209+
if: ${{ env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual' }}
189210
run: wget -O sources.csv https://bit.ly/catalogs-csv
190211

191212
- name: Get full path of sources.csv
213+
if: ${{ env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual' }}
192214
id: getpath
193215
run: echo "PATH=$(realpath sources.csv)" >> $GITHUB_OUTPUT
194216

195217
- name: GTFS - Update Database Content
218+
if: ${{ env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual' }}
196219
run: scripts/populate-db.sh ${{ steps.getpath.outputs.PATH }} > populate.log
197220

198221
- name: GTFS - Upload log file for verification
199-
if: ${{ always() }}
222+
if: ${{ always() && (env.UPDATE_TYPE == 'gtfs' || env.UPDATE_TYPE == 'manual') }}
200223
uses: actions/upload-artifact@v4
201224
with:
202225
name: populate-${{ inputs.ENVIRONMENT }}.log
203226
path: populate.log
204227

228+
- name: Download systems.csv
229+
if: ${{ env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual' }}
230+
run: wget -O systems.csv https://raw.githubusercontent.com/MobilityData/gbfs/master/systems.csv
231+
232+
- name: Get full path of systems.csv
233+
if: ${{ env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual' }}
234+
id: getsyspath
235+
run: echo "PATH=$(realpath systems.csv)" >> $GITHUB_OUTPUT
236+
237+
- name: GBFS - Update Database Content
238+
if: ${{ env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual' }}
239+
run: scripts/populate-db.sh ${{ steps.getsyspath.outputs.PATH }} gbfs >> populate-gbfs.log
240+
241+
- name: GBFS - Upload log file for verification
242+
if: ${{ always() && (env.UPDATE_TYPE == 'gbfs' || env.UPDATE_TYPE == 'manual') }}
243+
uses: actions/upload-artifact@v4
244+
with:
245+
name: populate-gbfs-${{ inputs.ENVIRONMENT }}.log
246+
path: populate-gbfs.log
247+
248+
205249
update-gcp-secret:
206250
name: Update GCP Secrets
207251
if: ${{ github.event_name == 'repository_dispatch' || github.event_name == 'workflow_dispatch' }}

0 commit comments

Comments
 (0)