Skip to content

Commit

Permalink
Update DB rollback GitHub action
Browse files Browse the repository at this point in the history
  • Loading branch information
halprin committed Mar 7, 2024
1 parent 9af9449 commit 1d461bf
Showing 1 changed file with 30 additions and 7 deletions.
37 changes: 30 additions & 7 deletions .github/workflows/db_rollback.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,34 @@ jobs:
echo "DATABASE_HOSTNAME=$DATABASE_HOSTNAME" >> "$GITHUB_ENV"
echo "DATABASE_PASSWORD=$DATABASE_PASSWORD" >> "$GITHUB_ENV"
- name: Run Db Rollback
uses: liquibase-github-actions/[email protected]
- name: Connect to VPN
uses: josiahsiegel/[email protected]
id: connect_vpn
with:
changelogFile: ${{ github.event.inputs.rollbackFile }}
count: ${{ github.event.inputs.rollbackCount }}
url: "jdbc:postgresql://${{ env.DATABASE_HOSTNAME }}:5432/postgres"
username: cdcti-github
password: ${{ env.DATABASE_PASSWORD }}
PING_URL: ${{ env.DATABASE_HOSTNAME }}
FILE_OVPN: ./operations/vpn/${{ inputs.ENVIRONMENT }}.ovpn
TLS_KEY: ${{ secrets.VPN_TLS_KEY }}
env:
CA_CRT: ${{ secrets.VPN_CA_CERTIFICATE }}
USER_CRT: ${{ secrets.VPN_USER_CERTIFICATE }}
USER_KEY: ${{ secrets.VPN_USER_SECRET_KEY }}

- name: Fail if VPN isn't Connected
if: steps.connect_vpn.outputs.STATUS != 'true'
run: |
echo 'VPN connected: ${{ steps.connect_vpn.outputs.STATUS }}'
exit 1
- name: Install Liquibase
run: |
wget -O- https://repo.liquibase.com/liquibase.asc | gpg --dearmor > liquibase-keyring.gpg && \cat liquibase-keyring.gpg | sudo tee /usr/share/keyrings/liquibase-keyring.gpg > /dev/null && \echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/liquibase-keyring.gpg] https://repo.liquibase.com stable main' | sudo tee /etc/apt/sources.list.d/liquibase.list
sudo apt-get update
sudo apt-get install liquibase
liquibase -v
- name: Run Db migration
run: liquibase rollback-count --changelog-file ${{ github.event.inputs.rollbackFile }} --count ${{ github.event.inputs.rollbackCount }} --url 'jdbc:postgresql://${{ env.DATABASE_HOSTNAME }}:5432/postgres' --username cdcti-github --password '${{ env.DATABASE_PASSWORD }}'

- name: Disconnect VPN
if: always()
run: sudo killall openvpn

0 comments on commit 1d461bf

Please sign in to comment.