Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions .github/workflows/chatops-migrate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,18 @@ on:
types: [created]

env:
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: api@service.bytebase.com # set service account via environment variable
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }} # set service account secret via environment variable
BYTEBASE_PROJECT: "projects/hr"
env:
G_TOKEN: ${{ secrets.G_TOKEN }}
BYTEBASE_URL: ${{ secrets.BYTEBASE_URL }}
BYTEBASE_SERVICE_ACCOUNT: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT }}
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }}
BYTEBASE_PROJECT: "projects/bcas-dev"
FILE_PATTERN: "migrations-semver/*.sql"

jobs:
parse-command:
if: github.event.issue.pull_request && startsWith(github.event.comment.body, '/migrate')
runs-on: ubuntu-latest
runs-on: runs-on: [self-hosted, k8s, bytebase]
outputs:
environment: ${{ steps.parse.outputs.environment }}
valid-command: ${{ steps.parse.outputs.valid-command }}
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/declarative-release-action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ concurrency:
cancel-in-progress: true

env:
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: api@service.bytebase.com # set service account via environment variable
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }} # set service account secret via environment variable
BYTEBASE_PROJECT: "projects/hr"

G_TOKEN: ${{ secrets.G_TOKEN }}
BYTEBASE_URL: ${{ secrets.BYTEBASE_URL }}
BYTEBASE_SERVICE_ACCOUNT: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT }}
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }}
BYTEBASE_PROJECT: "projects/bcas-dev" # ganti sesuai ID projectmu
jobs:
build:
runs-on: ubuntu-latest
Expand All @@ -43,7 +43,7 @@ jobs:
uses: actions/checkout@v4
- name: Roll out database change
env:
BYTEBASE_TARGETS: "instances/test-sample-instance/databases/hr_test,instances/prod-sample-instance/databases/hr_prod"
BYTEBASE_TARGETS: "instances/dbdev-1b-bcas/databases/dbdev-vkyc-1b-bcas"
FILE_PATTERN: "schema/*.sql"
BYTEBASE_OUTPUT: ${{ runner.temp }}/bytebase-metadata.json
run: |
Expand Down
25 changes: 13 additions & 12 deletions .github/workflows/release-action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@ on:
- "migrations-semver/*.sql"

env:
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: api@service.bytebase.com # set service account via environment variable
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }} # set service account secret via environment variable
BYTEBASE_PROJECT: "projects/hr"
G_TOKEN: ${{ secrets.G_TOKEN }}
BYTEBASE_URL: ${{ secrets.BYTEBASE_URL }}
BYTEBASE_SERVICE_ACCOUNT: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT }}
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }}
BYTEBASE_PROJECT: "projects/bcas-dev"

jobs:
build:
runs-on: ubuntu-latest
runs-on: [self-hosted, k8s, bytebase]
steps:
- name: Checkout
uses: actions/checkout@v4
Expand All @@ -27,7 +28,7 @@ jobs:
echo "Upload done!"
create-rollout:
needs: build
runs-on: ubuntu-latest # use self-hosted machines if your Bytebase runs in internal networks.
runs-on: [self-hosted, k8s, bytebase]
container:
image: docker://bytebase/bytebase-action:latest
outputs:
Expand All @@ -37,7 +38,7 @@ jobs:
uses: actions/checkout@v4
- name: Roll out database change
env:
BYTEBASE_TARGETS: "instances/test-sample-instance/databases/hr_test,instances/prod-sample-instance/databases/hr_prod"
BYTEBASE_TARGETS: "instances/dbdev-1b-bcas/databases/dbdev-vkyc-1b-bcas"
FILE_PATTERN: "migrations-semver/*.sql"
BYTEBASE_OUTPUT: ${{ runner.temp }}/bytebase-metadata.json
run: |
Expand All @@ -47,10 +48,10 @@ jobs:
run: |
PLAN=$(jq -r .plan ${{ runner.temp }}/bytebase-metadata.json)
echo "plan=$PLAN" >> $GITHUB_OUTPUT
deploy-to-test:
deploy-to-dev:
needs: create-rollout
runs-on: ubuntu-latest # use self-hosted machines if your Bytebase runs in internal networks.
environment: test
runs-on: [self-hosted, k8s, bytebase]
environment: dev
container:
image: docker://bytebase/bytebase-action:latest
steps:
Expand All @@ -67,9 +68,9 @@ jobs:
echo "Deploy app to test environment done!"
deploy-to-prod:
needs:
- deploy-to-test
- deploy-to-dev
- create-rollout
runs-on: ubuntu-latest
runs-on: [self-hosted, k8s, bytebase]
environment: prod
container:
image: docker://bytebase/bytebase-action:latest
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/sql-review-action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,20 @@ jobs:
check-release-on-prod:
permissions:
pull-requests: write # write permission required to allow the action writes the check results to the comment.
runs-on: ubuntu-latest # use self-hosted machines if your Bytebase runs in internal networks.
runs-on: [self-hosted, k8s, bytebase]
container:
image: docker://bytebase/bytebase-action:latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # set GITHUB_TOKEN because the 'Check release' step needs it to comment the pull request with check results.
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: api@service.bytebase.com # set service account via environment variable
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }} # set service account secret via environment variable
BYTEBASE_PROJECT: "projects/hr"
BYTEBASE_TARGETS: "instances/prod-sample-instance/databases/hr_prod"
G_TOKEN: ${{ secrets.G_TOKEN }}
BYTEBASE_URL: ${{ secrets.BYTEBASE_URL }}
BYTEBASE_SERVICE_ACCOUNT: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT }}
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{ secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET }}
BYTEBASE_PROJECT: "projects/bcas-dev"
BYTEBASE_TARGETS: "instances/dbdev-1b-bcas/databases/dbdev-vkyc-1b-bcas"
FILE_PATTERN: "migrations-semver/*.sql"
run: |
bytebase-action check --url=${{ env.BYTEBASE_URL }} --project=${{ env.BYTEBASE_PROJECT }} --targets=${{ env.BYTEBASE_TARGETS }} --file-pattern=${{ env.FILE_PATTERN }}
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Modify the environment variables to match your setup.

