name: Docker Build on: [pull_request] jobs: concise_migration_diff: name: Verify concise migration and generated schema runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Run docker concise migration build run: make docker-concise-migration-build - name: Run database run: docker-compose -f docker-compose.test.yml up -d test-db - name: Test concise migration run: | sleep 10 docker run --rm --network host -e DATABASE_USER=vdbm -e DATABASE_PASSWORD=password \ -e DATABASE_HOSTNAME=127.0.0.1 -e DATABASE_PORT=8066 -e DATABASE_NAME=vulcanize_testing \ vulcanize/concise-migration-build - name: Verify schema is latest run: | PGPASSWORD="password" pg_dump -h localhost -p 8066 -U vdbm vulcanize_testing --no-owner --schema-only > ./db/migration_schema.sql ./scripts/check_diff.sh ./db/migration_schema.sql db/schema.sql incremental_migration_diff: name: Compare conscise migration schema with incremental migration. runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Run database run: docker-compose -f docker-compose.test.yml up -d test-db statediff-migrations - name: Test incremental migration run: | sleep 10 docker run --rm --network host -e DATABASE_USER=vdbm -e DATABASE_PASSWORD=password \ -e DATABASE_HOSTNAME=127.0.0.1 -e DATABASE_PORT=8066 -e DATABASE_NAME=vulcanize_testing \ vulcanize/statediff-migrations:v0.9.0 - name: Verify schema is latest run: | PGPASSWORD="password" pg_dump -h localhost -p 8066 -U vdbm vulcanize_testing --no-owner --schema-only > ./db/migration_schema.sql ./scripts/check_diff.sh db/schema.sql ./db/migration_schema.sql migration: name: Compare up and down migration env: GOPATH: /tmp/go strategy: matrix: go-version: [ 1.16.x ] os: [ ubuntu-latest ] runs-on: ${{ matrix.os }} steps: - name: Create GOPATH run: mkdir -p /tmp/go - name: Install Go uses: actions/setup-go@v2 with: go-version: ${{ matrix.go-version }} - uses: actions/checkout@v2 - name: Test migration run: | timeout 5m make test-migrations