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

Re-factor RDS role as roles appstore_rds and provision_rds

    Details

    • Type: Improvement
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

      Comments at the top of

      • appstore_rds/tasks/main.yml
      • provision_rds/tasks/main.yml

      describe sequences of tasks related to RDS creation that need to be implemented.

      To implement these new roles, adapt and migrate logic from deployRDS.

      Note:

      Variable files used by this role are be defined in (or ought to be added to):

      • common.yml
      • secrets.yml (based on example_secrets.yml)

      which are located in appstore-playbooks/Ansible/group_vars

      In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

      See playbook setup.yml for an understanding of how and when the roles will be run.

        Attachments

          Activity

          ann.loraine Ann Loraine created issue -
          ann.loraine Ann Loraine made changes -
          Field Original Value New Value
          Epic Link IGBF-2323 [ 18477 ]
          ann.loraine Ann Loraine made changes -
          Rank Ranked higher
          ann.loraine Ann Loraine made changes -
          Description Please see new "appstore_rds" role directory on the master branch.

          The top of appstore_rds/tasks/main.yml describes a workflow of tasks related to RDS creation.

          For this task, adapt the logic currently implemented in deployRDS to new requirements described in appstore_rds/tasks/main.yml.

          Variable files used by this role should be defined in:

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, appstore_rds should use reasonable defaults whenever possible, defined in:

          * appstore-playbooks/Ansible/roles/appstore_rds/defaults/main.yml

          Playbook "setup.yml" will use appstore_rds role.
          Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

          Comments at the top of

          *appstore_rds/tasks/main.yml
          * provision_rds/tasks/main.yml

          describe sequences of tasks related to RDS creation.

          Adapt and migrate logic currently implemented in deployRDS to new requirements described in above files.

          Note:

          Variable files used by this role should be defined in:

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

          See playbook setup.yml for an understanding of when the roles will be run.
          Hide
          ann.loraine Ann Loraine added a comment -

          Please take a look. It would be great if you could do this the next time you are on the job.

          Show
          ann.loraine Ann Loraine added a comment - Please take a look. It would be great if you could do this the next time you are on the job.
          ann.loraine Ann Loraine made changes -
          Assignee Chester Dias [ cdias1 ]
          ann.loraine Ann Loraine made changes -
          Summary Re-factor RDS role as appstore_rds Re-factor RDS role as roles appstore_rds and provision_rds
          ann.loraine Ann Loraine made changes -
          Description Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

          Comments at the top of

          *appstore_rds/tasks/main.yml
          * provision_rds/tasks/main.yml

          describe sequences of tasks related to RDS creation.

          Adapt and migrate logic currently implemented in deployRDS to new requirements described in above files.

          Note:

          Variable files used by this role should be defined in:

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

          See playbook setup.yml for an understanding of when the roles will be run.
          Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

          Comments at the top of

          * appstore_rds/tasks/main.yml
          * provision_rds/tasks/main.yml

          describe sequences of tasks related to RDS creation.

          Adapt and migrate logic currently implemented in deployRDS to new requirements described in above files.

          Note:

          Variable files used by this role should be defined in:

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

          See playbook setup.yml for an understanding of when the roles will be run.
          ann.loraine Ann Loraine made changes -
          Description Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

          Comments at the top of

          * appstore_rds/tasks/main.yml
          * provision_rds/tasks/main.yml

          describe sequences of tasks related to RDS creation.

          Adapt and migrate logic currently implemented in deployRDS to new requirements described in above files.

          Note:

          Variable files used by this role should be defined in:

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

          See playbook setup.yml for an understanding of when the roles will be run.
          Please see new "appstore_rds" and "provision_rds" role directories on the master branch.

          Comments at the top of

          * appstore_rds/tasks/main.yml
          * provision_rds/tasks/main.yml

          describe sequences of tasks related to RDS creation that need to be implemented.

          To implement these new roles, adapt and migrate logic from deployRDS.

          Note:

          Variable files used by this role are be defined in (or ought to be added to):

          * common.yml
          * secrets.yml (based on example_secrets.yml)

          which are located in appstore-playbooks/Ansible/group_vars

          In addition, both roles should use reasonable defaults whenever possible, defined in "defaults/main.yml" files.

          See playbook setup.yml for an understanding of how and when the roles will be run.
          cdias1 Chester Dias (Inactive) made changes -
          Status To-Do [ 10305 ] In Progress [ 3 ]
          Show
          cdias1 Chester Dias (Inactive) added a comment - https://bitbucket.org/chesterdias/chester-local-appstore-playbooks/branch/IGBF-2345#diff Please review the above codebase
          cdias1 Chester Dias (Inactive) made changes -
          Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
          cdias1 Chester Dias (Inactive) made changes -
          Assignee Chester Dias [ cdias1 ] Ann Loraine [ aloraine ]
          cdias1 Chester Dias (Inactive) made changes -
          Assignee Ann Loraine [ aloraine ]
          ann.loraine Ann Loraine made changes -
          Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
          ann.loraine Ann Loraine made changes -
          Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
          Hide
          ann.loraine Ann Loraine added a comment -

          Looked at the code. On first glance it looks great. I did not try to run it. I would like to merge into master for functional testing next.

          When you are ready, please submit a PR from your branch to the team repository master branch.

          cc: Chester Dias

          Show
          ann.loraine Ann Loraine added a comment - Looked at the code. On first glance it looks great. I did not try to run it. I would like to merge into master for functional testing next. When you are ready, please submit a PR from your branch to the team repository master branch. cc: Chester Dias
          ann.loraine Ann Loraine made changes -
          Assignee Chester Dias [ cdias1 ]
          cdias1 Chester Dias (Inactive) made changes -
          Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
          cdias1 Chester Dias (Inactive) made changes -
          Assignee Chester Dias [ cdias1 ]
          Hide
          cdias1 Chester Dias (Inactive) added a comment -

          Task structure overview appstore_rds
          1. Query to check if instance is present
          2. if no instance is found then create a new one with db_instance_id
          3. Query to retrieve the newly created db info
          4. get info about the appstore EC2 to add that IP to RDS security group
          5. Drop if database with name rds_db_name is present and recreate new db
          6. Create a new Db user and provide it with grants

          Task structure overview for provision_db
          1. Query to retrieve the newly created db info
          2. get info about the appstore EC2 to add that IP to RDS security group
          3. Drop if database with name rds_db_name is present and recreate new db
          4. Create a new Db user and provide it with grants

          Show
          cdias1 Chester Dias (Inactive) added a comment - Task structure overview appstore_rds 1. Query to check if instance is present 2. if no instance is found then create a new one with db_instance_id 3. Query to retrieve the newly created db info 4. get info about the appstore EC2 to add that IP to RDS security group 5. Drop if database with name rds_db_name is present and recreate new db 6. Create a new Db user and provide it with grants Task structure overview for provision_db 1. Query to retrieve the newly created db info 2. get info about the appstore EC2 to add that IP to RDS security group 3. Drop if database with name rds_db_name is present and recreate new db 4. Create a new Db user and provide it with grants
          Show
          cdias1 Chester Dias (Inactive) added a comment - PR: https://bitbucket.org/lorainelab/appstore-playbooks/pull-requests/17/igbf-2345/diff
          ann.loraine Ann Loraine made changes -
          Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
          ann.loraine Ann Loraine made changes -
          Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
          ann.loraine Ann Loraine made changes -
          Sprint Spring 7 : 13 Apr to 24 Apr [ 92 ] Spring 7 : 13 Apr to 24 Apr, Spring 8 : 24 Apr to 8 May [ 92, 93 ]
          ann.loraine Ann Loraine made changes -
          Rank Ranked higher
          ann.loraine Ann Loraine made changes -
          Assignee Ann Loraine [ aloraine ]
          ann.loraine Ann Loraine made changes -
          Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
          ann.loraine Ann Loraine made changes -
          Resolution Done [ 10000 ]
          Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]
          Hide
          ann.loraine Ann Loraine added a comment -

          I made some edits to the roles and test them. So far so good!

          What's next:

          • Plays to set up the S3 bucket (IGBF-2346)
          • Plays to run database migrations
          Show
          ann.loraine Ann Loraine added a comment - I made some edits to the roles and test them. So far so good! What's next: Plays to set up the S3 bucket ( IGBF-2346 ) Plays to run database migrations
          ann.loraine Ann Loraine made changes -
          Assignee Ann Loraine [ aloraine ] Chester Dias [ cdias1 ]

            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: