From e20369dd377b96c6f4366eb4e7a3b928672f8c78 Mon Sep 17 00:00:00 2001 From: Sanjeev Penupala Date: Thu, 9 Oct 2025 11:19:27 -0500 Subject: [PATCH] docs(bitbucket): copy all documentation images locally --- docs/Configuration/BitBucket.md | 28 ++++++++++-------- .../ConfigUI/bitbucket-add-data-scopes.png | Bin 0 -> 54668 bytes .../bitbucket-ci-entities-overview.png | Bin 0 -> 236837 bytes .../bitbucket-deployment-pipeline-history.png | Bin 0 -> 318878 bytes .../bitbucket-detect-deployments-dora.png | Bin 0 -> 24306 bytes .../bitbucket-detect-deployments-regex.png | Bin 0 -> 36612 bytes .../bitbucket-issue-status-mapping.png | Bin 0 -> 16757 bytes ...itbucket-pipelines-deployment-settings.png | Bin 0 -> 260303 bytes 8 files changed, 15 insertions(+), 13 deletions(-) create mode 100644 static/img/ConfigUI/bitbucket-add-data-scopes.png create mode 100644 static/img/ConfigUI/bitbucket-ci-entities-overview.png create mode 100644 static/img/ConfigUI/bitbucket-deployment-pipeline-history.png create mode 100644 static/img/ConfigUI/bitbucket-detect-deployments-dora.png create mode 100644 static/img/ConfigUI/bitbucket-detect-deployments-regex.png create mode 100644 static/img/ConfigUI/bitbucket-issue-status-mapping.png create mode 100644 static/img/ConfigUI/bitbucket-pipelines-deployment-settings.png diff --git a/docs/Configuration/BitBucket.md b/docs/Configuration/BitBucket.md index 74f9acfea54..896f60e21e7 100644 --- a/docs/Configuration/BitBucket.md +++ b/docs/Configuration/BitBucket.md @@ -43,7 +43,7 @@ API tokens are the recommended authentication method for Bitbucket Cloud. Learn 2. Select **Create API token with scopes**. 3. Give the API token a name and an expiry date (ex: 365 days), then select **Next**. 4. Select **Bitbucket** as the app and select **Next**. -5. Select the required scopes (see **Q2**) and select **Next**. +5. Select the required scopes (see below) and select **Next**. 6. Review your token and select **Create token**. 7. **Copy the generated API token immediately** - it's only displayed once and can't be retrieved later. @@ -63,7 +63,7 @@ The following scopes are **required** to collect data from Bitbucket repositorie - `read:user:bitbucket` - View user info (required for connection test) - `read:workspace:bitbucket` - View your workspaces -![Bitbucket API token scopes selection interface](/img/ConfigUI/bitbucket-api-token-scope-selection-interface.png) +![Bitbucket API Token Scopes Selection Interface](/img/ConfigUI/bitbucket-api-token-scope-selection-interface.png) ##### App Password (Deprecated) @@ -73,6 +73,8 @@ App passwords are deprecated and should only be used for existing connections. F If you're using an existing App password, learn about [how to create a Bitbucket app password](https://support.atlassian.com/bitbucket-cloud/docs/create-an-app-password/). +**Required Permissions:** + - Account:Read - Workspace membership:Read - Projects:Read @@ -82,7 +84,7 @@ If you're using an existing App password, learn about [how to create a Bitbucket - Pipelines:Read - Runners:Read -![bitbucket-app-password-permissions](/img/ConfigUI/bitbucket-app-password-permissions.jpeg) +![Bitbucket App Password Permissions](/img/ConfigUI/bitbucket-app-password-permissions.jpeg) #### Proxy URL (Optional) @@ -117,7 +119,7 @@ Your data collection will continue without interruption, and you'll be ready for Choose the Bitbucket repositories you wish to collect either by finding them in the miller column, or searching. You can only add public repositories through the search box. -![image](https://user-images.githubusercontent.com/14050754/224308925-449a4d3e-ed52-45e9-bb72-0d2892df374f.png) +![Bitbucket - Add Data Scopes](/img/ConfigUI/bitbucket-add-data-scopes.png) ### Step 1.3 - Add Scope Config (Optional) @@ -144,7 +146,7 @@ The transformations on the Bitbucket data you are going to collect. ###### Issue Tracking > Issue Status Mapping -![image](https://user-images.githubusercontent.com/14050754/224309704-b096c256-b2cf-4107-b78c-044d06b5f23c.png) +![Bitbucket Issue Status Mapping](/img/ConfigUI/bitbucket-issue-status-mapping.png) The given settings transformed the Bitbucket issue statuses to the issue statuses used by DevLake, enabling you to measure metrics like the Issue Delivery Rate on the pre-built dashboards, as DevLake understands your definition of when an issue is considered as completed (status = 'DONE'). @@ -165,10 +167,10 @@ The CI/CD configuration for Bitbucket is used for calculating [DORA metrics](../ By default, DevLake will identify the deployment and environment settings that are defined in the Bitbucket CI .yml file. -![image](https://user-images.githubusercontent.com/14050754/224311429-31304867-8cdd-476b-8675-e4acbc17f552.png) +![Bitbucket Detect Deployments for DORA](/img/ConfigUI/bitbucket-detect-deployments-dora.png) However, to ensure this works properly, you must specify the deployment settings in the .yml file. -![img_v2_89602d14-a733-4679-9d4b-d9635c03bc5g](https://user-images.githubusercontent.com/3294100/221528908-4943b1e6-1398-49e9-8ce9-aa264995f9bc.jpg) +![Bitbucket Pipelines Deployment Settings](/img/ConfigUI/bitbucket-pipelines-deployment-settings.png) The pipeline steps with the `deployment` key will be recognized as DevLake deployments. The value of the `deployment` key will be recognized as the environment of DevLake deployments. @@ -176,7 +178,7 @@ All Bitbucket pipeline steps will be saved in table 'cicd_tasks', but DevLake de If you have not defined these settings in the .yml file, please select 'Detect Deployments from Pipeline steps in Bitbucket', and input the RegEx in the following fields: -![image](https://user-images.githubusercontent.com/14050754/224310350-cc9a4901-476d-4583-ad73-4d3b394bc343.png) +![Bitbucket Detect Deployments Regex](/img/ConfigUI/bitbucket-detect-deployments-regex.png) - Deployment: A pipeline step with a name that matches the given RegEx will be recognized as a DevLake deployment. - Production: A pipeline step with a name that matches the given RegEx will be recognized as a DevLake cicd_task in the production environment. @@ -186,11 +188,11 @@ If you have not defined these settings in the .yml file, please select 'Detect D Bitbucket has several key CI entities: `pipelines`, `pipeline steps`, and `deployments`. A Bitbucket pipeline contains several pipeline steps. Each pipeline step defined with a deployment key can be mapped to a Bitbucket deployment. Each Bitbucket pipeline is converted to a cicd_pipeline in DevLake's domain layer schema and each Bitbucket pipeline step is converted to a cicd_task in DevLake's domain layer. -![image](https://user-images.githubusercontent.com/3294100/220288225-71bee07d-c319-45bd-98e5-f4d01359840e.png) +![Bitbucket Pipeline interface showing CI entities and DevLake schema mapping](/img/ConfigUI/bitbucket-ci-entities-overview.png) If a pipeline step defines `deployment` with a value (usually indicating the environment), this pipeline step is also a Bitbucket deployment. -![image](https://user-images.githubusercontent.com/3294100/221887426-4cae1c46-31ce-4fcd-b773-a54c28af0264.png) +![Bitbucket Deployment view showing environment history with various pipeline runs](/img/ConfigUI/bitbucket-deployment-pipeline-history.png) ###### Additional Settings (Optional) @@ -211,14 +213,14 @@ Please click `Save` to save the transformation rules for the repo. In the data s Collecting Bitbucket data requires creating a project first. You can visit the Project page from the side menu and create a new project by following the instructions on the user interface. -![create-a-project](images/create-a-project.png) +![DevLake Project Creation Interface](images/create-a-project.png) ### Step 2.2 - Add a Bitbucket Connection You can add a previously configured Bitbucket connection to the project and select the boards for which you wish to collect the data for. Please note: if you don't see the repositories you are looking for, please check if you have added them to the connection first. -![add-a-connection](images/add-a-connection-project.png) +![DevLake Project Add Connection Interface](images/add-a-connection-project.png) ### Step 2.3 - Set the Sync Policy @@ -228,7 +230,7 @@ There are three settings for Sync Policy: - Sync Frequency: You can choose how often you would like to sync your data in this step by selecting a sync frequency option or enter a cron code to specify your preferred schedule. - Skip Failed Tasks: sometime a few tasks may fail in a long pipeline; you can choose to skip them to avoid spending more time in running the pipeline all over again. -![sync-policy](images/sync-policy.png) +![DevLake Sync Policy Settings](images/sync-policy.png) ### Step 2.4 - Start Data Collection diff --git a/static/img/ConfigUI/bitbucket-add-data-scopes.png b/static/img/ConfigUI/bitbucket-add-data-scopes.png new file mode 100644 index 0000000000000000000000000000000000000000..1882b887e18c66a56083e422dfcd37229e56ab3f GIT binary patch literal 54668 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