Remove Bitbucket Cloud support for app passwords
### Deprecation Summary Atlassian has deprecated app passwords (user/password authentication) for Bitbucket Cloud and announced that this authentication method will stop working on 2026-06-09. Users importing repositories from Bitbucket Cloud using the GitLab API will no longer be able to use username/password authentication in GitLab. They will need to use [user API tokens](https://support.atlassian.com/organization-administration/docs/understand-user-api-tokens/) instead. Users importing repositories from Bitbucket Server are unaffected. Users importing repositories from Bitbucket Cloud using the GitLab UI are unaffected. #### Documentation - Atlassian announcement: https://www.atlassian.com/blog/bitbucket/bitbucket-cloud-transitions-to-api-tokens-enhancing-security-with-app-password-deprecation - GitLab import documentation: https://docs.gitlab.com/user/import/bitbucket_cloud/#generate-a-bitbucket-cloud-app-password - GitLab API documentation: https://docs.gitlab.com/api/import/#import-repository-from-bitbucket-cloud ### Breaking Change? Does this deprecation contain a breaking change? ```Yes``` ### Affected Customers Who is affected by this deprecation: GitLab.com users, Self-managed users, or Dedicated users? (choose all that apply) - [x] GitLab.com - [x] Self-managed - [x] Dedicated What pricing tiers are impacted? - [x] GitLab Free - [x] GitLab Premium - [x] GitLab Ultimate #### Am I impacted? If you use the [`POST /import/bitbucket` GitLab API](https://docs.gitlab.com/api/import/#import-repository-from-bitbucket-cloud) with the `bitbucket_username` and `bitbucket_app_password` parameters, you are affected. In this case, replace your use of `bitbucket_username` and `bitbucket_app_password` with `bitbucket_api_token`. See the Atlassian documentation for instructions on how to create an API token in Bitbucket: https://support.atlassian.com/bitbucket-cloud/docs/create-an-api-token/ ### Deprecation Milestone This deprecation will be announced in milestone: ```18.9``` ### Planned Removal Milestone The feature / functionality will be removed in milestone: ```19.0``` ### Links - Breaking change exception request: https://gitlab.com/gitlab-com/Product/-/work_items/14486+ - Feature request for API token support: https://gitlab.com/gitlab-org/gitlab/-/work_items/575583+ - Support for BitBucket Cloud API tokens added in GitLab 18.9: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/218681+ ### Checklists #### Timeline #### Rollout Plan - DRI Engineers: @georgekoltsov - DRI Engineering Manager: @thiagocsf - [ ] Describe rollout plans on GitLab.com - [ ] _Link to [a feature flag rollout issue](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/issue_templates/Feature%20Flag%20Roll%20Out.md )_ that covers: - [ ] Expected release date on GitLab.com and GitLab version - [ ] Rollout timelines, such as a percentage rollout on GitLab.com - [ ] Creation of any clean-up issues, such as code removal - [ ] Determine how to migrate users still using the existing functionality - [ ] Document ways to migrate with the tooling available - [ ] Automate any users who have not yet migrated, but ensure it's a two-way door decision #### Communication Plan - DRI Product Manager: @thiagocsf An internal slack post and a release post are not sufficient notification for our customers or internal stakeholders. Plan to communicate proactively and directly with affected customers and the internal stakeholders supporting them. **Internal Communication Plan** This will have been documented in your [breaking change request](https://gitlab.com/gitlab-com/Product/-/issues/new?issuable_template=Breaking-Change-Exception). You can use this checklist to track completion of these items. - [ ] [Support Preparedness issue](https://gitlab.com/gitlab-com/support/support-team-meta/-/blob/master/.gitlab/issue_templates/Support%20Preparedness.md?ref_type=heads) created - [ ] Guidance for Engineering, Product, Security, Customer Success, and Sales created **External Communication Plan** This will have been documented in your [breaking change request](https://gitlab.com/gitlab-com/Product/-/issues/new?issuable_template=Breaking-Change-Exception). You can use this checklist to track completion of these items. - [ ] Customer announcement plan (timeline for notifications, audience, channels, etc) - [ ] Ensure you have approvals from legal and corp comms for any communication being sent directly to customers. - [x] As soon as possible, but no later than the third milestone preceding the major release, ensure that the following are complete (for example, given the following release schedule: `17.8, 17.9, 17.10, 17.11, 18.0` – `17.9` is the third milestone preceding the major release). - [x] A [deprecation announcement entry](https://about.gitlab.com/handbook/marketing/blog/release-posts/#creating-the-announcement) has been created so the deprecation will appear in release posts and on the [general deprecation page](https://docs.gitlab.com/ee/update/deprecations). _Add link to the relevant merge request._ - [x] Documentation has been updated to mark the feature as [deprecated](https://docs.gitlab.com/development/documentation/versions/#deprecations-and-removals). _Add link to the relevant merge request._ - [ ] On the major milestone: - [ ] The deprecated item has been removed. _Add link to the relevant merge request._ - [ ] If the removal of the deprecated item is a [breaking change](https://docs.gitlab.com/update/terminology/#breaking-change), the merge request is labeled ~"breaking change". - [ ] Document the migration plan for users, clearly outlining the actions they need to take to mitigate the impact of the breaking change. - [ ] [Add link](here) #### Stakeholder Mentions - [ ] Product Designer `@ProductDesigner` - [x] Tech Writer @eread - [ ] Software Engineering in Test `@SET` - [ ] Any other stable counterparts based on the [product categories](https://handbook.gitlab.com/handbook/product/categories/): - [ ] Add Sales/CS counterpart or mention `@timtams` - [x] Add Support counterpart or mention @mlockhart - [ ] Add Marketing counterpart or mention `@martin_klaus` - [ ] Add Corp comms if direct customer comms are needed `@jmalleo` - [ ] Add Product Security counterpart, if relevant to your deprecation - [ ] Mention (in internal note) Customer Success Managers / Acount Managers / Solutions Architects for impacted customers #### Labels - [x] This issue is labeled ~deprecation, and with the relevant `~devops::`, `~group::`, and `~Category:` labels. - [x] This issue is labeled ~"breaking change" if the removal of the deprecated item will be a [breaking change](https://docs.gitlab.com/update/terminology/#breaking-change). ### References - [Deprecations, removals, and breaking changes](https://handbook.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-removals-and-breaking-changes) - [Deprecation guidelines](https://docs.gitlab.com/ee/development/deprecation_guidelines/) - [Deprecations and removals doc styleguide](https://docs.gitlab.com/ee/development/documentation/styleguide/deprecations_and_removals) - [REST API Deprecations](https://docs.gitlab.com/development/documentation/restful_api_styleguide/#deprecations) and [REST API breaking changes](https://docs.gitlab.com/development/api_styleguide/#breaking-changes). - [GraphQL Deprecations](https://docs.gitlab.com/development/api_graphql_styleguide/#deprecating-schema-items) and [GraphQL API breaking changes](https://docs.gitlab.com/development/api_graphql_styleguide/#breaking-changes). - [GitLab release and maintenance policy](https://docs.gitlab.com/policy/maintenance/) - Videos 📺 - [How to deprecate and remove features in GitLab releases](https://youtu.be/9gy7tg94j7s) - [Review of GitLab deprecations and removals policy & Runner team deprecations and removals process](https://youtu.be/ehT1xBajCRI) /label ~"group::import" /milestone %"19.0"
issue