Add DB backup and recovery during DB schema migrations (#2158) #123
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
# This is a basic workflow to help you get started with Actions | |
name: Release Package & Docker Image | |
# Controls when the action will run. Triggers the workflow on push of a tag | |
on: | |
push: | |
tags: ['*'] | |
jobs: | |
setup-and-test: | |
uses: ./.github/workflows/unit-test.yml | |
with: | |
os: ubuntu-latest | |
python-version: '3.8' | |
secrets: inherit | |
mlstacks-compatibility-check: | |
needs: setup-and-test | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4.1.1 | |
- name: Set up Python | |
uses: actions/setup-python@v5.0.0 | |
with: | |
python-version: '3.8' | |
- name: Install current package as editable | |
run: pip install -e . | |
- name: Install mlstacks package | |
run: pip install mlstacks | |
- name: Check for broken dependencies | |
run: pip check | |
mysql-db-migration-testing: | |
runs-on: ubuntu-dind-runners | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4.1.1 | |
- name: Set up Python 3.9 | |
uses: actions/setup-python@v5.0.0 | |
with: | |
python-version: '3.9' | |
- name: Test migrations across versions | |
run: bash scripts/test-migrations-mysql.sh mysql | |
sqlite-db-migration-testing: | |
runs-on: ubuntu-dind-runners | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4.1.1 | |
- name: Set up Python 3.9 | |
uses: actions/setup-python@v5.0.0 | |
with: | |
python-version: '3.9' | |
- name: Test migrations across versions | |
run: bash scripts/test-migrations-mysql.sh sqlite | |
mariadb-db-migration-testing: | |
runs-on: ubuntu-dind-runners | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4.1.1 | |
- name: Set up Python 3.9 | |
uses: actions/setup-python@v4.8.0 | |
with: | |
python-version: '3.9' | |
- name: Test migrations across versions | |
run: bash scripts/test-migrations-mariadb.sh | |
publish-python-package: | |
if: github.repository == 'zenml-io/zenml' | |
needs: | |
- setup-and-test | |
- mlstacks-compatibility-check | |
- sqlite-db-migration-testing | |
- mysql-db-migration-testing | |
- mariadb-db-migration-testing | |
uses: ./.github/workflows/publish_to_pypi.yml | |
secrets: inherit | |
wait-for-package-release: | |
runs-on: ubuntu-latest | |
needs: publish-python-package | |
steps: | |
- name: Sleep for 4 minutes | |
run: sleep 240 | |
shell: bash | |
publish-docker-image: | |
if: github.repository == 'zenml-io/zenml' | |
needs: wait-for-package-release | |
uses: ./.github/workflows/publish_docker_image.yml | |
secrets: inherit | |
publish-helm-chart: | |
if: github.repository == 'zenml-io/zenml' | |
needs: publish-docker-image | |
uses: ./.github/workflows/publish_helm_chart.yml | |
secrets: inherit |