```yml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # set GITHUB_TOKEN because the 'Check release' step needs it to comment the pull request with check results.
G_TOKEN: ${{ secrets.G_TOKEN }} # set G_TOKEN because the 'Check release' step needs it to comment the pull request with check results.
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: ci@service.bytebase.com
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET}}
Expand All @@ -45,7 +45,7 @@ You need to edit both deploy-to-test and deploy-to-prod jobs.

```yml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
G_TOKEN: ${{ secrets.G_TOKEN }}
BYTEBASE_URL: https://demo.bytebase.com
BYTEBASE_SERVICE_ACCOUNT: ci@service.bytebase.com
BYTEBASE_SERVICE_ACCOUNT_SECRET: ${{secrets.BYTEBASE_SERVICE_ACCOUNT_SECRET}}
Expand Down
2 changes: 1 addition & 1 deletion migrations-semver/1.0.0_init.sql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
CREATE TABLE IF NOT EXISTS users (
CREATE TABLE IF NOT EXISTS users_test_bytebase (
id SERIAL PRIMARY KEY,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL UNIQUE
Expand Down
2 changes: 1 addition & 1 deletion migrations-semver/1.0.1_init_data_dml.sql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
INSERT INTO users (
INSERT INTO users_test_bytebase (
id, name, email
) VALUES (
1, 'me', 'me@me.com'
Expand Down
2 changes: 1 addition & 1 deletion migrations-semver/1.1.1_comment.sql
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ALTER TABLE IF EXISTS users ADD COLUMN IF NOT EXISTS comment VARCHAR(255) NOT NULL DEFAULT '';
ALTER TABLE IF EXISTS users_test_bytebase ADD COLUMN IF NOT EXISTS comment VARCHAR(255) NOT NULL DEFAULT '';
2 changes: 1 addition & 1 deletion migrations-semver/1.13.0_phone.sql
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ALTER TABLE IF EXISTS users ADD COLUMN IF NOT EXISTS phone VARCHAR(255) NOT NULL DEFAULT '';
ALTER TABLE IF EXISTS users_test_bytebase ADD COLUMN IF NOT EXISTS phone VARCHAR(255) NOT NULL DEFAULT '';
2 changes: 1 addition & 1 deletion migrations-semver/1.14.0_email.sql
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ALTER TABLE IF EXISTS users ADD COLUMN IF NOT EXISTS email VARCHAR(255) NOT NULL DEFAULT '';
ALTER TABLE IF EXISTS users_test_bytebase ADD COLUMN IF NOT EXISTS email VARCHAR(255) NOT NULL DEFAULT '';
4 changes: 2 additions & 2 deletions migrations-semver/1.3.5_nickname.sql
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
-- add nickname column for users
ALTER TABLE IF EXISTS users ADD COLUMN IF NOT EXISTS nickname VARCHAR(255) NOT NULL DEFAULT '';
-- add nickname column for users_test_bytebase
ALTER TABLE IF EXISTS users_test_bytebase ADD COLUMN IF NOT EXISTS nickname VARCHAR(255) NOT NULL DEFAULT '';
120 changes: 0 additions & 120 deletions schema/schema.sql

This file was deleted.

2 changes: 1 addition & 1 deletion schema/users.sql → schema/users_test_bytebase.sql
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
CREATE TABLE public.users (
CREATE TABLE public.users_test_bytebase (
id SERIAL PRIMARY KEY,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL UNIQUE
Expand Down