This is an automated email from the ASF dual-hosted git repository.
zky pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake-website.git
The following commit(s) were added to refs/heads/main by this push:
new bb94920619 feat: add doc for teambition and trello (#484)
bb94920619 is described below
commit bb94920619446b60a66976559cd97b98c5566233
Author: Likyh <[email protected]>
AuthorDate: Mon Apr 10 16:39:40 2023 +0800
feat: add doc for teambition and trello (#484)
* feat: add doc for teambition and trello
* docs: update the description for Teambition
---------
Co-authored-by: Louis.z <[email protected]>
---
docs/Configuration/AdvancedMode.md | 23 +++++++++
docs/Configuration/Teambition.md | 56 ++++++++++++++++++++
docs/Plugins/teambition.md | 25 +++++++++
docs/Plugins/trello.md | 103 +++++++++++++++++++++++++++++++++++++
4 files changed, 207 insertions(+)
diff --git a/docs/Configuration/AdvancedMode.md
b/docs/Configuration/AdvancedMode.md
index aaf51ceb74..acd2672fdc 100644
--- a/docs/Configuration/AdvancedMode.md
+++ b/docs/Configuration/AdvancedMode.md
@@ -352,6 +352,29 @@ Below is an example for collecting a SonarQube project.
- 4. In the top menu bar of the project homepage, select "Project
Information".
- 5. On the "Project Information" page, you will see the project key.
+
+### 11. Teambition
+
+Below is an example for collecting a Teambition project. Since users can
configure multiple Teambition connection, it's required to pass in a
`connectionId` for Teambition task to specify which connection to use.
+
+```json
+[
+ [
+ {
+ "plugin": "teambition",
+ "options": {
+ "createdDateAfter": "2006-01-02T15:04:05Z",
+ "projectId": "5e5****376",
+ "connectionId": 1
+ }
+ }
+ ]
+]
+```
+
+- `connectionId`: The ID of your TAPD connection at page
http://localhost:4000/connections/tapd.
+- `projectId`: Teambition project id, you can get it from url:

+
## Editing a Blueprint (Advanced Mode)
This section is for editing a Blueprint in the Advanced Mode. To edit in the
Normal mode, please refer to [this
guide](Tutorial.md#editing-a-blueprint-normal-mode).
diff --git a/docs/Configuration/Teambition.md b/docs/Configuration/Teambition.md
new file mode 100644
index 0000000000..58fd962e14
--- /dev/null
+++ b/docs/Configuration/Teambition.md
@@ -0,0 +1,56 @@
+---
+title: "Teambition(Beta)"
+sidebar_position: 6
+description: Config UI instruction for Teambition
+---
+
+Visit config-ui: `http://localhost:4000` and go to `Connections` page.
+
+### Step 1 - Add Data Connections
+
+
+#### Connection Name
+Name your connection.
+
+#### Endpoint URL
+This should be a valid REST API endpoint
+ - `https://open.teambition.com/api/`
+The endpoint url should end with `/`.
+
+#### App Id / Secret Key
+Input the app id and secret key of your Teambition account, you can follow the
steps as below.
+
+
+You should ensure that you have added all the necessary "get" and "list"
authentication methods.
+
+
+
+#### Tenant Type / Tenant Id
+
+It is important to add your app before finding the Tenant Id.
+
+
+
+
+
+
+
+#### Proxy URL (Optional)
+
+If you are behind a corporate firewall or VPN you may need to utilize a proxy
server. Enter a valid proxy server address on your network, e.g.
`http://your-proxy-server.com:1080`
+
+#### Ralte Limit (Optional)
+For Teambition, we suggest you setting the rate limit to 5000
+
+#### Test and Save Connection
+Click `Test Connection`, if the connection is successful, click `Save
Connection` to add the connection.
+
+### Step 2 - Configure Blueprint
+
+Similar to other beta plugins, Teambition does not support `project`, which
means, you can only collect Teambition data via blueprint's advanced mode.
+
+Please go to the `Blueprints` page and switch to advanced mode. See how to use
advanced mode and JSON [examples](AdvancedMode.md#11-Teambition).
+
+### Troubleshooting
+
+If you run into any problem, please check the
[Troubleshooting](/Troubleshooting/Configuration.md) or [create an
issue](https://github.com/apache/incubator-devlake/issues)
diff --git a/docs/Plugins/teambition.md b/docs/Plugins/teambition.md
new file mode 100644
index 0000000000..6560964c31
--- /dev/null
+++ b/docs/Plugins/teambition.md
@@ -0,0 +1,25 @@
+---
+
+title: "Teambition(Beta)"
+description: >
+ Teambition Plugin
+---
+
+## Summary
+
+This plugin collects Teambition data through its REST APIs. Teambition is an
issue-tracking tool similar to Trello.
+
+## Metrics
+
+Metrics that can be calculated based on the data collected from Tapd:
+
+- [Requirement Count](/Metrics/RequirementCount.md)
+- [Requirement Lead Time](/Metrics/RequirementLeadTime.md)
+- [Requirement Delivery Rate](/Metrics/RequirementDeliveryRate.md)
+- [Bug Age](/Metrics/BugAge.md)
+- [Incident Age](/Metrics/IncidentAge.md)
+
+## Configuration
+
+- Configuring Teambition via [config-ui](/Configuration/Teambition.md).
+- Configuring Teambition via Config UI's [advanced
mode](/Configuration/AdvancedMode.md#11-Teambition).
diff --git a/docs/Plugins/trello.md b/docs/Plugins/trello.md
new file mode 100644
index 0000000000..19a568ba0a
--- /dev/null
+++ b/docs/Plugins/trello.md
@@ -0,0 +1,103 @@
+---
+title: "Trello(WIP)"
+description: >
+ Trello Plugin
+---
+
+## Summary
+
+This plugin collects `Trello` data through [Trello's rest
api](https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/).
+
+## Configuration
+
+In order to fully use this plugin, you will need to get `apikey` and `token`
on the [Trello
website](https://developer.atlassian.com/cloud/trello/guides/rest-api/api-introduction/).
+
+A connection should be created before you can collect any data. Currently,
this plugin supports creating connection by requesting `connections` API:
+
+```
+curl 'http://localhost:8080/plugins/trello/connections' \
+--header 'Content-Type: application/json' \
+--data-raw '
+{
+ "name": "trello",
+ "endpoint": "https://api.trello.com/",
+ "rateLimitPerHour": 20000,
+ "appId": "<YOUR_APIKEY>",
+ "secretKey": "<YOUR_TOKEN>"
+}
+'
+```
+
+## Collect data from Trello
+
+
+
+You can make the following request to get all the boards.
+
+```
+curl
'http://localhost:8080/plugins/trello/connections/<CONNECTION_ID>/proxy/rest/1/members/me/boards?fields=name,id'
+```
+
+
+In order to collect data, you have to compose a JSON looks like following one,
and send it by selecting `Advanced Mode` on `Create Pipeline Run` page:
+
+1. Configure-UI Mode
+```json
+[
+ [
+ {
+ "plugin": "trello",
+ "options": {
+ "connectionId": <CONNECTION_ID>,
+ "boardId": "<BOARD_ID>"
+ }
+ }
+ ]
+]
+```
+and if you want to perform certain subtasks.
+```json
+[
+ [
+ {
+ "plugin": "trello",
+ "subtasks": ["collectXXX", "extractXXX", "convertXXX"],
+ "options": {
+ "connectionId": <CONNECTION_ID>,
+ "boardId": "<BOARD_ID>"
+ }
+ }
+ ]
+]
+```
+
+2. Curl Mode:
+
+In order to collect data, you have to make a POST request to `/pipelines`.
+
+```
+curl 'http://localhost:8080/pipelines' \
+--header 'Content-Type: application/json' \
+--data-raw '
+{
+ "name":"MY PIPELINE",
+ "plan":[
+ [
+ {
+ "plugin":"trello",
+ "options":{
+ "connectionId":<CONNECTION_ID>,
+ "boardId":"<BOARD_ID>"
+ }
+ }
+ ]
+ ]
+}
+'
+```
+
+You can make the following request to get all the boards.
+
+```
+curl
'http://localhost:8080/plugins/trello/connections/<CONNECTION_ID>/proxy/rest/1/members/me/boards?fields=name,id'
+```