Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-2426

Write next draft database migration code

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Story Points:
      0.5
    • Sprint:
      Summer 1: 8 Jun - 19 Jun, Summer 2: 22 Jun - 3 Jul, Summer 3: 6 Jul - 17 Jul, Summer 4: 14 Jul - 28 Jul, Summer 5: 3 Aug - 14 Aug, Summer 6: 17 Aug - 28 Aug, Summer 7: 31 Aug - 11 Sep, Fall 1: 14 Sep - 25 Sep, Fall 2: 28 Sep - 9 Oct

      Description

      Move database copy logic to role mysql.

      Modify variables files to mention old database only. "Old" database is the one we want to copy.

      example_common.yml:

      • first_rds_db_name - the name of the old database we want to copy
      • first_db_instance_id - the RDS hosting the old database we want to copy

      example_secrets.yml:

      • first_rds_admin_password - admin password for the RDS hosting the old database we want to copy
      • first_rds_admin_user - admin user name for the RDS hosting the old database we want to copy

      Add logic to role mysql to run the following tasks if and only if all of the above variables are defined and first_rds_db_name is different from rds_db_name. (Use when statements.)

      Tasks:

      • Create mysql dump from first_rds_db_name hosted on first_db_instance_id
      • Load data into rds_db_name hosted on rds_instance_id

      Also, modify the code to stop assuming that RDS admin user is named "admin." This should be configurable.

        Attachments

          Issue Links

            Activity

            Hide
            cdias1 Chester Dias (Inactive) added a comment -

            [~aloraine] first_rds_admin_user: we don't need to pass this in example_secrets.yml, I will get this from the rds_instance_info module.

            Show
            cdias1 Chester Dias (Inactive) added a comment - [~aloraine] first_rds_admin_user: we don't need to pass this in example_secrets.yml, I will get this from the rds_instance_info module.
            Hide
            ann.loraine Ann Loraine added a comment -

            Clarification:

            • "first" database, rds, etc refer to the database we are planning to copy and do the mysql dump on. It is the pre-existing system we are going to copy.
            • the variables that were already there when you started work are associated with the new mysql database that will get populated if "first" variables are assigned
            • the admin user and password for the "first" rds host might be different from admin user and password for the rds host and database being set up for the new app store
            Show
            ann.loraine Ann Loraine added a comment - Clarification: "first" database, rds, etc refer to the database we are planning to copy and do the mysql dump on. It is the pre-existing system we are going to copy. the variables that were already there when you started work are associated with the new mysql database that will get populated if "first" variables are assigned the admin user and password for the "first" rds host might be different from admin user and password for the rds host and database being set up for the new app store
            Hide
            cdias1 Chester Dias (Inactive) added a comment -

            Got it. Thanks

            Show
            cdias1 Chester Dias (Inactive) added a comment - Got it. Thanks
            Hide
            cdias1 Chester Dias (Inactive) added a comment - - edited

            Summary of Tasks
            1. Gather information of old DBs if first_db_instance_id!=db_instance_id and first_rds_db_name|string !="None"
            2. Create mysql dump of old DB if first_rds_db_name != rds_db_name and first_rds_db_name|string !="None" and first_rds_admin_password|string !="None"
            3. Load data into the newly created DB if first_rds_db_name != rds_db_name and first_rds_db_name|string !="None"

            Please Review: https://bitbucket.org/chesterdias/chester-local-appstore-playbooks/branch/IGBF-2426#diff

            Show
            cdias1 Chester Dias (Inactive) added a comment - - edited Summary of Tasks 1. Gather information of old DBs if first_db_instance_id!=db_instance_id and first_rds_db_name|string !="None" 2. Create mysql dump of old DB if first_rds_db_name != rds_db_name and first_rds_db_name|string !="None" and first_rds_admin_password|string !="None" 3. Load data into the newly created DB if first_rds_db_name != rds_db_name and first_rds_db_name|string !="None" Please Review: https://bitbucket.org/chesterdias/chester-local-appstore-playbooks/branch/IGBF-2426#diff
            Hide
            ann.loraine Ann Loraine added a comment -

            Thank you for making the requested changes. Please submit PR at your convenience.
            attn: Chester Dias

            Show
            ann.loraine Ann Loraine added a comment - Thank you for making the requested changes. Please submit PR at your convenience. attn: Chester Dias
            Show
            cdias1 Chester Dias (Inactive) added a comment - PR https://bitbucket.org/lorainelab/appstore-playbooks/pull-requests/31/igbf-2426-added-code-for-the-copying-data/diff
            Hide
            ann.loraine Ann Loraine added a comment -

            Blocked by S3 bucket copy-over.

            Show
            ann.loraine Ann Loraine added a comment - Blocked by S3 bucket copy-over.

              People

              • Assignee:
                cdias1 Chester Dias (Inactive)
                Reporter:
                ann.loraine Ann Loraine
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: