@@ -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