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 a5155a6bb docs: gitlab, github, jenkins plugin update docs (#354)
a5155a6bb is described below
commit a5155a6bb721e806fa93611e831e8a3a64dd6f65
Author: abeizn <[email protected]>
AuthorDate: Mon Dec 26 18:06:52 2022 +0800
docs: gitlab, github, jenkins plugin update docs (#354)
* docs: gitlab, github, jenkins plugin update docs
* docs: gitlab, github, jenkins plugin update docs
* docs: gitlab, github, jenkins plugin update docs
* docs: gitlab, github, jenkins plugin update docs
* docs: gitlab, github, jenkins plugin update docs
* docs: gitlab, github, jenkins plugin update docs
---
docs/Plugins/github.md | 23 ++++++++++++-
docs/Plugins/gitlab.md | 88 ++++++++++++++++++++++++++++++++++++++-----------
docs/Plugins/jenkins.md | 73 ++++++++++++++++++++++++++--------------
3 files changed, 139 insertions(+), 45 deletions(-)
diff --git a/docs/Plugins/github.md b/docs/Plugins/github.md
index ef2bd3f63..c9b17d5c4 100644
--- a/docs/Plugins/github.md
+++ b/docs/Plugins/github.md
@@ -6,7 +6,7 @@ description: >
## Summary
-This plugin gathers data from `GitHub` to display information to the user in
`Grafana`. We can help tech leaders answer such questions as:
+This plugin collects GitHub data through [REST
API](https://docs.github.com/en/rest/) and [GraphQL
API](https://docs.github.com/en/graphql). It then computes and visualizes
various DevOps metrics from the GitHub data, which helps tech leads, QA and
DevOps engineers, and project managers to answer questions such as:
- Is this month more productive than last?
- How fast do we respond to customer requirements?
@@ -29,10 +29,30 @@ Metrics that can be calculated based on the data collected
from GitHub:
- [Requirement Delivery Rate](/Metrics/RequirementDeliveryRate.md)
- [Requirement Granularity](/Metrics/RequirementGranularity.md)
- [Bug Age](/Metrics/BugAge.md)
+- [Bug Count per 1k Lines of Code](/Metrics/BugCountPer1kLinesOfCode.md)
- [Incident Age](/Metrics/IncidentAge.md)
+- [Incident Count per 1k Lines of
Code](/Metrics/IncidentCountPer1kLinesOfCode.md)
+- [Commit Count](/Metrics/CommitCount.md)
+- [Commit Author Count](/Metrics/CommitAuthorCount.md)
+- [Added Lines of Code](/Metrics/AddedLinesOfCode.md)
+- [Deleted Lines of Code](/Metrics/DeletedLinesOfCode.md)
- [PR Count](/Metrics/PRCount.md)
+- [PR Cycle Time](/Metrics/PRCycleTime.md)
+- [PR Coding Time](/Metrics/PRCodingTime.md)
+- [PR Pickup Time](/Metrics/PRPickupTime.md)
+- [PR Review Time](/Metrics/PRReviewTime.md)
+- [PR Deploy Time](/Metrics/PRDeployTime.md)
- [PR Time To Merge](/Metrics/PRTimeToMerge.md)
- [PR Merge Rate](/Metrics/PRMergeRate.md)
+- [PR Review Depth](/Metrics/PRReviewDepth.md)
+- [PR Size](/Metrics/PRSize.md)
+- [Build Count](/Metrics/BuildCount.md)
+- [Build Duration](/Metrics/BuildDuration.md)
+- [Build Success Rate](/Metrics/BuildSuccessRate.md)
+- [DORA - Deployment Frequency](/Metrics/DeploymentFrequency.md)
+- [DORA - Lead Time for Changes](/Metrics/LeadTimeForChanges.md)
+- [DORA - Median Time to Restore Service](/Metrics/MTTR.md)
+- [DORA - Change Failure Rate](/Metrics/CFR.md)
## Configuration
@@ -58,6 +78,7 @@ curl 'http://localhost:8080/pipelines' \
"scopeId": "384111310",
"transformationRules":{
"deploymentPattern":"",
+ "productionPattern":"",
"issueComponent":"",
"issuePriority":"(high|medium|low)$",
"issueSeverity":"",
diff --git a/docs/Plugins/gitlab.md b/docs/Plugins/gitlab.md
index be5e18421..07a498781 100644
--- a/docs/Plugins/gitlab.md
+++ b/docs/Plugins/gitlab.md
@@ -4,42 +4,92 @@ description: >
GitLab Plugin
---
+## Summary
+
+This plugin collects GitLab data through
[API](https://docs.gitlab.com/ee/api/). It then computes and visualizes various
DevOps metrics from the GitLab data, which helps tech leads, QA and DevOps
engineers, and project managers to answer questions such as:
+
+- How long does it take for your codes to get merged?
+- How much time is spent on code review?
+- How long does it take for your codes to get merged?
+- How much time is spent on code review?
+
+## Entities
+
+Check out the [GitLab
entities](/Overview/SupportedDataSources.md#data-collection-scope-by-each-plugin)
collected by this plugin.
+
+## Data Refresh Policy
+
+Check out the [data refresh policy](/Overview/SupportedDataSources.md#gitlab)
of this plugin.
## Metrics
-| Metric Name | Description
|
-|:----------------------------|:-------------------------------------------------------------|
-| Pull Request Count | Number of Pull/Merge Requests
|
-| Pull Request Pass Rate | Ratio of Pull/Merge Review requests to merged
|
-| Pull Request Reviewer Count | Number of Pull/Merge Reviewers
|
-| Pull Request Review Time | Time from Pull/Merge created time until merged
|
-| Commit Author Count | Number of Contributors
|
-| Commit Count | Number of Commits
|
-| Added Lines | Accumulated Number of New Lines
|
-| Deleted Lines | Accumulated Number of Removed Lines
|
-| Pull Request Review Rounds | Number of cycles of commits followed by
comments/final merge |
+Metrics that can be calculated based on the data collected from GitLab:
+
+- [Commit Count](/Metrics/CommitCount.md)
+- [Commit Author Count](/Metrics/CommitAuthorCount.md)
+- [Added Lines of Code](/Metrics/AddedLinesOfCode.md)
+- [Deleted Lines of Code](/Metrics/DeletedLinesOfCode.md)
+- [PR Count](/Metrics/PRCount.md)
+- [PR Cycle Time](/Metrics/PRCycleTime.md)
+- [PR Coding Time](/Metrics/PRCodingTime.md)
+- [PR Pickup Time](/Metrics/PRPickupTime.md)
+- [PR Review Time](/Metrics/PRReviewTime.md)
+- [PR Deploy Time](/Metrics/PRDeployTime.md)
+- [PR Time To Merge](/Metrics/PRTimeToMerge.md)
+- [PR Merge Rate](/Metrics/PRMergeRate.md)
+- [PR Review Depth](/Metrics/PRReviewDepth.md)
+- [PR Size](/Metrics/PRSize.md)
+- [Build Count](/Metrics/BuildCount.md)
+- [Build Duration](/Metrics/BuildDuration.md)
+- [Build Success Rate](/Metrics/BuildSuccessRate.md)
+- [DORA - Deployment Frequency](/Metrics/DeploymentFrequency.md)
+- [DORA - Lead Time for Changes](/Metrics/LeadTimeForChanges.md)
+- [DORA - Median Time to Restore Service](/Metrics/MTTR.md)
+- [DORA - Change Failure Rate](/Metrics/CFR.md)
## Configuration
+
Configuring GitLab via [config-ui](/UserManuals/ConfigUI/GitLab.md).
-## Gathering Data with GitLab
+## API Sample Request
-To collect data, you can make a POST request to `/pipelines`
+You can trigger data collection by making a POST request to `/pipelines`.
```
-curl --location --request POST 'localhost:8080/pipelines' \
+curl 'http://localhost:8080/pipelines' \
--header 'Content-Type: application/json' \
--data-raw '
{
- "name": "gitlab 20211126",
- "tasks": [[{
+ "name": "project1-BLUEPRINT",
+ "blueprintId": 1,
+ "plan": [
+ [
+ {
"plugin": "gitlab",
"options": {
- "projectId": <Your gitlab project id>
+ "connectionId": 1,
+ "projectId": 33728042,
+ "transformationRules":{
+ "deploymentPattern":"",
+ "productionPattern":"",
+ "issueComponent":"",
+ "issuePriority":"(high|medium|low)$",
+ "issueSeverity":"",
+ "issueTypeBug":"(bug)$",
+ "issueTypeIncident":"",
+ "issueTypeRequirement":"(feature|feature-request)$",
+ "prBodyClosePattern":"",
+ "prComponent":"",
+ "prType":""
+ }
}
- }]]
+ }
+ ]
+ ]
}
'
```
-<br/><br/><br/>
+## References
+
+- [references](/DeveloperManuals/DeveloperSetup.md#references)
diff --git a/docs/Plugins/jenkins.md b/docs/Plugins/jenkins.md
index 28c12b042..20125c60a 100644
--- a/docs/Plugins/jenkins.md
+++ b/docs/Plugins/jenkins.md
@@ -6,43 +6,66 @@ description: >
## Summary
-This plugin collects Jenkins data through [Remote Access
API](https://www.jenkins.io/doc/book/using/remote-access-api/). It then
computes and visualizes various DevOps metrics from the Jenkins data.
+This plugin collects Jenkins data through [Remote Access
API](https://www.jenkins.io/doc/book/using/remote-access-api/). It then
computes and visualizes various DevOps metrics from the Jenkins data, which
helps tech leads and DevOps engineers to answer questions such as:
-
+- What is the deployment frequency of your team?
+- What is the build success rate?
+- How long does it take for a code change to be deployed into production?
-## Metrics
+## Entities
-| Metric Name | Description |
-|:-------------------|:------------------------------------|
-| Build Count | The number of builds created |
-| Build Success Rate | The percentage of successful builds |
+Check out the [Jenkins
entities](/Overview/SupportedDataSources.md#data-collection-scope-by-each-plugin)
collected by this plugin.
-## Configuration
+## Data Refresh Policy
+
+Check out the [data refresh policy](/Overview/SupportedDataSources.md#jenkins)
of this plugin.
+
+## Metrics
+
+Metrics that can be calculated based on the data collected from Jenkins:
-In order to fully use this plugin, you will need to set various configurations
via Dev Lake's `config-ui`.
+- [Build Count](/Metrics/BuildCount.md)
+- [Build Duration](/Metrics/BuildDuration.md)
+- [Build Success Rate](/Metrics/BuildSuccessRate.md)
+- [DORA - Deployment Frequency](/Metrics/DeploymentFrequency.md)
+- [DORA - Lead Time for Changes](/Metrics/LeadTimeForChanges.md)
+- [DORA - Median Time to Restore Service](/Metrics/MTTR.md)
+- [DORA - Change Failure Rate](/Metrics/CFR.md)
-### By `config-ui`
+## Configuration
-The connection section of the configuration screen requires the following key
fields to connect to the Jenkins API.
+- Configuring Jenkins via [Config UI](/UserManuals/ConfigUI/Jenkins.md)
-## Collect Data From Jenkins
+## API Sample Request
-To collect data, select `Advanced Mode` on the `Create Pipeline Run` page and
paste a JSON config like the following:
+You can trigger data collection by making a POST request to `/pipelines`.
-```json
-[
- [
- {
- "plugin": "jenkins",
- "options": {
- "connectionId": 1,
- "jobName": "unit_test"
+```
+curl 'http://localhost:8080/pipelines' \
+--header 'Content-Type: application/json' \
+--data-raw '
+{
+ "name": "project1-BLUEPRINT",
+ "blueprintId": 1,
+ "plan": [
+ [
+ {
+ "plugin": "jenkins",
+ "options": {
+ "connectionId": 1,
+ "scopeId": "auto_deploy",
+ "transformationRules":{
+ "deploymentPattern":"",
+ "productionPattern":""
+ }
+ }
}
- }
+ ]
]
-]
+}
+'
```
-## Relationship between job and build
+## References
-Build is kind of a snapshot of job. Running job each time creates a build.
+- [references](/DeveloperManuals/DeveloperSetup.md#references)