The Workzone Cloud Migration Assistant W_CMA) helps your team to migrate Workzone project and repository settings from Bitbucket Server/Datacenter to Bitbucket Cloud. Once the core Bitbucket Server/Datacenter migration including users, projects and repositories to Bitbucket cloud is complete you can install Workzone for Bitbucket Cloud in your workspace and use the W-CMA to migrate Workzone settings.
Feature Comparison and Overview #
Feature | Server/Data Center Supported | Cloud Supported | Migration Tool Support |
---|---|---|---|
Global Configuration | |||
Pull Requests – Configure how Workzone interacts with pull requests | ✔️ | ❌ | |
Performance optimization parameters | ✔️ | Only the group size limit supportedAll others are not | |
Audit logging | ✔️ | ❌ | |
Reviewers for source and destination branch | |||
Casual reviewers | ✔️ | ✔️ | ✔️ |
Mandatory reviewers | ✔️ | ✔️ | ✔️ |
Required mandatory approvals | ✔️ | ✔️ | ✔️ |
Reviewer Groups | ✔️ | ✔️ | ✔️ |
Mandatory reviewer groups | ✔️ | ✔️ | ✔️ |
Suggested reviewers | ✔️ | ❌ | |
File & directory pattern based reviewers | ✔️ | ✔️ | ✔️ |
Priority | ✔️ | ❌ | |
Compliance for source and destination branch | |||
Digitally sign pull request approvals | ✔️ | ✔️ | ✔️ |
Merge Control for source and destination branch | |||
Priority | ✔️ | ❌ | |
Approval Rate | ✔️ | ✔️ | ✔️ |
Required approvals per group | ✔️ | ✔️ | ✔️ |
Required signatures | ✔️ | ✔️ | ✔️ |
Required mandatory approvals | ✔️ | ✔️ These are mandatory anyway | ✔️ |
Ignore committer approvals | ✔️ | ❌ | |
Delete source branch | ✔️ | ✔️ | ✔️ |
Required successful builds | ✔️ | ✔️ | ✔️ |
Watch build results | ✔️ | ✔️ | ✔️ |
Needs work veto | ✔️ | ✔️ – Called “Request changes” | ✔️ |
Watch task completion | ✔️ | ❌ | |
Boolean expression based merge condition | ✔️ | ❌ | |
File and Path reviewers approval quotas | ✔️ | ✔️ | ✔️ |
Workflow Properties | |||
Push after pull request | ✔️ | ❌ | |
Unapprove pull request on source change | ✔️ | ❌ | |
Unapprove pull request on target change | ✔️ | ❌ | |
Enforce merge condition | ✔️ | Via branch restrictions [link to setup guide] | Requires manual configuation |
Differences between Workzone Cloud and Workzone Server/Data Center #
Workzone Server/Data Center offers advanced boolean expression conditions for merge expressions. However cloud only offers simple merge conditions. Each condition is chained to require the AND operator.
Server example: successful builds count >=1 | group quota >=2
The equivalent in Cloud is not possible to us “|”, the equivalent in Cloud would be using “AND” operator for each condition, so that would then look like: successful builds count >=1 AND group quota >=2
Migration path options #
- Manual migration is supported – If you want to test out the migration process on a small repository or instance, this can be an easy option.
- Partial migration using Workzone CMA – Recommended for more complex reviewer configurations, especially file/path reviewers and required approvals. This is recommended if projects, repository, groups and user slugs are a direct match.
- The Workzone CMA will extract Workzone settings from Bitbucket Server/Data Center and create a json file that can be imported into Bitbucket Cloud. The admins can make modifications to the json file, for example, user or group slug mapping before importing it.
- Fully automated migration is not supported. Cloud only supports simplified merge conditions. Advanced merge conditions from Server/ Data Center are not yet supported in Bitbucket Cloud yet.
Migration Guide from Server/Data Center to Cloud #
Pre-Migration Checklist #
You must run the Bitbucket Data Center migration assistant first to map all users, groups, repos etc. (most of those should already be present after using the Bitbucket Data Center migration tool).
All users have been added to Bitbucket Cloud – Check all user display names are identical.
All user groups have been added to Bitbucket Cloud – Check all group name slugs are identical.
All repositories have been added to Bitbucket Cloud – Check all repo slugs are identical.
All projects have been added to Bitbucket Cloud – Check all project keys are identical.
Check all project & repository permissions are identical
Using the Workzone cloud migration assistant #
The Workzone cloud migration assistant is a NodeJs script that can be run from a local machine that has access to both Bitbucket Server/Datacenter and Bitbucket Cloud workspace.
A local .env file must be populated with Bitbucket server/dc urls and admin credentials as well as Bitbucket cloud workspace and workspace admin user and app-password credentials.
The application can be run locally if NodeJS 16 is installed or via a docker container in which case a docker client must be present.
- Clone the Workzone cloud migration assistant from izymessupport/workzone-cloud-migration-assistant
- Follow instructions in the README file.
Limitations and known issues #
- Workzone Cloud does not support the Workzone Server properties/hooks, such as;
- Push after Pull Request
- Unapprove Pull Requests on Source Change
- Unapprove Pull Requests on Target Change
- Workzone Cloud does support the Workzone Server properties/hooks, such as;
- Enforce merge condition – this is done via branch restrictions.
App Licensing #
Workzone for Server / Data Center is paid via Atlassian Marketplace (PvA). Whereas due to Bitbucket Cloud not yet offering a payment gateway, Workzone for Cloud is paid via vendor (using Stripe).
If you have any questions regarding licensing, please contact support.
Support #
If you need assistance with the migration process of Workzone from Server/Data Center to Cloud, or if you have any questions regarding the migration process, you can contact our support here.
If required, we can schedule a virtual meeting to walk through the process in greater detail.