Help document
This page is provided for help. It is not normally part of the installation.
When to use this page?
This is a help document in case you are renaming a space, more specifically its space key.
If you rename spaces, then Requirement Yogi doesn't automatically track the change. You will have to perform a lot of operations manually.
Alternative
The other way of doing it is to let Requirement Yogi reindex:
- Change the space key,
- Launch Requirement Yogi's reindex,
It will:
- Recreate the data about the current versions of requirements,
- Lose baselines,
- Lose links from other spaces to requirements of this space,
- Lose the links with Jira. Links on the Jira side will still appear, but will reach a 404 page in Confluence.
Places where the space key is mentioned
- In search queries, for example in the Traceability Matrix,
- In the "requirement" macro, if it represents a link to a requirement in another space,
- In various requirement tables,
- In Jira issues.
How to modify the XML of pages
There is no "clean" way of doing that, you will have to issue SQL instructions.
Requirement macros are as follow:
<ac:structured-macro ac:name="requirement" ac:schema-version="1"> <ac:parameter ac:name="type">LINK</ac:parameter> <ac:parameter ac:name="spaceKey">ds</ac:parameter> <!-- spaceKey is optional, only present if the macro is in another space --> <ac:parameter ac:name="key">REQ-001</ac:parameter> <ac:parameter ac:name="baseline">3</ac:parameter> </ac:structured-macro>
Don't forget the requirement-report macros:
<ac:structured-macro ac:name="requirement-report" ac:schema-version="1"> <ac:parameter ac:name="query">@MyProperty = 'Something' AND space = 'ds'</ac:parameter> ... some other parameters ... </ac:structured-macro>
To perform an accurate migration, you will have to write an XML parser.
Tables in the Confluence database
You will have to modify the following tables in the database, which contain the spaceKey parameter:
- AO_32F7CE_AOREQUIREMENT
- AO_32F7CE_AODEPENDENCY
- AO_32F7CE_AOBASELINE
- AO_32F7CE_AOISSUE_TEMPLATE
- AO_32F7CE_AOINTEGRATION_QUEUE, inside the JSON column. You will have to write a JSON parser or, more simply, to purge the queue before starting !
- BANDANA, keys starting with com.playsql.requirementyogi.* – It is a generic table for all settings in Confluence. Check that saved traceability matrixes don't contain a space key.
The queue is a queue of messages between Confluence and Jira. As said above, one simple solution is to stop modifying pages, going to the Requirement Yogi administration, and clicking "Send all messages to Jira". This way, existing messages will be sent end messages above 1000 will be deleted.
Note that if you also change the Jira application, you will also have to change AO_32F7CE_AOINTEGRATION to update the Applink ID. This is also documented, in Admin - Changing Applinks.
Tables in the Jira database
- AO_42D05A_REMOTE_REQUIREMENT, change the spaceKey.
- AO_42D05A_AOQUEUE_MESSAGE (starting from version 2.6, not published at the time of writing), change the spaceKey inside of the JSON column. More simply, send all messages from the RY administration in Jira before starting.
If you also change the Applink to Confluence, you will have to change the Applink ID in:
- AO_42D05A_REMOTE_REQUIREMENT, change the spaceKey.
- The plugin settings table, check all keys starting with "com.playsql.requirementyogijira."
Summary
As a summary, there are 5 types of places where you will have to perform modifications:
- XHTML of pages in Confluence (requirement and requirment-report macros),
- AO tables in Confluence,
- BANDANA table in Confluence,
- AO tables in Jira,
- Settings table in Jira.