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

Check LaunchSpecifications exists #526

Merged
merged 2 commits into from
Apr 20, 2021

Conversation

nitrocode
Copy link
Contributor

@nitrocode nitrocode commented Mar 31, 2021

Summary

  • Checks if the fleet['SpotFleetRequestConfig'] also contains the LaunchSpecifications key using get() instead of assuming it contains this key

Original traceback

Traceback (most recent call last):
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/bin/awslimitchecker", line 8, in <module>
    sys.exit(console_entry_point())
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/runner.py", line 550, in console_entry_point
    r.console_entry_point()
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/runner.py", line 492, in console_entry_point
    self.show_usage()
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/runner.py", line 318, in show_usage
    self.checker.find_usage(
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/checker.py", line 433, in find_usage
    cls.find_usage()
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/services/ec2.py", line 126, in find_usage
    self._find_usage_spot_fleets()
  File "/Users/snip/.local/share/virtualenvs/awslimitchecker-IqjcCELy/lib/python3.9/site-packages/awslimitchecker/services/ec2.py", line 252, in _find_usage_spot_fleets
    fleet['SpotFleetRequestConfig']['LaunchSpecifications'])
KeyError: 'LaunchSpecifications'

Pull Request Checklist

  • All pull requests should be against the develop branch, not master.
  • All pull requests must include the Contributor License Agreement (see below).
  • Whether or not your PR includes unit tests:
    • Please make sure you have run the exact code contained in the PR locally, and it functions as desired.
    • Please make sure the TravisCI build passes or, if not, you've corrected any obvious problems identified by the tests.
  • Code should conform to the Development Guidelines:
    • pep8 compliant with some exceptions (see pytest.ini)
    • 100% test coverage with pytest (with valid tests). If you have difficulty
      writing tests for the code, that's fine, just mention that in the summary and either
      ask for assistance, or clarify that you'd like someone else to handle the tests. PRs that
      include complete test coverage will usually be merged faster.
    • Complete, correctly-formatted documentation for all classes, functions and methods.
    • documentation has been rebuilt with tox -e docs
    • Connections to the AWS services should only be made by the class's
      connect() and connect_resource() methods, inherited from
      awslimitchecker.connectable.Connectable
    • All modules should have (and use) module-level loggers.
    • Commit messages should be meaningful, and reference the Issue number
      if you're working on a GitHub issue (i.e. "issue #x - "). Please
      refrain from using the "fixes #x" notation unless you are sure that the
      the issue is fixed in that commit.
    • Git history is fully intact; please do not squash or rewrite history.

Contributor License Agreement

By submitting this work for inclusion in awslimitchecker, I agree to the following terms:

  • The contribution included in this request (and any subsequent revisions or versions of it)
    is being made under the same license as the awslimitchecker project (the Affero GPL v3,
    or any subsequent version of that license if adopted by awslimitchecker).
  • My contribution may perpetually be included in and distributed with awslimitchecker; submitting
    this pull request grants a perpetual, global, unlimited license for it to be used and distributed
    under the terms of awslimitchecker's license.
  • I have the legal power and rights to agree to these terms.

@jantman jantman merged commit 783dfaa into jantman:develop Apr 20, 2021
@jantman
Copy link
Owner

jantman commented Apr 21, 2021

This has been released in 11.0.0, which is now live on PyPI. Thank you so much, and apologies for the delay.

@nitrocode nitrocode deleted the check_launch_specifications branch May 9, 2021 13:15
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.

2 participants