Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add retries to most ec2_ami AWS calls #195

Merged
merged 6 commits into from
Nov 16, 2020

Conversation

tremble
Copy link
Contributor

@tremble tremble commented Nov 12, 2020

SUMMARY

Stabilisation work on ec2_ami and ec2_ami_info

ISSUE TYPE
  • Bugfix Pull Request
COMPONENT NAME

ec2_ami
ec2_ami_info

ADDITIONAL INFORMATION

Still to look into

  • Error handling for waiter...

@tremble tremble force-pushed the ec2_ami/retries branch 2 times, most recently from 2d92368 to 90970a7 Compare November 12, 2020 14:27
@tremble tremble changed the title [WIP] Add retries to most ec2_ami AWS calls Add retries to most ec2_ami AWS calls Nov 12, 2020
@jillr jillr merged commit 69e25d3 into ansible-collections:main Nov 16, 2020
@tremble tremble deleted the ec2_ami/retries branch May 28, 2021 07:09
abikouo pushed a commit to abikouo/amazon.aws that referenced this pull request Sep 18, 2023
…sible-collections#195)

* Correctly handle a situation when a repository has no description

If a repository was created without a description, API call response
will not include 'repositoryDescription' attribute:

```
$ aws codecommit get-repository --repository-name test
{
    "repositoryMetadata": {
        "accountId": "123412341234",
        "repositoryId": "abcd1234-abcd-abcd-1234-abcd1234abc",
        "repositoryName": "test",
        "defaultBranch": "master",
        "lastModifiedDate": 1597770987.868,
        "creationDate": 1579544888.152,
        "cloneUrlHttp": "https://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "cloneUrlSsh": "ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "Arn": "arn:aws:codecommit:us-east-1:123412341234:test"
    }
}
```

As a result, module execution fails with the following stacktrace:

```
Traceback (most recent call last):
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 102, in <module>
    _ansiballz_main()
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 40, in invoke_module
    runpy.run_module(mod_name='ansible_collections.community.aws.plugins.modules.aws_codecommit', init_globals=None, run_name='__main__', alter_sys=True)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 206, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 86, in _run_code
    exec(code, run_globals)
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 245, in <module>
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 240, in main
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 165, in process
KeyError: 'repositoryDescription'
```

* Add integration tests

Additional tests do the following:

- Create a new repository with no description
- Update a repository with no description
- Delete a repository

* Add change log fragment

Co-authored-by: Ivan Chekaldin <ivan.chekaldin@blackboard.com>
abikouo pushed a commit to abikouo/amazon.aws that referenced this pull request Sep 18, 2023
…sible-collections#195)

* Correctly handle a situation when a repository has no description

If a repository was created without a description, API call response
will not include 'repositoryDescription' attribute:

```
$ aws codecommit get-repository --repository-name test
{
    "repositoryMetadata": {
        "accountId": "123412341234",
        "repositoryId": "abcd1234-abcd-abcd-1234-abcd1234abc",
        "repositoryName": "test",
        "defaultBranch": "master",
        "lastModifiedDate": 1597770987.868,
        "creationDate": 1579544888.152,
        "cloneUrlHttp": "https://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "cloneUrlSsh": "ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "Arn": "arn:aws:codecommit:us-east-1:123412341234:test"
    }
}
```

As a result, module execution fails with the following stacktrace:

```
Traceback (most recent call last):
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 102, in <module>
    _ansiballz_main()
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 40, in invoke_module
    runpy.run_module(mod_name='ansible_collections.community.aws.plugins.modules.aws_codecommit', init_globals=None, run_name='__main__', alter_sys=True)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 206, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 86, in _run_code
    exec(code, run_globals)
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 245, in <module>
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 240, in main
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 165, in process
KeyError: 'repositoryDescription'
```

* Add integration tests

Additional tests do the following:

- Create a new repository with no description
- Update a repository with no description
- Delete a repository

* Add change log fragment

Co-authored-by: Ivan Chekaldin <ivan.chekaldin@blackboard.com>
abikouo pushed a commit to abikouo/amazon.aws that referenced this pull request Oct 24, 2023
…sible-collections#195)

* Correctly handle a situation when a repository has no description

If a repository was created without a description, API call response
will not include 'repositoryDescription' attribute:

```
$ aws codecommit get-repository --repository-name test
{
    "repositoryMetadata": {
        "accountId": "123412341234",
        "repositoryId": "abcd1234-abcd-abcd-1234-abcd1234abc",
        "repositoryName": "test",
        "defaultBranch": "master",
        "lastModifiedDate": 1597770987.868,
        "creationDate": 1579544888.152,
        "cloneUrlHttp": "https://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "cloneUrlSsh": "ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/test",
        "Arn": "arn:aws:codecommit:us-east-1:123412341234:test"
    }
}
```

As a result, module execution fails with the following stacktrace:

```
Traceback (most recent call last):
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 102, in <module>
    _ansiballz_main()
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File \"/root/.ansible/tmp/ansible-tmp-1597769457.193254-7427-16306174619296/AnsiballZ_aws_codecommit.py\", line 40, in invoke_module
    runpy.run_module(mod_name='ansible_collections.community.aws.plugins.modules.aws_codecommit', init_globals=None, run_name='__main__', alter_sys=True)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 206, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File \"/root/.pyenv/versions/3.8.1/lib/python3.8/runpy.py\", line 86, in _run_code
    exec(code, run_globals)
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 245, in <module>
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 240, in main
  File \"/tmp/ansible_community.aws.aws_codecommit_payload_0zfnkbv7/ansible_community.aws.aws_codecommit_payload.zip/ansible_collections/community/aws/plugins/modules/aws_codecommit.py\", line 165, in process
KeyError: 'repositoryDescription'
```

* Add integration tests

Additional tests do the following:

- Create a new repository with no description
- Update a repository with no description
- Delete a repository

* Add change log fragment

Co-authored-by: Ivan Chekaldin <ivan.chekaldin@blackboard.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants