Versions Compared

Key

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

...

  1. Prevent Confluence pages from being created, updated, or commented on
    • General users don't have much permission anyway. Only administrators and a few special cases are allowed to edit - ignore that or handle manually.
    • Remove comment permission from users group
      No Format
      atlassian confluence-studio -a runFromList --common "-a removePermissions --space <at:var at:name="entry" /> @entry@ --group users --permissions comment" --continue --list "PA, PB"
      
  2. Prevent JIRA issues from being created, updated, or commented on by switching users (group) role from users to observers
    • Give Observers role to users group - no harm in doing this early
      No Format
      atlassian jira-studio -a runFromList --common "-a addProjectRoleActors --project <at:var at:name="entry" /> @entry@ --group users --role Observers" --continue --list "PA PB"
      
    • Remove Users role from users group
      No Format
      atlassian jira-studio -a runFromList --common "-a removeProjectRoleActors --project <at:var at:name="entry" />@entry@ --group users --role Users" --continue --list "PA, PB"
      
    • The default permission scheme gives users group authority not just role authority to create, update, ... issues!!! So, you need to change all projects to use a different permission scheme that is strictly role based. Developer Relations created this specifically for this purpose (thanks Jonathan!). There is no harm in doing this change well before migration.
      1. Update all projects to the role based permission scheme
        No Format
        atlassian jira-studio -a runFromList --common "-a updateProject --project <at:var at:name="entry" /> @entry@ --permissionScheme \"Role based\" " --continue --list "PA, PB"
        

...

  1. Confluence data
    1. Export participants data (userId, full name, email)
      This allowed user ids to be exported.
      No Format
      titleThis can take time for larger spaces or a large number of spaces/projects
      atlassian confluence-studio -a runFromList --common "-a exportData --space <at:var at:name="entry" /> @entry@ --file participants-confluence.txt --append" --list "PA, PB"
      
    2. Export space
      No Format
      atlassian confluence-studio -a runFromList --common "-a exportSpace --space <at:var at:name="entry" />@entry@ --file <at:var at:name="entry" />@entry@-space.zip" --list "pa, pb"
      
  2. JIRA data
    1. Export participants data (userId, full name, email) - only need to do this once for all projects
      No Format
      titleThis can take time for larger projects or a large number of projects
      atlassian jira-studio -a exportData --exportType participants --file participants.txt --search "project in (PA, PB)"
      
      Info
      titleIncomplete

      Unfortunately, studio prevents access to the email address for users (JIRA only, Confluence works ok!). You will need help from Developer relations to get the email addresses for your JIRA participants.

    2. Export project data - versions and components
      No Format
      atlassian jira-studio -a runFromList --common "-a exportData --project <at:var at:name="entry" /> @entry@ --file <at:var at:name="entry" />@entry@.txt" --list "pa, pb"
      
    3. Get issues
      No Format
      atlassian jira-studio -a runFromList --common "-a getIssueList --project <at:var at:name="entry" /> @entry@ --file <at:var at:name="entry" />@entry@-issues.txt --list "pa, pb"
      
    4. Get comments
      No Format
      titleRun for each project
      atlassian jira-studio -a runFromIssueList --project pa --common "-a getCommentList --issue <at:var at:name="issue" />@issue@ --outputFormat 2 --append --file pa-comments.txt"
      
    5. Get voters
      No Format
      titleRun for each project
      atlassian jira-studio -a runFromIssueList --project pa --common "-a getVoterList --issue <at:var at:name="issue" /> @issue@ --outputFormat 2 --append --file pa-voters.txt"
      
    6. Get watchers
      No Format
      atlassian jira-studio -a runFromIssueList --project pa --common "-a getWatchersList --issue <at:var at:name="issue" /> @issue@ --outputFormat 2 --append --file pa-watchers.txt"
      
    7. Attachments
      Attachments will be handled by script by retrieving them one at a time and adding them to the migrated issue directly

...

  1. Add users - important to retain JIRA reporters and comment authors for both JIRA and Confluence
    No Format
    atlassian jira-ondemand -a run --file participants.txt
    atlassian jira-ondemand -a run --file participants-confluence.txt
    
  2. Confluence spaces
    1. Copy *.zip to Confluence home/restore directory of a local Confluence 3.5.13 instance
    2. Restore exports to local instance
      No Format
      atlassian confluence-migration -a runFromList --common "-a restoreExport --file <at:var at:name="entry" />@entry@-space.zip" --continue --list "pa, pb"
      
    3. Upgrade Confluence 3.5.13 to Confluence version <= 4.1.7 (OnDemand level)
    4. Export spaces (now in OnDemand compatible release format)
      No Format
      atlassian confluence-migration -a runFromList --common "-a exportSpace --space <at:var at:name="entry" /> @entry@ --file <at:var at:name="entry" />@entry@-space-41.zip
      
    5. restore spaces to OnDemand instance using UI (on demand has unique restore support)
      • link the space to the existing JIRA project with the same key (this didn't seem to work though - OnDemand bug ?)
  3. JIRA projects - create project and add versions and components
    No Format
    atlassian jira-ondemand -a runFromList --common "-a run --file <at:var at:name="entry" />@entry@.txt" --continue --list "pa, pb"
    
  4. Restrict notifications - no notifications while JIRA data is being recreated. Create a No notification notification scheme to use for your on demand instance.
    No Format
    atlassian jira-ondemand -a runFromList --common "-a updateProject --project <at:var at:name="entry" /> @entry@ --notificationScheme \"No notifications\" " --continue --list "pa, pb"
    
  5. JIRA issues
    • run issue create script
    • match JIRA keys
    • progress issues to correct state
  6. JIRA comments
    • run comment create script
  7. JIRA voters
    • run comment create script
  8. JIRA watchers
    • run comment create script
  9. JIRA attachments
    • run attachment copy script
  10. Restore notifications
    No Format
    atlassian jira-ondemand -a runFromList --common "-a updateProject --project <at:var at:name="entry" /> @entry@ --notificationScheme \"Default Notification Scheme\"" --continue --list "pa, pb"
    

...

  1. Update Studio Confluence pages with redirect link
    No Format
    titleFor each space
    atlassian confluence-studio -a runFromPageList --space pa --common "-a updatePage --space <at:var at:name="space" />@space@ --title <at:var at:name="title" /> @title@ --content "... redirect macro ..."
    
  2. Add a comment to Studio JIRA issues with link to equivalent issue
    No Format
    atlassian jira-studio -a runFromIssueList --project pa --common "-a addComment --issue <at:var at:name="issue" /> @issue@ --comment "Issue migrated to [<at:var at:name="issue" />@issue@|bobswift@atlassian.com]"