mirror of
https://github.com/ansible/awx.git
synced 2026-05-09 10:27:37 -02:30
Update pip and setuptools in requirements txt
Versions selected to be pre-19 pip due to unresolved issues with the build systems Upgrade everything, party on document new process rotate license files fix Swagger schema generation target Remove --ignore-installed flag
This commit is contained in:
@@ -1,10 +1,37 @@
|
||||
# Dependency Management
|
||||
|
||||
The `requirements.txt` and `requirements_ansible.txt` files are generated from `requirements.in` and `requirements_ansible.in`, respectively, using `pip-tools` `pip-compile`.
|
||||
|
||||
Run `./updater.sh` command from inside `./requirements` directory of the awx repository.
|
||||
## How To Use
|
||||
|
||||
Make sure you have `patch, awk, python3, python2, python3-venv, python2-virtualenv, pip2, pip3` installed.
|
||||
Commands should from inside `./requirements` directory of the awx repository.
|
||||
|
||||
If you are using the development container image, you need to run `dnf install libpq-devel libcurl-devel`. These packages are only installed temporarily in the Dockerfile.
|
||||
Make sure you have `patch, awk, python3, python2, python3-venv, python2-virtualenv, pip2, pip3` installed. The development container image should have all these.
|
||||
|
||||
### Upgrading or Adding Select Libraries
|
||||
|
||||
If you need to add or upgrade one targeted library, then modify `requirements.in`,
|
||||
then run the script:
|
||||
|
||||
`./updater.sh`
|
||||
|
||||
#### Upgrading Unpinned Dependency
|
||||
|
||||
If you require a new version of a dependency that does not have a pinned version
|
||||
for a fix or feature, pin a minimum version and run `./updater.sh`. For example,
|
||||
replace the line `asgi-amqp` with `asgi-amqp>=1.1.4`, and consider leaving a
|
||||
note.
|
||||
|
||||
Then next time that a general upgrade is performed, the minimum version specifiers
|
||||
can be removed, because `*.txt` files are upgraded to latest.
|
||||
|
||||
### Upgrading Dependencies
|
||||
|
||||
You can upgrade (`pip-compile --upgrade`) the dependencies by running
|
||||
|
||||
`./updater.sh upgrade`.
|
||||
|
||||
## What The Script Does
|
||||
|
||||
This script will:
|
||||
|
||||
@@ -13,7 +40,6 @@ This script will:
|
||||
- including an automated patch that adds `python_version < "3"` for Python 2 backward compatibility
|
||||
- Removes the `docutils` dependency line from `requirements.txt` and `requirements_ansible.txt`
|
||||
|
||||
You can also upgrade (`pip-compile --upgrade`) the dependencies by running `./updater.sh upgrade`.
|
||||
|
||||
## Licenses and Source Files
|
||||
|
||||
@@ -29,3 +55,97 @@ pip download <pypi library name> -d docs/licenses/ --no-binary :all: --no-deps
|
||||
```
|
||||
|
||||
Make sure to delete the old tarball if it is an upgrade.
|
||||
|
||||
## UPGRADE BLOCKERs
|
||||
|
||||
Anything pinned in `*.in` files involves additional manual work in
|
||||
order to upgrade. Some information related to that work is outlined here.
|
||||
|
||||
### django
|
||||
|
||||
For any upgrade of Django, it must be confirmed that
|
||||
we don't regress on FIPS support before merging.
|
||||
|
||||
See internal integration test knowledge base article `how_to_test_FIPS`
|
||||
for instructions.
|
||||
|
||||
If operating in a FIPS environment, `hashlib.md5()` will raise a `ValueError`,
|
||||
but will support the `usedforsecurity` keyword on RHEL and Centos systems.
|
||||
|
||||
Keep an eye on https://code.djangoproject.com/ticket/28401
|
||||
|
||||
The override of `names_digest` could easily be broken in a future version.
|
||||
Check that the import remains the same in the desired version.
|
||||
|
||||
https://github.com/django/django/blob/af5ec222ccd24e81f9fec6c34836a4e503e7ccf7/django/db/backends/base/schema.py#L7
|
||||
|
||||
### social-auth-app-django
|
||||
|
||||
django-social keeps a list of backends in memory that it gathers
|
||||
based on the value of `settings.AUTHENTICATION_BACKENDS` *at import time*:
|
||||
https://github.com/python-social-auth/social-app-django/blob/c1e2795b00b753d58a81fa6a0261d8dae1d9c73d/social_django/utils.py#L13
|
||||
|
||||
Our `settings.AUTHENTICATION_BACKENDS` can *change*
|
||||
dynamically as Tower settings are changed (i.e., if somebody
|
||||
configures Github OAuth2 integration), so we need to
|
||||
_overwrite_ this in-memory value at the top of every request so
|
||||
that we have the latest version
|
||||
see: https://github.com/ansible/tower/issues/1979
|
||||
|
||||
### django-oauth-toolkit
|
||||
|
||||
Version 1.2.0 of this project has a bug that error when revoking tokens.
|
||||
This is fixed in the master branch but is not yet released.
|
||||
|
||||
When upgrading past 1.2.0 in the future, the `0025` migration needs to be
|
||||
edited, just like the old migration was edited in the project:
|
||||
https://github.com/jazzband/django-oauth-toolkit/commit/96538876d0d7ea0319ba5286f9bde842a906e1c5
|
||||
The field can simply have the validator method `validate_uris` removed.
|
||||
|
||||
### azure-keyvault
|
||||
|
||||
Upgrading to 4.0.0 causes error because imports changed.
|
||||
|
||||
```
|
||||
File "/var/lib/awx/venv/awx/lib64/python3.6/site-packages/awx/main/credential_plugins/azure_kv.py", line 4, in <module>
|
||||
from azure.keyvault import KeyVaultClient, KeyVaultAuthentication
|
||||
ImportError: cannot import name 'KeyVaultClient'
|
||||
```
|
||||
|
||||
### slackclient
|
||||
|
||||
Imports as used in `awx/main/notifications/slack_backend.py` changed
|
||||
in version 2.0. This plugin code will need to change and be re-tested
|
||||
as the upgrade takes place.
|
||||
|
||||
### django-jsonfield
|
||||
|
||||
Instead of calling a `loads()` operation, the returned value is casted into
|
||||
a string in some cases, introduced in the change:
|
||||
|
||||
https://github.com/adamchainz/django-jsonfield/pull/14
|
||||
|
||||
This breaks a very large amount of AWX code that assumes these fields
|
||||
are returned as dicts. Upgrading this library will require a refactor
|
||||
to accomidate this change.
|
||||
|
||||
### pip and setuptools
|
||||
|
||||
The offline installer needs to have functionality confirmed before upgrading these.
|
||||
|
||||
## Library Notes
|
||||
|
||||
### celery
|
||||
|
||||
This is only used for the beat feature (running periodic tasks).
|
||||
This could be replaced, see: https://github.com/ansible/awx/pull/2530
|
||||
|
||||
### requests-futures
|
||||
|
||||
This can be removed when a solution for the external log queuing is ready.
|
||||
https://github.com/ansible/awx/pull/5092
|
||||
|
||||
### asgi-amqp
|
||||
|
||||
This library is not compatible with channels 2 and is not expected
|
||||
to become so. This drives other pins in the requirements file.
|
||||
|
||||
@@ -1,53 +1,48 @@
|
||||
ansible-runner==1.4.4
|
||||
ansiconv==1.0.0
|
||||
appdirs==1.4.2
|
||||
asgi-amqp==1.1.4
|
||||
azure-keyvault==1.1.0
|
||||
boto==2.47.0
|
||||
channels==1.1.8
|
||||
celery==4.3.0
|
||||
daphne==1.3.0 # Last before backwards-incompatible channels 2 upgrade
|
||||
twisted[tls]>=17.1 # from daphne, see https://github.com/django/daphne/pull/257
|
||||
Django==2.2.4
|
||||
django-auth-ldap==1.7.0
|
||||
django-cors-headers==2.4.0
|
||||
django-crum==0.7.2
|
||||
django-extensions==2.0.0
|
||||
django-jsonfield==1.2.0
|
||||
django-oauth-toolkit==1.1.3
|
||||
django-polymorphic==2.0.2
|
||||
django-pglocks==1.0.2
|
||||
django-qsstats-magic==1.1.0
|
||||
django-radius==1.3.3
|
||||
django-solo==1.1.3
|
||||
django-split-settings==0.3.0
|
||||
django-taggit==0.22.2
|
||||
djangorestframework==3.9.4
|
||||
djangorestframework-yaml==1.0.3
|
||||
GitPython==2.1.11
|
||||
irc==16.2
|
||||
jinja2==2.10.1
|
||||
jsonschema==2.6.0
|
||||
Markdown==2.6.11 # used for formatting API help
|
||||
openshift==0.9.0
|
||||
ordereddict==1.1
|
||||
prometheus_client==0.6.0
|
||||
psutil==5.4.3
|
||||
psycopg2==2.8.2
|
||||
pygerduty==0.37.0
|
||||
pyparsing==2.2.0
|
||||
python-dateutil==2.7.2 # contains support for TZINFO= parsing
|
||||
python-memcached==1.59
|
||||
python-radius==1.0
|
||||
python3-saml==1.4.0
|
||||
social-auth-core==3.0.0
|
||||
social-auth-app-django==2.1.0
|
||||
requests==2.21.0
|
||||
requests-futures==0.9.7
|
||||
slackclient==1.1.2
|
||||
tacacs_plus==1.0
|
||||
twilio==6.10.4
|
||||
uWSGI==2.0.17
|
||||
uwsgitop==0.10.0
|
||||
pip==9.0.1
|
||||
setuptools==36.0.1
|
||||
ansible-runner
|
||||
ansiconv==1.0.0 # UPGRADE BLOCKER: from 2013, consider replacing instead of upgrading
|
||||
asgi-amqp>=1.1.4 # see library notes, related to channels 2
|
||||
azure-keyvault==1.1.0 # see UPGRADE BLOCKERs
|
||||
boto # replacement candidate https://github.com/ansible/awx/issues/2115
|
||||
channels==1.1.8 # UPGRADE BLOCKER: Last before backwards-incompatible channels 2 upgrade
|
||||
celery==4.3.0 # see library notes
|
||||
daphne==1.4.2 # UPGRADE BLOCKER: last before channels 2 but not pinned by other deps
|
||||
Django==2.2.7 # see UPGRADE BLOCKERs
|
||||
django-auth-ldap
|
||||
django-cors-headers
|
||||
django-crum
|
||||
django-extensions
|
||||
django-jsonfield==1.2.0 # see UPGRADE BLOCKERs
|
||||
django-oauth-toolkit==1.1.3 # see UPGRADE BLOCKERs
|
||||
django-polymorphic
|
||||
django-pglocks
|
||||
django-qsstats-magic
|
||||
django-radius==1.3.3 # FIX auth does not work with later versions
|
||||
django-solo
|
||||
django-split-settings
|
||||
django-taggit
|
||||
djangorestframework
|
||||
djangorestframework-yaml
|
||||
GitPython
|
||||
irc
|
||||
jinja2
|
||||
jsonschema
|
||||
Markdown # used for formatting API help
|
||||
openshift
|
||||
prometheus_client
|
||||
psycopg2
|
||||
pygerduty
|
||||
pyparsing
|
||||
python-memcached
|
||||
python-radius
|
||||
python3-saml
|
||||
social-auth-core==3.2.0 # see UPGRADE BLOCKERs
|
||||
social-auth-app-django==3.1.0 # see UPGRADE BLOCKERs
|
||||
requests
|
||||
requests-futures # see library notes
|
||||
slackclient==1.1.2 # see UPGRADE BLOCKERs
|
||||
tacacs_plus==1.0 # UPGRADE BLOCKER: auth does not work with later versions
|
||||
twilio
|
||||
uWSGI
|
||||
uwsgitop
|
||||
pip==19.3.1 # see UPGRADE BLOCKERs
|
||||
setuptools==42.0.1 # see UPGRADE BLOCKERs
|
||||
|
||||
@@ -1,135 +1,132 @@
|
||||
adal==1.2.1 # via msrestazure
|
||||
amqp==2.4.2 # via kombu
|
||||
adal==1.2.2 # via msrestazure
|
||||
amqp==2.5.2 # via kombu
|
||||
ansible-runner==1.4.4
|
||||
ansiconv==1.0.0
|
||||
appdirs==1.4.2
|
||||
argparse==1.4.0 # via uwsgitop
|
||||
asgi-amqp==1.1.4
|
||||
asgiref==1.1.2 # via asgi-amqp, channels, daphne
|
||||
asn1crypto==0.24.0 # via cryptography
|
||||
attrs==19.1.0 # via automat, service-identity, twisted
|
||||
autobahn==19.5.1 # via daphne
|
||||
automat==0.7.0 # via twisted
|
||||
azure-common==1.1.21 # via azure-keyvault
|
||||
attrs==19.3.0 # via automat, jsonschema, twisted
|
||||
autobahn==19.11.1 # via daphne
|
||||
automat==0.8.0 # via twisted
|
||||
azure-common==1.1.23 # via azure-keyvault
|
||||
azure-keyvault==1.1.0
|
||||
azure-nspkg==3.0.2 # via azure-keyvault
|
||||
billiard==3.6.0.0 # via celery
|
||||
boto==2.47.0
|
||||
billiard==3.6.1.0 # via celery
|
||||
boto==2.49.0
|
||||
cachetools==3.1.1 # via google-auth
|
||||
celery==4.3.0
|
||||
certifi==2019.3.9 # via kubernetes, msrest, requests
|
||||
cffi==1.12.3 # via cryptography
|
||||
certifi==2019.11.28 # via kubernetes, msrest, requests
|
||||
cffi==1.13.2 # via cryptography
|
||||
channels==1.1.8
|
||||
chardet==3.0.4 # via requests
|
||||
constantly==15.1.0 # via twisted
|
||||
cryptography==2.6.1 # via adal, azure-keyvault, pyopenssl, service-identity
|
||||
daphne==1.3.0
|
||||
defusedxml==0.5.0 # via python3-openid, python3-saml, social-auth-core
|
||||
cryptography==2.8 # via adal, autobahn, azure-keyvault
|
||||
daphne==1.4.2
|
||||
defusedxml==0.6.0 # via python3-openid, python3-saml, social-auth-core
|
||||
dictdiffer==0.8.0 # via openshift
|
||||
django-auth-ldap==1.7.0
|
||||
django-cors-headers==2.4.0
|
||||
django-crum==0.7.2
|
||||
django-extensions==2.0.0
|
||||
django-auth-ldap==2.1.0
|
||||
django-cors-headers==3.2.0
|
||||
django-crum==0.7.4
|
||||
django-extensions==2.2.5
|
||||
django-jsonfield==1.2.0
|
||||
django-oauth-toolkit==1.1.3
|
||||
django-pglocks==1.0.2
|
||||
django-polymorphic==2.0.2
|
||||
django-pglocks==1.0.3
|
||||
django-polymorphic==2.1.2
|
||||
django-qsstats-magic==1.1.0
|
||||
django-radius==1.3.3
|
||||
django-solo==1.1.3
|
||||
django-split-settings==0.3.0
|
||||
django-taggit==0.22.2
|
||||
django==2.2.4
|
||||
django-split-settings==1.0.0
|
||||
django-taggit==1.2.0
|
||||
django==2.2.7
|
||||
djangorestframework-yaml==1.0.3
|
||||
djangorestframework==3.9.4
|
||||
djangorestframework==3.10.3
|
||||
|
||||
future==0.16.0 # via django-radius
|
||||
gitdb2==2.0.5 # via gitpython
|
||||
gitpython==2.1.11
|
||||
google-auth==1.6.3 # via kubernetes
|
||||
gitdb2==2.0.6 # via gitpython
|
||||
gitpython==3.0.5
|
||||
google-auth==1.7.1 # via kubernetes
|
||||
hyperlink==19.0.0 # via twisted
|
||||
idna==2.8 # via hyperlink, requests, twisted
|
||||
idna==2.8 # via hyperlink, requests
|
||||
importlib-metadata==1.1.0 # via inflect, irc, jsonschema, kombu
|
||||
importlib-resources==1.0.2 # via jaraco.text
|
||||
incremental==17.5.0 # via twisted
|
||||
inflect==2.1.0 # via jaraco.itertools
|
||||
irc==16.2
|
||||
inflect==3.0.2 # via jaraco.itertools
|
||||
irc==17.1
|
||||
isodate==0.6.0 # via msrest, python3-saml
|
||||
jaraco.classes==2.0 # via jaraco.collections
|
||||
jaraco.collections==2.0 # via irc
|
||||
jaraco.collections==2.1 # via irc
|
||||
jaraco.functools==2.0 # via irc, jaraco.text, tempora
|
||||
jaraco.itertools==4.4.2 # via irc
|
||||
jaraco.logging==2.0 # via irc
|
||||
jaraco.stream==2.0 # via irc
|
||||
jaraco.text==3.0 # via irc, jaraco.collections
|
||||
jinja2==2.10.1
|
||||
jaraco.text==3.2.0 # via irc, jaraco.collections
|
||||
jinja2==2.10.3
|
||||
jsonpickle==1.2 # via asgi-amqp
|
||||
jsonschema==2.6.0
|
||||
kombu==4.5.0 # via asgi-amqp, celery
|
||||
kubernetes==9.0.0 # via openshift
|
||||
jsonschema==3.2.0
|
||||
kombu==4.6.6 # via asgi-amqp, celery
|
||||
kubernetes==10.0.1 # via openshift
|
||||
lockfile==0.12.2 # via python-daemon
|
||||
lxml==4.3.3 # via xmlsec
|
||||
markdown==2.6.11
|
||||
lxml==4.4.2 # via xmlsec
|
||||
markdown==3.1.1
|
||||
markupsafe==1.1.1 # via jinja2
|
||||
more-itertools==7.0.0 # via irc, jaraco.functools, jaraco.itertools
|
||||
more-itertools==8.0.0 # via irc, jaraco.functools, jaraco.itertools, zipp
|
||||
msgpack-python==0.5.6 # via asgi-amqp
|
||||
msrest==0.6.6 # via azure-keyvault, msrestazure
|
||||
msrestazure==0.6.0 # via azure-keyvault
|
||||
msrest==0.6.10 # via azure-keyvault, msrestazure
|
||||
msrestazure==0.6.2 # via azure-keyvault
|
||||
netaddr==0.7.19 # via pyrad
|
||||
oauthlib==3.0.1 # via django-oauth-toolkit, requests-oauthlib, social-auth-core
|
||||
openshift==0.9.0
|
||||
ordereddict==1.1
|
||||
pexpect==4.6.0 # via ansible-runner
|
||||
oauthlib==3.1.0 # via django-oauth-toolkit, requests-oauthlib, social-auth-core
|
||||
openshift==0.10.0
|
||||
pexpect==4.7.0 # via ansible-runner
|
||||
pkgconfig==1.5.1 # via xmlsec
|
||||
prometheus_client==0.6.0
|
||||
psutil==5.4.3
|
||||
psycopg2==2.8.2
|
||||
prometheus-client==0.7.1
|
||||
psutil==5.6.7 # via ansible-runner
|
||||
psycopg2==2.8.4
|
||||
ptyprocess==0.6.0 # via pexpect
|
||||
pyasn1-modules==0.2.5 # via google-auth, python-ldap, service-identity
|
||||
pyasn1==0.4.5 # via pyasn1-modules, python-ldap, rsa, service-identity
|
||||
pyasn1-modules==0.2.7 # via google-auth, python-ldap
|
||||
pyasn1==0.4.8 # via pyasn1-modules, python-ldap, rsa
|
||||
pycparser==2.19 # via cffi
|
||||
pygerduty==0.37.0
|
||||
pygerduty==0.38.2
|
||||
pyhamcrest==1.9.0 # via twisted
|
||||
pyjwt==1.7.1 # via adal, social-auth-core, twilio
|
||||
pyopenssl==19.0.0 # via twisted
|
||||
pyparsing==2.2.0
|
||||
pyrad==2.1 # via django-radius
|
||||
pysocks==1.7.0 # via twilio
|
||||
python-daemon==2.2.3 # via ansible-runner
|
||||
python-dateutil==2.7.2
|
||||
pyparsing==2.4.5
|
||||
pyrad==2.2 # via django-radius
|
||||
pyrsistent==0.15.6 # via jsonschema
|
||||
python-daemon==2.2.4 # via ansible-runner
|
||||
python-dateutil==2.8.1 # via adal, kubernetes
|
||||
python-ldap==3.2.0 # via django-auth-ldap
|
||||
python-memcached==1.59
|
||||
python-radius==1.0
|
||||
python-string-utils==0.6.0 # via openshift
|
||||
python3-openid==3.1.0 # via social-auth-core
|
||||
python3-saml==1.4.0
|
||||
python3-saml==1.9.0
|
||||
pytz==2019.3 # via celery, django, irc, tempora, twilio
|
||||
pyyaml==5.1 # via ansible-runner, djangorestframework-yaml, kubernetes
|
||||
requests-futures==0.9.7
|
||||
requests-oauthlib==1.2.0 # via kubernetes, msrest, social-auth-core
|
||||
requests==2.21.0
|
||||
pyyaml==5.2 # via ansible-runner, djangorestframework-yaml, kubernetes
|
||||
requests-futures==1.0.0
|
||||
requests-oauthlib==1.3.0 # via kubernetes, msrest, social-auth-core
|
||||
requests==2.22.0
|
||||
rsa==4.0 # via google-auth
|
||||
ruamel.yaml==0.15.99 # via openshift
|
||||
service-identity==18.1.0 # via twisted
|
||||
simplejson==3.16.0 # via uwsgitop
|
||||
six==1.12.0 # via ansible-runner, asgi-amqp, asgiref, autobahn, automat, cryptography, django-extensions, google-auth, irc, isodate, jaraco.classes, jaraco.collections, jaraco.itertools, jaraco.logging, jaraco.stream, kubernetes, openshift, pygerduty, pyhamcrest, pyopenssl, pyrad, python-dateutil, python-memcached, slackclient, social-auth-app-django, social-auth-core, tacacs-plus, tempora, twilio, txaio, websocket-client
|
||||
ruamel.yaml.clib==0.2.0 # via ruamel.yaml
|
||||
ruamel.yaml==0.16.5 # via openshift
|
||||
six==1.13.0 # via ansible-runner, asgi-amqp, asgiref, autobahn, automat, cryptography, django-extensions, google-auth, isodate, jaraco.classes, jaraco.collections, jaraco.itertools, jaraco.logging, jaraco.stream, jaraco.text, jsonschema, kubernetes, openshift, pygerduty, pyhamcrest, pyrad, pyrsistent, python-dateutil, python-memcached, slackclient, social-auth-app-django, social-auth-core, tacacs-plus, tempora, twilio, txaio, websocket-client
|
||||
slackclient==1.1.2
|
||||
smmap2==2.0.5 # via gitdb2
|
||||
social-auth-app-django==2.1.0
|
||||
social-auth-core==3.0.0
|
||||
social-auth-app-django==3.1.0
|
||||
social-auth-core==3.2.0
|
||||
sqlparse==0.3.0 # via django
|
||||
tacacs_plus==1.0
|
||||
tempora==1.14.1 # via irc, jaraco.logging
|
||||
twilio==6.10.4
|
||||
twisted[tls]==19.2.0
|
||||
twilio==6.33.1
|
||||
twisted==19.10.0 # via daphne
|
||||
txaio==18.8.1 # via autobahn
|
||||
typing==3.6.6 # via django-extensions
|
||||
urllib3==1.24.3 # via kubernetes, requests
|
||||
uwsgi==2.0.17
|
||||
uwsgitop==0.10.0
|
||||
urllib3==1.25.7 # via kubernetes, requests
|
||||
uwsgi==2.0.18
|
||||
uwsgitop==0.11
|
||||
vine==1.3.0 # via amqp, celery
|
||||
websocket-client==0.56.0 # via kubernetes, slackclient
|
||||
xmlsec==1.3.3 # via python3-saml
|
||||
zope.interface==4.6.0 # via twisted
|
||||
zipp==0.6.0 # via importlib-metadata
|
||||
zope.interface==4.7.1 # via twisted
|
||||
|
||||
# The following packages are considered to be unsafe in a requirements file:
|
||||
pip==9.0.1
|
||||
setuptools==36.0.1
|
||||
pip==19.3.1
|
||||
setuptools==42.0.1
|
||||
wheel==0.33.6
|
||||
|
||||
@@ -53,8 +53,8 @@ ovirt-engine-sdk-python==4.3.0 # minimum set inside Ansible facts module requ
|
||||
pycurl==7.43.0.1 # higher versions will not install without SSL backend specified
|
||||
# AWX usage
|
||||
psutil==5.4.3 # same as AWX requirement
|
||||
setuptools==36.0.1
|
||||
pip==9.0.1
|
||||
pip==19.3.1 # see upgrade blockers
|
||||
setuptools==42.0.1 # see upgrade blockers
|
||||
# VMware
|
||||
pyvmomi==6.7.3
|
||||
# WinRM
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
adal==1.2.1 # via msrestazure
|
||||
adal==1.2.2 # via msrestazure
|
||||
apache-libcloud==2.5.0
|
||||
appdirs==1.4.3 # via openstacksdk
|
||||
applicationinsights==0.11.9 # via azure-cli-core
|
||||
argcomplete==1.9.5 # via azure-cli-core, knack
|
||||
asn1crypto==0.24.0 # via cryptography
|
||||
argcomplete==1.10.3 # via azure-cli-core, knack
|
||||
azure-cli-core==2.0.35
|
||||
azure-cli-nspkg==3.0.2
|
||||
azure-common==1.1.11
|
||||
@@ -39,82 +38,83 @@ azure-mgmt-web==0.41.0
|
||||
azure-nspkg==2.0.0
|
||||
azure-storage==0.35.1
|
||||
backports.ssl-match-hostname==3.5.0.1
|
||||
bcrypt==3.1.6 # via paramiko
|
||||
bcrypt==3.1.7 # via paramiko
|
||||
boto3==1.9.223
|
||||
boto==2.47.0
|
||||
botocore==1.12.223 # via boto3, s3transfer
|
||||
cachetools==3.1.0 # via google-auth
|
||||
certifi==2019.3.9 # via msrest, requests
|
||||
cffi==1.12.3 # via bcrypt, cryptography, pynacl
|
||||
botocore==1.12.253 # via boto3, s3transfer
|
||||
cachetools==3.1.1 # via google-auth
|
||||
certifi==2019.11.28 # via msrest, requests
|
||||
cffi==1.13.2 # via bcrypt, cryptography, pynacl
|
||||
chardet==3.0.4 # via requests
|
||||
colorama==0.4.1 # via azure-cli-core, knack
|
||||
cryptography==2.6.1 # via adal, azure-keyvault, azure-storage, openstacksdk, paramiko, pyopenssl, requests-credssp, requests-kerberos, requests-ntlm
|
||||
decorator==4.4.0 # via dogpile.cache, openstacksdk
|
||||
docutils==0.14 # via botocore
|
||||
dogpile.cache==0.7.1 # via openstacksdk
|
||||
cryptography==2.8 # via adal, azure-keyvault, azure-storage, openstacksdk, paramiko, pyopenssl, requests-credssp, requests-kerberos, requests-ntlm
|
||||
decorator==4.4.1 # via dogpile.cache, openstacksdk
|
||||
docutils==0.15.2 # via botocore
|
||||
dogpile.cache==0.9.0 # via openstacksdk
|
||||
enum34==1.1.6; python_version < "3" # via cryptography, knack, msrest, ovirt-engine-sdk-python
|
||||
futures==3.2.0; python_version < "3" # via openstacksdk, s3transfer
|
||||
futures==3.3.0; python_version < "3" # via openstacksdk, s3transfer
|
||||
google-auth==1.6.2
|
||||
humanfriendly==4.18 # via azure-cli-core
|
||||
idna==2.8 # via requests
|
||||
ipaddress==1.0.22; python_version < "3" # via cryptography, openstacksdk
|
||||
ipaddress==1.0.23; python_version < "3" # via cryptography, openstacksdk
|
||||
iso8601==0.1.12 # via keystoneauth1, openstacksdk
|
||||
isodate==0.6.0 # via msrest
|
||||
jinja2==2.10.1
|
||||
jmespath==0.9.4 # via azure-cli-core, boto3, botocore, knack, openstacksdk
|
||||
jsonpatch==1.23 # via openstacksdk
|
||||
jsonpatch==1.24 # via openstacksdk
|
||||
jsonpointer==2.0 # via jsonpatch
|
||||
keystoneauth1==3.14.0 # via openstacksdk
|
||||
keystoneauth1==3.18.0 # via openstacksdk
|
||||
knack==0.3.3 # via azure-cli-core
|
||||
lxml==4.3.3 # via ncclient, pyvmomi
|
||||
lxml==4.4.2 # via ncclient
|
||||
markupsafe==1.1.1 # via jinja2
|
||||
monotonic==1.5; python_version < "3" # via humanfriendly
|
||||
msrest==0.6.1
|
||||
msrestazure==0.5.0
|
||||
munch==2.3.2 # via openstacksdk
|
||||
munch==2.5.0 # via openstacksdk
|
||||
ncclient==0.6.3
|
||||
netaddr==0.7.19
|
||||
netifaces==0.10.9 # via openstacksdk
|
||||
ntlm-auth==1.3.0 # via requests-credssp, requests-ntlm
|
||||
oauthlib==3.0.1 # via requests-oauthlib
|
||||
ntlm-auth==1.4.0 # via requests-credssp, requests-ntlm
|
||||
oauthlib==3.1.0 # via requests-oauthlib
|
||||
openstacksdk==0.31.1
|
||||
os-service-types==1.7.0 # via keystoneauth1, openstacksdk
|
||||
ovirt-engine-sdk-python==4.3.0
|
||||
packaging==19.0
|
||||
paramiko==2.6.0 # via azure-cli-core, ncclient
|
||||
pbr==5.2.0 # via keystoneauth1, openstacksdk, os-service-types, stevedore
|
||||
packaging==19.2
|
||||
paramiko==2.7.0 # via azure-cli-core, ncclient
|
||||
pbr==5.4.4 # via keystoneauth1, openstacksdk, os-service-types, stevedore
|
||||
psutil==5.4.3
|
||||
pyasn1-modules==0.2.5 # via google-auth
|
||||
pyasn1==0.4.5 # via pyasn1-modules, requests-credssp, rsa
|
||||
pyasn1-modules==0.2.7 # via google-auth
|
||||
pyasn1==0.4.8 # via pyasn1-modules, requests-credssp, rsa
|
||||
pycparser==2.19 # via cffi
|
||||
pycurl==7.43.0.1
|
||||
pygments==2.3.1 # via azure-cli-core, knack
|
||||
pygments==2.5.2 # via azure-cli-core, knack
|
||||
pyjwt==1.7.1 # via adal, azure-cli-core
|
||||
pykerberos==1.2.1 # via requests-kerberos
|
||||
pynacl==1.3.0 # via paramiko
|
||||
pyopenssl==19.0.0 # via azure-cli-core, pyvmomi, requests-credssp
|
||||
pyparsing==2.4.0 # via packaging
|
||||
python-dateutil==2.6.1 # via adal, azure-storage, botocore
|
||||
pyopenssl==19.1.0 # via azure-cli-core, requests-credssp
|
||||
pyparsing==2.4.5 # via packaging
|
||||
python-dateutil==2.8.1 # via adal, azure-storage, botocore
|
||||
pyvmomi==6.7.3
|
||||
pywinrm[kerberos]==0.3.0
|
||||
pyyaml==5.1 # via azure-cli-core, knack, openstacksdk
|
||||
pyyaml==5.2 # via azure-cli-core, knack, openstacksdk
|
||||
requests-credssp==1.0.2
|
||||
requests-kerberos==0.12.0 # via pywinrm
|
||||
requests-ntlm==1.1.0 # via pywinrm
|
||||
requests-oauthlib==1.2.0 # via msrest
|
||||
requests==2.21.0
|
||||
requests-oauthlib==1.3.0 # via msrest
|
||||
requests==2.22.0
|
||||
requestsexceptions==1.4.0 # via openstacksdk
|
||||
rsa==4.0 # via google-auth
|
||||
s3transfer==0.2.1 # via boto3
|
||||
selectors2==2.0.1 # via ncclient
|
||||
six==1.12.0 # via azure-cli-core, bcrypt, cryptography, google-auth, isodate, keystoneauth1, knack, munch, ncclient, openstacksdk, ovirt-engine-sdk-python, packaging, pynacl, pyopenssl, python-dateutil, pyvmomi, pywinrm, requests-credssp, stevedore
|
||||
stevedore==1.30.1 # via keystoneauth1
|
||||
six==1.13.0 # via azure-cli-core, bcrypt, cryptography, google-auth, isodate, keystoneauth1, knack, munch, ncclient, openstacksdk, ovirt-engine-sdk-python, packaging, pynacl, pyopenssl, python-dateutil, pyvmomi, pywinrm, requests-credssp, stevedore
|
||||
stevedore==1.31.0 # via keystoneauth1
|
||||
tabulate==0.8.2 # via azure-cli-core, knack
|
||||
typing==3.6.6; python_version < "3" # via msrest
|
||||
urllib3==1.24.3 # via botocore, requests
|
||||
wheel==0.30.0 # via azure-cli-core
|
||||
typing==3.7.4.1; python_version < "3" # via msrest
|
||||
urllib3==1.25.7 # via botocore, requests
|
||||
# wheel==0.30.0 # via azure-cli-core
|
||||
xmltodict==0.12.0 # via pywinrm
|
||||
|
||||
# The following packages are considered to be unsafe in a requirements file:
|
||||
pip==9.0.1
|
||||
setuptools==36.0.1
|
||||
pip==19.3.1
|
||||
setuptools==42.0.1
|
||||
wheel==0.33.6
|
||||
|
||||
@@ -5,3 +5,5 @@ pytest-runner
|
||||
isort
|
||||
virtualenv
|
||||
m2r
|
||||
twine # from python-daemon
|
||||
wheel==0.33.6
|
||||
|
||||
Reference in New Issue
Block a user