summaryrefslogtreecommitdiffstats
path: root/requirements.txt (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove Python 3.9 support for the controller (#80973)Sloane Hertel2023-07-101-3/+0
| | | | | | | * Remove obsolete Python <=3.9 controller code * Remove Python 3.9 test controller bootstrapping * Update test requirements Co-authored-by: Matt Clay <matt@mystile.com>
* ansible-galaxy - support `resolvelib >= 0.5.3, < 1.1.0` (#80196)Wong Hoi Sing Edison2023-03-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ansible-galaxy - support `resolvelib >= 0.5.3, < 1.1.0` <https://pypi.org/project/resolvelib/1.0.1> released on 2023-03-09: - <https://github.com/sarugaku/resolvelib/blob/main/CHANGELOG.rst#101-2023-03-09> - <https://github.com/sarugaku/resolvelib/releases/tag/1.0.1> Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com> * Trigger CI by pinning resolvelib with latest version Since resolvelib is pre-installed in our test containers, we should temporarily pin the latest version allowed to force the tests to run with that version. Once the tests have passed that commit can be reverted. Please make those changes without force pushing, so that we keep the reference to the passing CI run. We can squash the commits when merging the PR so the temporary commits won't be in the final commit merged to the devel branch. Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com> * https://github.com/ansible/ansible/pull/80196#discussion_r1136003637 Also test resolvelib with multiple supported versions. Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com> * Revert "Trigger CI by pinning resolvelib with latest version" This reverts commit 5518e5dbca01b87d13850cee9ccdbdc1ee49188f. --------- Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Add support for importlib.resources (#78915)Matt Martz2023-01-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add support for importlib.resources * Remove the importlib.resources imports * return the correct data * Some code comments, and re-order for consistency * Disallow traversing packages below an individual collection * Add a traversable class for namespaces * Re-use variable * Utilize itertools.chain.from_iterable Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> * Simplify logic to check for packages from ansible loaders Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> * Just a generator expression, instead of a generator * docstrings * Add comment about find_spec for our namespaces * Add some initial unit tests for importlib.resources * normalize * Utilize importlib.resources for listing collections * collections_path is already in config, just use config * install uses a different default for collections_path * Remove unused import * Remove duplicate __truediv__ * Bring back TraversableResources * Apply some small suggestions from code review Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com> * Remove cross contamination between plugin loader code and CLI code * Remove unused import Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com>
* ansible-galaxy - support ``resolvelib >= 0.5.3, < 0.10.0`` (#79399)Wong Hoi Sing Edison2022-11-231-1/+1
| | | | | | | | | | * Upgrade `resolvelib >= 0.5.3, < 0.10.0` https://pypi.org/project/resolvelib/0.9.0/ released on 2022-11-17: * https://github.com/sarugaku/resolvelib/blob/master/CHANGELOG.rst#090-2022-11-17 * https://github.com/sarugaku/resolvelib/releases/tag/0.9.0 Signed-off-by: Wong Hoi Sing Edison <hswong3i@pantarei-design.com>
* Pin PyYAML version compatible with Python 3.8+ (#77936)Sloane Hertel2022-06-071-1/+1
| | | | Co-authored-by: Brian Coca <bcoca@users.noreply.github.com> Co-authored-by: Matt Clay <matt@mystile.com>
* ansible-galaxy - support resolvelib versions >= 0.5.3, < 0.9.0 (#77649)Sloane Hertel2022-06-071-1/+3
| | | | | | | | | | | | | | | * ansible-galaxy - support resolvelib versions >= 0.5.3, <= 0.8.1 Test incompatibilities are removed for resolvelib >= 0.6.0 Test against the latest 0.8.x version and fix requirements * Fix tests - use a venv for testing the range of resolvelib versions * Update temporary hardcoded fallback for ansible-test * Update hardcoded upperbound for sanity tests * Make error check more flexible
* Require Jinja2 3.0.0 (#75881)Martin Krizek2021-10-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Require Jinja2 3.0.0 ci_complete * Fix sanity * Remove Jinja min/max tests * ansible-test changes * ci_complete * More cleanup ci_complete * Revert _count_newlines_from_end :( and other stuff * Fix sanity * It's using host_vars ... * Unused import * Remove overridden groupby filter * environmentfilter -> pass_environment * Explain preserve_trailing_newlines * Add changelog * ci_complete * Deprecated ANSIBLE_JINJA2_NATIVE_WARNING * native_helpers.py cleanup * More cleanup in the find intgration test
* Replace the inhouse collection dependency resolver with `resolvelib`Sviatoslav Sydorenko2021-01-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR #72591 This change: * Adds an artifacts manager that abstracts away extracting the metadata from artifacts, downloading and caching them in a temporary location. * Adds `resolvelib` to direct ansible-core dependencies[0]. * Implements a `resolvelib`-based dependency resolver for `collection` subcommands that replaces the legacy in-house code. This is a dependency resolution library that pip 20.3+ uses by default. It's now integrated for use for the collection dependency resolution in ansible-galaxy CLI. * Refactors of the `ansible-galaxy collection` CLI. In particular, it: - reimplements most of the `download`, `install`, `list` and `verify` subcommands from scratch; - reuses helper bits previously moved out into external modules; - replaces the old in-house resolver with a more clear implementation based on the resolvelib library[0][1][2]. * Adds a multi Galaxy API proxy layer that abstracts accessing the version and dependencies via API or local artifacts manager. * Makes `GalaxyAPI` instances sortable. * Adds string representation methods to `GalaxyAPI`. * Adds dev representation to `GalaxyAPI`. * Removes unnecessary integration and unit tests. * Aligns the tests with the new expectations. * Adds more tests, integration ones in particular. [0]: https://pypi.org/p/resolvelib [1]: https://github.com/sarugaku/resolvelib [2]: https://pradyunsg.me/blog/2020/03/27/pip-resolver-testing Co-Authored-By: Jordan Borean <jborean93@gmail.com> Co-Authored-By: Matt Clay <matt@mystile.com> Co-Authored-By: Sam Doran <sdoran@redhat.com> Co-Authored-By: Sloane Hertel <shertel@redhat.com> Co-Authored-By: Sviatoslav Sydorenko <webknjaz@redhat.com> Signed-Off-By: Sviatoslav Sydorenko <webknjaz@redhat.com>
* collection routing (#67684)Matt Davis2020-05-261-0/+1
| | | | | | | * `meta/` directory in collections * runtime metadata for redirection/deprecation/removal of plugin loads * a compatibility layer to keep existing content working on ansible-base + collections * a Python import redirection layer to keep collections-hosted (and otherwise moved) content importable by things that don't know better * supported Ansible version validation on collection loads
* Change default smart connection to ssh on macOS and remove paramiko from ↵Sam Doran2019-04-041-1/+0
| | | | | | | | | | | | | | requirements.txt (#54738) * Remove default use of paramiko connection plugin on macOS This fix was originally to work around a bug that caused a kernel panic on macOS that has since been fixed. * Remove paramiko from requirements.txt * Move paramiko checking to common place * Drop the warnings obfiscation code * Update pip installation instructions to reflect upstream instructions * Fix tests on CentOS 6 (Python 2.6) that now show Python deprecation warnings * Add changelog fragment
* Remove runtime usage of pkg_resources.Toshio Kuratomi2018-10-191-1/+0
| | | | | | This should provide a startup time speed boost at the expense of making it harder to get ansible to use newer versions of packages than are provided by the platform.
* Cyptography pr 20566 rebase (#25560)Toshio Kuratomi2017-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make pyca/cryptography the preferred backend for cryptographic needs (mainly vault) falling back to pycrypto pyca/cryptography is already implicitly a dependency in many cases through paramiko (2.0+) as well as the new openssl_publickey module, which requires pyOpenSSL 16.0+. Additionally, pyca/cryptography is an optional dep for better performance with vault already. This commit leverages cryptography's padding, constant time comparisons, and CBC/CTR modes to reduce the amount of code ansible needs to maintain. * Handle wrong password given for VaultAES format * Do not display deprecation warning for cryptography on python-2.6 * Namespace all of the pycrypto imports and always import them Makes unittests better and the code less likely to get stupid mistakes (like using HMAC from cryptogrpahy when the one from pycrypto is needed) * Add back in atfork since we need pycrypto to reinitialize its RNG just in case we're being used with old paramiko * contrib/inventory/gce: Remove spurious require on pycrypto (cherry picked from commit 9e16b9db275263b3ea8d1b124966fdebfc9ab271) * Add cryptography to ec2_win_password module requirements * Fix python3 bug which would pass text strings to a function which requires byte strings. * Attempt to add pycrypto version to setup deps * Change hacking README for dual pycrypto/cryptography * update dependencies for various CI scripts * additional CI dockerfile/script updates * add paramiko to the windows and sanity requirement set This is needed because ansible lists it as a requirement. Previously the missing dep wasn't enforced, but cryptography imports pkg_resources so you can't ignore a requirement any more * Add integration test cases for old vault and for wrong passwords * helper script for manual testing of pycrypto/cryptography * Skip the pycrypto tests so that users without it installed can still run the unittests * Run unittests for vault with both cryptography and pycrypto backend
* Move to using a requirements.txt to install the python packages. (#21430)Toshio Kuratomi2017-02-151-0/+10
Move to using a requirements.txt to install the python packages. This makes it easy to keep the documentation and actual package dependencies in sync. Fixes #18453