Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Tip

This page describes how to migrate Requirement Yogi data to Confluence and Jira Cloud, using the official CCMA* and JCMA**.

* CCMA: Confluence Cloud Migration Assistant
** JCMA: Jira Cloud Migration Assistant

Info

Using an old version of Requirement Yogi?

Please head to Migrating to the Cloud (before RY 3.5). Or better: Upgrade and use the easy guide below!

It’s quite simple!

Requirement Yogi Confluence migration is not necessary.

The transformation of Confluence pages after can be made after the migration, since all data is stored in the contents of Confluence pages.

As a result, please ignore Requirement Yogi when migrating.

To transform pages after the migration, follow our migration process (cf doc). If you need further assistance, you can also contact our support team.

This page describes how to migrate Requirement Yogi data to Confluence and Jira Cloud, using the official CCMA (Confluence Cloud Migration Assistant) and JCMA (Jira Cloud Migration Assistant).

Basically, you mostly need to trigger the CCMA / JMCA migrations and see what happens. This document is mostly a checklist to ensure the task will be successful.

...

Follow each steps

  1. Before the Migration

  2. Starting the migration

  3. Ending the migration

  4. Troubleshooting

...

Which data will be migrated?

Due to technical difficulties with the APIs, we have only just published the Phase 1 and 2 of CCMA. It will allow you to migrate:

Requirements on pages

(tick) Ready

Requirements links on Jira issues + relationship

(tick) Ready

Traceability Matrices

(error) No, and we’ve stopped working on it*

Baselines

(error) No, and we’ve stopped working on it*

Data is not migrated. In the Cloud we have variants, see the difference here.

Other entities (

...

Report macros and RY properties macro.)

(error) No, and we’ve stopped working on it*

  • For reports, you’ll have to remove old macros and replace them with the RY Report.

...

Limitations

  • On the Cloud, pages containing requirements must be migrated to the new editor experience, since we only have transformers for the new JSON/ADF storage backend, and not for the XML one. The migration will be triggered when we apply the transformation.

  • This “Phase 1 and 2” doesn’t import the RY Property, test macros, baselines, existing reports, and report macros to the Cloud.

*We’ve stopped working on the migration of baselines and other reports, despite the demand for it, because it was outstandingly difficult and it was draining the resources of the company.

Overview of the migration process

  1. Perform the prerequisite steps,

  2. Open up the migration endpoint in Requirement Yogi Cloud (both Confluence and Jira),

  3. Migrate the Confluence data,

  4. Check and acknowledge the warnings and errors in Requirement Yogi for Confluence Cloud,

  5. Migrate the Jira data,

  6. Check and acknowledge the warnings and errors in Requirement Yogi for Jira Cloud,

  7. The migration is done.

Before migrating

You need to:

  1. On the Server/DC side, upgrade the CCMA plugin to the latest version;

  2. Same for the JCMA plugin in Jira;

  3. Update Requirement Yogi Server to the latest version, (minimum 3.5.1 for Confluence, and 3.5.2 for Jira);

  4. Install Requirement Yogi on Confluence cloud, and on Jira Cloud;

  5. The app automatically creates a Requirement Yogi user. Here are the steps to check the user can view and create pages in your spaces:

    • In Confluence Cloud → Settings → Security → Global Permissions:

      • Requirement Yogi

...

      • for Confluence Cloud is expected to be in a user group in the User groups tab,

      • Requirement Yogi

...

      • for Confluence Cloud is expected to be listed in the Apps tab,

      • If you need help, see the screenshots in Section 1.

    • In Confluence Cloud → Settings → Security → Space Permissions:

      • The user group assigned to Requirement Yogi is expected to be listed in the Default Space Permissions, with permissions to view and add Pages (Confluence doesn’t distinguish between add and edit permissions).

      • Individual spaces where you want to use Requirement Yogi are not expected to override the default space permissions for the RY user group.

      • If you need help, see the screenshots in Section 2.

  1. Check page restrictions. If there are page-level restrictions, then the app can’t view/edit the pages with requirements. Two solutions:

    • Either you manually include Requirement Yogi in those page restrictions to edit those pages, but that requires that you edit each page restriction,

    • Either you just let the migration fail, then use our Pages tab, searching for type=page AND macro=requirement AND ryc_isMigrated != true in CQL, and migrate all those pages manually in the future.

Panel
bgColor#DEEBFF

You can also use the Rest API to do a search on the whole space using this query:

https://your-domain.atlassian.net/wiki/rest/api/content/search?cql=type=page AND macro=requirement AND ryc_isMigrated !=true

NB: We only need to edit pages during the migration. Once the migration is over, you can remove the pages permission for the app. Requirement Yogi uses the user’s permissions to transform the pages in the Transformation Wizard.

  1. Open the migration endpoint:

In Confluence Cloud → Requirement Yogi configuration, in the Support tab, you should open up the migration endpoint. This enables Requirement Yogi to receive notifications from the server migration assistant. You can close it once the migration is over.

