External Approval
Users can configure Bytebase issues to be approved by external systems. Feishu (Lark) is the only supported external systems at the moment, but stay tuned for more.
Bytebase will approve the whole stage of tasks instead of a single task if it is approved on the IM side.
Setup Feishu Custom App
Users should create a custom App, granting it necessary permissions, enabling it and obtaining the Application ID and Secret.
Step 1 - Create a custom app
Create a Custom App at Feishu Open Platform.
Fill in App Name and Description such as Bytebase Approval.
Step 2 - Upload icon
In the General info section of Credentials & Basic Info page, add the above Bytebase icon.
Step 3 - Enable bot
In the Bot page of Features, click "Enable bot".
Step 4 - Grant permissions
In the Manage scopes section of Permissions & Scopes page, add the following scopes.
- approval:approval (View, create, update, and delete info of Approval app).
- approval:approval:readonly (Access Approval).
- contact:user.id:readonly (Obtain user ID via email or mobile number).
Make sure that you have added all three scopes before moving on. In particular, you must add both "approval:approval" and "approval:approval:readonly".
Step 5 - Enable app
In the Version Management & Release page of App Release, create a Version.
You can use 1.0.0 for App version and set availability to members who use Bytebase.
Set the availability and select those who use Bytebase.
Submit for release.
Step 6 - Wait for approval
Ask your organization administrator to approve the custom application in Workspace / App review.
Move to the next step when you see the app status is "Enabled".
Step 7 - Obtain credentials
Get the App ID and App Secret in the General info section of Credentials & Basic Info page.
Setup Bytebase
Bytebase uses account emails to find users at Feishu.
Specifically, the issue assignee must have an identical email at Feishu to receive Approval requests. In Feishu Approvals, Bytebase bot will represent the issue creator if she can't be found at Feishu.
- Go to Bytebase Settings, click on IM Integration.
- Fill in Application ID and Secret from the previous section. Click on Enable and Create button.
How to Use
UI workflow
The issue creator needs to click on the bell button near the assignee to send the Feishu approval request.
GitOps workflow
The Feishu approval is sent automatically when either of the following happens:
- Issue arrives at a new stage.
- Issue assignee has changed.
- Task SQL statement has changed.