Skip to content

Commit

Permalink
Add initial version of migration trigger workflow
Browse files Browse the repository at this point in the history
This workflow can be used to trigger migration workflows in other
repositories.

Currently, it has a single job that triggers ConsDB migrations in the
lsst-dm/consdb repo.
  • Loading branch information
JeremyMcCormick committed Nov 16, 2024
1 parent 29e9593 commit 5bb4ef0
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions .github/workflows/migrate.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Trigger Database Migrations

on:
pull_request:
types: [closed]

jobs:
migrate-cdb:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true # Only trigger on merged PRs

steps:

- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
ref: ${{ github.head_ref }}

- name: Fetch main branch
run: git fetch origin main

- name: Set relative path to schema directory
run: |
echo "SCHEMA_DIR=python/lsst/sdm_schemas/schemas" >> $GITHUB_ENV
- name: Check for changed cdb schemas # TODO: Use 'felis diff -c alembic' when available
run: |
CHANGED_FILES=$(git diff --name-only origin/main..HEAD -- ${{ env.SCHEMA_DIR }})
if [ -z "$CHANGED_FILES" ]; then
echo "No schema files changed"
exit 0
fi
CHANGED_FILES=$(echo $CHANGED_FILES | xargs basename | grep -E '^cdb_.*\.yaml$')
if [ -z "$CHANGED_FILES" ]; then
echo "No cdb schema files changed"
exit 0
fi
echo "Changed cdb schema files: $CHANGED_FILES"
- name: Print branch name and commit SHA
run: |
echo "Branch name: ${{ github.head_ref }}"
echo "Commit SHA: ${{ github.event.pull_request.merge_commit_sha }}"
- name: Trigger migration workflow in consdb repository
run: |
curl -X POST \
-H "Authorization: token ${{ secrets.REPO_DISPATCH_TOKEN }}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/lsst-dm/consdb/dispatches \
-d '{
"event_type": "migration",
"client_payload": {
"branch_name": "${{ github.head_ref }}",
"commit_sha": "${{ github.event.pull_request.merge_commit_sha }}"
}
}'

0 comments on commit 5bb4ef0

Please sign in to comment.