...

Image Added

...

Image Added

  1. Do it again for the Jira part.

    1. If you are using multiple relationships for requirement-issue links in Server, make sure you create the same relationships in the RY for Jira Cloud administration as well. (See docs for more information: https://requirementyogi.atlassian.net/wiki/spaces/RYC/pages/1804764144/Requirement+Yogi+for+Jira#Administrate-Requirement-Issue-relationships )

Starting the migration

If you have both Jira and Confluence, you will have to start both migrations. We recommend doing the Confluence migration first. We will still create links to requirements that were not yet migrated, but show a warning that the requirement was not found.

Note

In Jira, ensure you click “Choose what to migrate” (see screen below). In our trials, if you import everything at once, it… removes everything from the Jira instance, reimports something and forgets to install apps again, therefore Jira isn’t aware that it kicked Requirement Yogi out. In summary, select what you import, do not tick “Migrate all data”.

...

In Confluence server, under General Configuration > Migration Assistant

  • Mark Requirement Yogi as “Needed in cloud” (App assessment approval by Atlassian pending)

...

  • Image Added
  • Proceed to the rest of the migration steps required by Atlassian.

  • Wait for the migration to complete.

...

  • Image Added

App migration can take a long time to run, especially if you have thousands of pages. On our test instance, the migration took 20s per 1000 requirements (1h30 for a sample of 220k requirements spread on 2000 pages).

Check and acknowledge the warnings and errors in Requirement Yogi Cloud

You can check the migration notifications in the cloud by:

  • Clicking on the link in the app migration details in CCMA (Confluence Server),

  • Or in the cloud, in Requirement Yogi configuration:

    • By clicking the link in the support tab,

    • By going in the queue tab and clicking on the migration job,

...

    • Image Added

Errors and warnings are listed on the notification page (Admin access required). Errors on pages have a link to the page that generated an error. You can go to the page and verify that the migration worked as planned, or manually edit the page yourself and mark the notification as “Resolved

Please do feel free to open a ticket to notify us of errors generated by the migration tool by raising a support ticket

...

.

...

In the end, ensure you acknowledge the Requirement Yogi migration task on the Cloud side

It is important, so that the migration task on the server side knows that Requirement Yogi is done.

See typical warnings in the

...

Troubleshooting

...

page.

...

  • Either you did not allow the app to edit pages, as seen above,

  • Either you did, but there are page-level restrictions, and pages can’t be processed,

  • In either case, you can process pages later on, after the end of the migration. The upside of transforming the pages manually, is that this action is performed using the current user’s credentials, instead of the app's credentials.

To process pages manually:

...

  • Create a transformation named, for example, “Migration”:

    • Go to a non-migrated page in the space,

    • In the top-right “…” menu, click “Requirement Yogi”. A dialog appears.

    • Click “Add step” → “Migration from Server to Cloud”,

    • Before executing this step, there should be an input box named “Transformation name:”. If there is a value, it will save this transformation for the current space, so that you can repeat it.

    • Click Transform.

    • You will have to create this transformation in each space.

  • Transform the pages in bulk:

    • Go to the Requirements tab in the sidebar,

    • Open the “Pages” tab, so reach the same screen as the screenshot above,

    • Tick “Use CQL query”,

    • Enter the CQL: type=page AND macro=requirement AND ryc_isMigrated != true

    • Select all pages and click Transform,

    • Do it until there are no unmigrated pages left in the space.

  • Repeat on other spaces.

  • Again, the upside of this method is, as an external consultant you don’t need to fiddle with the permissions, you can just ask your customer to perform this operation with their own permissions.

Panel
bgColor#DEEBFF

You can also use the Rest API to do a search on the whole space using this query:

https://your-domain.atlassian.net/wiki/rest/api/content/search?cql=type=page AND macro=requirement AND ryc_isMigrated !=true

My app doesn’t process any pages?

Verify that the app user has view and edit permissions on the page. (Permission settings are handled by Atlassian)

The migration of requirement macros to the cloud format involves searching for pages containing requirement macros. Unfortunately, the search sometimes returns incomplete results and mistakenly assumes that no more pages need to be migrated. In that case, you can run the migration job again by clicking the “Retry” button in the Queue tab.

...

You can also manually run the transformation wizard (Transformation Wizard: Transform your pages ) to transform server macros to cloud macros.

My requirements are not found after a migration?

If clicking on a requirement brings you to a similar page.

Image Removed

Most often, it simply means that the page has not yet been indexed.

Verify the state of the queue in the Confluence Settings > Atlassian Marketplace > Requirement Yogi > Queue

Verify especially jobs with a Failed status, so you can retry them or contact the support team.

Image Removed

Indexation is triggered by an event on page modifications sent by Atlassian. Events can take a few minutes, or rarely hours before we receive them.

You can also queue the indexation of a page by clicking on the “Refresh” icon in the Requirement Yogi byline.

Image Removed

...