You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+60-4
Original file line number
Diff line number
Diff line change
@@ -4,11 +4,67 @@ This repository demonstrates how to use Bytebase and GitHub actions to do databa
4
4
5
5
For GitHub flow, feature branches are merged into the main branch and the main branch is deployed to the, for example, "test" and "prod" environments in a deploy pipeline.
6
6
7
-
[sql-review.yml](/.github/workflows/sql-review.yml) checks the SQL migration files against the databases when pull requests are created.
7
+
[sql-review-action.yml](/.github/workflows/sql-review-action.yml) checks the SQL migration files against the databases when pull requests are created.
8
8
9
-
[release.yml](/.github/workflows/release.yml) builds the code and then for each environment migrate the databases and deploy the code. Using [environments with protection rules](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment#required-reviewers), it can deploy to the test environment automatically and push to the prod environment after approval.
9
+
[release-action.yml](/.github/workflows/release-action.yml) builds the code and then for each environment migrate the databases and deploy the code. Using [environments with protection rules](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-deployments/managing-environments-for-deployment#required-reviewers), it can deploy to the test environment automatically and push to the prod environment after approval.
10
10
11
-
## How to configure sql-review.yml
11
+
## Use bytebase/bytebase-action (recommended)
12
+
13
+
The README of bytebase/bytebase-action can be found at [README](https://github.com/bytebase/bytebase/blob/main/action/README.md).
14
+
15
+
### How to configure sql-review-action.yml
16
+
17
+
Copy [sql-review-action.yml](/.github/workflows/sql-review-action.yml) to your repository.
18
+
19
+
Modify the environment variables to match your setup.
20
+
21
+
```yml
22
+
env:
23
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # set GITHUB_TOKEN because the 'Check release' step needs it to comment the pull request with check results.
BYTEBASE_TARGETS: "instances/test-sample-instance/databases/hr_test"# the database targets to check against.
29
+
FILE_PATTERN: "migrations/*.sql"# the glob pattern matching the migration files.
30
+
```
31
+
32
+
Set your service account password in the repository secrets setting with the name `BYTEBASE_SERVICE_ACCOUNT_SECRET`.
33
+
34
+
> [!IMPORTANT]
35
+
> The migration filename SHOULD comply to the naming scheme described in [bytebase/create-release-action](https://github.com/bytebase/create-release-action/tree/main).
36
+
37
+
### How to configure release-action.yml
38
+
39
+
Copy [release-action.yml](/.github/workflows/release-action.yml) to your repository.
40
+
41
+
Modify the environment variables to match your setup.
42
+
You need to edit both deploy-to-test and deploy-to-prod jobs.
In the repository environments setting, create two environments: "test"and "prod". In the "prod" environment setting, configure "Deployment protection rules", check "Required reviewers" and add reviewers in order to rollout the "prod" environment after approval.
59
+
60
+
Set your service account password in the repository secrets setting with the name `BYTEBASE_SERVICE_ACCOUNT_SECRET`.
61
+
62
+
> [!IMPORTANT]
63
+
> The migration filename SHOULD comply to the naming scheme described in [bytebase/create-release-action](https://github.com/bytebase/create-release-action/tree/main).
64
+
65
+
## Use javascript actions
66
+
67
+
### How to configure sql-review.yml
12
68
13
69
Copy [sql-review.yml](/.github/workflows/sql-review.yml) to your repository.
14
70
@@ -29,7 +85,7 @@ Set your service account password in the repository secrets setting with the nam
29
85
> [!IMPORTANT]
30
86
> The migration filename SHOULD comply to the naming scheme described in [bytebase/create-release-action](https://github.com/bytebase/create-release-action/tree/main).
31
87
32
-
## How to configure release.yml
88
+
### How to configure release.yml
33
89
34
90
Copy [release.yml](/.github/workflows/release.yml) to your repository.
0 commit comments