Details
-
Type: Improvement
-
Status: Closed (View Workflow)
-
Priority: Major
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: None
-
Labels:None
-
Story Points:0.5
-
Epic Link:
-
Sprint:Summer 4: 14 Jul - 28 Jul
Description
See:
https://bitbucket.org/lorainelab/bioviz-playbooks
We're using the playbooks in this repository to deploy code for testing and production.
To save money, we shut down the EC2 hosting the testing site when no-one is using it. Most of the time, it should be in an inactive state.
However, the playbooks fail when the EC2 instance is not running.
The failure happens during the "set_fact" task of the "inventory" role.
For this task, please add some new logic to the "inventory" role that ensures that the ec2 is running by the end of the playbook. Also, please ensure that the delay caused by the need to re-start the ec2 does not cause later plays to fail due to ssh or other services needing time to boot up on the ec2.
To test:
- Run the playbooks in your AWS account (ansible-playbooks setup.yml after creating required variables files)
- Run them again to make sure the playbooks are still idempotent
- Use AWS console to shut down the ec2. Check that the setup.yml playbook can still run.
Attachments
Activity
Ann Loraine
created issue -
Ann Loraine
made changes -
Field | Original Value | New Value |
---|---|---|
Epic Link | IGBF-2323 [ 18477 ] |
Ann Loraine
made changes -
Rank | Ranked higher |
Chester Dias (Inactive)
made changes -
Assignee | Chester Dias [ cdias1 ] |
Chester Dias (Inactive)
made changes -
Status | To-Do [ 10305 ] | In Progress [ 3 ] |
Chester Dias (Inactive)
made changes -
Status | In Progress [ 3 ] | Needs 1st Level Review [ 10005 ] |
Chester Dias (Inactive)
made changes -
Assignee | Chester Dias [ cdias1 ] | Ann Loraine [ aloraine ] |
Ann Loraine
made changes -
Status | Needs 1st Level Review [ 10005 ] | First Level Review in Progress [ 10301 ] |
Ann Loraine
made changes -
Status | First Level Review in Progress [ 10301 ] | Ready for Pull Request [ 10304 ] |
Ann Loraine
made changes -
Assignee | Ann Loraine [ aloraine ] | Chester Dias [ cdias1 ] |
Chester Dias (Inactive)
made changes -
Status | Ready for Pull Request [ 10304 ] | Pull Request Submitted [ 10101 ] |
Chester Dias (Inactive)
made changes -
Assignee | Chester Dias [ cdias1 ] | Ann Loraine [ aloraine ] |
Ann Loraine
made changes -
Status | Pull Request Submitted [ 10101 ] | Reviewing Pull Request [ 10303 ] |
Ann Loraine
made changes -
Status | Reviewing Pull Request [ 10303 ] | Merged Needs Testing [ 10002 ] |
Ann Loraine
made changes -
Assignee | Ann Loraine [ aloraine ] |
Ann Loraine
made changes -
Status | Merged Needs Testing [ 10002 ] | Post-merge Testing In Progress [ 10003 ] |
Ann Loraine
made changes -
Assignee | Ann Loraine [ aloraine ] |
Ann Loraine
made changes -
Resolution | Done [ 10000 ] | |
Status | Post-merge Testing In Progress [ 10003 ] | Closed [ 6 ] |
Please review : https://bitbucket.org/chesterdias/bioviz-playbooks-chester-local/branch/IGBF-2480#diff
The logic added will start the EC2 if not running and wait for ssh connection to open. This will avoid failure at set fact where the connection drop occurs
Additional Notes:
I saw some code for ipify url. I suggest removing it and use the amazon ec2_instance_info module for gathering the details about the newly created ec2 instance. As I understand any external website we hit always caches the IP address from where the hits come. Also should ipify go down someday our playbooks will fail.