Merge branch '2018.3' into merge-2019.2

Conflicts:
   - doc/topics/installation/freebsd.rst
This commit is contained in:
Gareth J. Greenaway 2019-03-25 13:42:28 -07:00
commit 11cd485a8b
No known key found for this signature in database
GPG Key ID: 10B62F8A7CAD7A41
43 changed files with 1991 additions and 118 deletions

View File

@ -66,7 +66,7 @@ clean:
# User-friendly check for sphinx-build
check_sphinx-build:
@which $(SPHINXBUILD) >/dev/null 2>&1 || (echo "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)" >&2; false)
@which $(SPHINXBUILD) >/dev/null 2>&1 || (echo "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://www.sphinx-doc.org/en/master/)" >&2; false)
html: check_sphinx-build translations
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 101 KiB

View File

@ -5102,6 +5102,33 @@ This can be used to control logging levels more specifically. See also
:conf_log:`log_granular_levels`.
.. conf_master:: log_rotate_max_bytes
``log_rotate_max_bytes``
------------------------
Default: ``0``
The maximum number of bytes a single log file may contain before it is rotated.
A value of 0 disables this feature. Currently only supported on Windows. On
other platforms, use an external tool such as 'logrotate' to manage log files.
:conf_log:`log_rotate_max_bytes`
.. conf_master:: log_rotate_backup_count
``log_rotate_backup_count``
---------------------------
Default: ``0``
The number of backup files to keep when rotating log files. Only used if
:conf_master:`log_rotate_max_bytes` is greater than 0. Currently only supported
on Windows. On other platforms, use an external tool such as 'logrotate' to
manage log files.
:conf_log:`log_rotate_backup_count`
.. _node-groups:
Node Groups

View File

@ -3037,6 +3037,34 @@ Default: ``{}``
This can be used to control logging levels more specifically. See also
:conf_log:`log_granular_levels`.
.. conf_minion:: log_rotate_max_bytes
``log_rotate_max_bytes``
------------------------
Default: ``0``
The maximum number of bytes a single log file may contain before it is rotated.
A value of 0 disables this feature. Currently only supported on Windows. On
other platforms, use an external tool such as 'logrotate' to manage log files.
:conf_log:`log_rotate_max_bytes`
.. conf_minion:: log_rotate_backup_count
``log_rotate_backup_count``
---------------------------
Default: ``0``
The number of backup files to keep when rotating log files. Only used if
:conf_minion:`log_rotate_max_bytes` is greater than 0. Currently only supported
on Windows. On other platforms, use an external tool such as 'logrotate' to
manage log files.
:conf_log:`log_rotate_backup_count`
.. conf_minion:: zmq_monitor
``zmq_monitor``

View File

@ -305,7 +305,7 @@ the minion. The ``beacon`` function therefore cannot block and should be as
lightweight as possible. The ``beacon`` also must return a list of dicts, each
dict in the list will be translated into an event on the master.
Beacons may also choose to implement a ``__validate__`` function which
Beacons may also choose to implement a ``validate`` function which
takes the beacon configuration as an argument and ensures that it
is valid prior to continuing. This function is called automatically
by the Salt loader when a beacon is loaded.

View File

@ -100,7 +100,8 @@ Fork a Repo Guide_>`_ and is well worth reading.
.. note::
If your change fixes a bug or implements a feature already filed in the
`issue tracker <GitHub issue tracker>`_, be sure to reference the issue
`issue tracker`_, be sure to
`reference the issue <https://help.github.com/en/articles/closing-issues-using-keywords>`_
number in the commit message body.
.. code-block:: bash
@ -541,7 +542,7 @@ Script, see the Bootstrap Script's `Contributing Guidelines`_.
.. _`saltstack/salt`: https://github.com/saltstack/salt
.. _`GitHub Fork a Repo Guide`: https://help.github.com/articles/fork-a-repo
.. _`GitHub issue tracker`: https://github.com/saltstack/salt/issues
.. _`issue tracker`: https://github.com/saltstack/salt/issues
.. _`Fork saltstack/salt`: https://github.com/saltstack/salt/fork
.. _'Git resources`: https://help.github.com/articles/good-resources-for-learning-git-and-github/
.. _`Closing issues via commit message`: https://help.github.com/articles/closing-issues-via-commit-messages

View File

@ -13,7 +13,7 @@ broadly, most of the narrative documentation is contained within the
:blob:`doc` subdirectory and most of the reference and API documentation is
written inline with Salt's Python code and extracted using a Sphinx extension.
.. _`Sphinx`: http://sphinx-doc.org/
.. _`Sphinx`: https://www.sphinx-doc.org/en/master/
.. _docs-style:
@ -187,7 +187,7 @@ Link to :ref:`glossary entries <glossary>` using the `term role`_. A
cross-reference should be added the first time a Salt-specific term is used in
a document.
.. _`term role`: http://sphinx-doc.org/markup/inline.html#role-term
.. _`term role`: https://www.sphinx-doc.org/en/master/glossary.html#term-role
.. code-block:: restructuredtext
@ -206,7 +206,7 @@ occasionally useful to manually add items to the index.
One method is to use the `index directive`_ above the document or section that
should appear in the index.
.. _`index directive`: http://sphinx-doc.org/markup/misc.html#directive-index
.. _`index directive`: https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html?highlight=index%20directive#index-generating-markup
.. code-block:: restructuredtext
@ -217,7 +217,7 @@ Another method is to use the `index role`_ inline with the text that should
appear in the index. The index entry is created and the target text is left
otherwise intact.
.. _`index role`: http://sphinx-doc.org/markup/misc.html#role-index
.. _`index role`: http://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#role-index
.. code-block:: restructuredtext
@ -252,7 +252,7 @@ to survive document renames or movement.
Note, the ``:doc:`` role should *not* be used to link documents together.
.. _`ref role`: http://sphinx-doc.org/markup/inline.html#role-ref
.. _`ref role`: https://www.sphinx-doc.org/en/master/usage/restructuredtext/roles.html#role-ref
.. _docs-ref-modules:

View File

@ -283,7 +283,9 @@ Change to salt documentation directory, then:
:strong:`text`.
- The docs then are built within the :strong:`docs/_build/` folder. To update
the docs after making changes, run ``make`` again.
- The docs use `reStructuredText <http://sphinx-doc.org/rest.html>`_ for markup.
- The docs use `reStructuredText
<https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html>`_
for markup.
See a live demo at http://rst.ninjs.org/.
- The help information on each module or state is culled from the python code
that runs for that piece. Find them in ``salt/modules/`` or ``salt/states/``.

View File

@ -188,7 +188,7 @@ The key thing to remember is the left-most section of the diagram. Salt's
nature is to have a minion connect to a master, then the master may control
the minion. However, for proxy minions, the target device cannot run a minion.
After the proxy minion is started and initiates its connection to the 'dumb'
After the proxy minion is started and initiates its connection to the
device, it connects back to the salt-master and for all intents and purposes
looks like just another minion to the Salt master.
@ -220,23 +220,23 @@ based on the diagram above:
.. code-block:: yaml
base:
dumbdevice1:
- dumbdevice1
dumbdevice2:
- dumbdevice2
dumbdevice3:
- dumbdevice3
dumbdevice4:
- dumbdevice4
dumbdevice5:
- dumbdevice5
dumbdevice6:
- dumbdevice6
dumbdevice7:
- dumbdevice7
net-device1:
- net-device1
net-device2:
- net-device2
net-device3:
- net-device3
i2c-device4:
- i2c-device4
i2c-device5:
- i2c-device5
433wireless-device6:
- 433wireless-device6
smsgate-device7:
- device7
``/srv/pillar/dumbdevice1.sls``
``/srv/pillar/net-device1.sls``
.. code-block:: yaml
@ -247,7 +247,7 @@ based on the diagram above:
passwd: letmein
``/srv/pillar/dumbdevice2.sls``
``/srv/pillar/net-device2.sls``
.. code-block:: yaml
@ -258,7 +258,7 @@ based on the diagram above:
passwd: letmein
``/srv/pillar/dumbdevice3.sls``
``/srv/pillar/net-device3.sls``
.. code-block:: yaml
@ -269,7 +269,7 @@ based on the diagram above:
passwd: letmein
``/srv/pillar/dumbdevice4.sls``
``/srv/pillar/i2c-device4.sls``
.. code-block:: yaml
@ -278,7 +278,7 @@ based on the diagram above:
i2c_address: 1
``/srv/pillar/dumbdevice5.sls``
``/srv/pillar/i2c-device5.sls``
.. code-block:: yaml
@ -287,7 +287,7 @@ based on the diagram above:
i2c_address: 2
``/srv/pillar/dumbdevice6.sls``
``/srv/pillar/433wireless-device6.sls``
.. code-block:: yaml
@ -295,7 +295,7 @@ based on the diagram above:
proxytype: 433mhz_wireless
``/srv/pillar/dumbdevice7.sls``
``/srv/pillar/smsgate-device7.sls``
.. code-block:: yaml
@ -309,18 +309,18 @@ the type of device that the proxy-minion is managing.
In the above example
- dumbdevices 1, 2, and 3 are network switches that have a management
- net-devices 1, 2, and 3 are network switches that have a management
interface available at a particular IP address.
- dumbdevices 4 and 5 are very low-level devices controlled over an i2c bus.
- i2c-devices 4 and 5 are very low-level devices controlled over an i2c bus.
In this case the devices are physically connected to machine
'minioncontroller2', and are addressable on the i2c bus at their respective
i2c addresses.
- dumbdevice6 is a 433 MHz wireless transmitter, also physically connected to
- 433wireless-device6 is a 433 MHz wireless transmitter, also physically connected to
minioncontroller2
- dumbdevice7 is an SMS gateway connected to machine minioncontroller3 via a
- smsgate-device7 is an SMS gateway connected to machine minioncontroller3 via a
serial port.
Because of the way pillar works, each of the salt-proxy processes that fork off the

View File

@ -7,9 +7,12 @@ Nox configuration script
'''
# Import Python libs
from __future__ import absolute_import, unicode_literals, print_function
import os
import sys
import json
import pprint
if __name__ == '__main__':
sys.stderr.write('Do not execute this file directly. Use nox instead, it will know how to handle this file\n')
@ -22,9 +25,6 @@ import nox
# Global Path Definitions
REPO_ROOT = os.path.abspath(os.path.dirname(__file__))
SITECUSTOMIZE_DIR = os.path.join(REPO_ROOT, 'tests', 'support', 'coverage')
# We can't just import salt because if this is running under a frozen nox, there
# will be no salt to import
IS_WINDOWS = sys.platform.lower().startswith('win')
REQUIREMENTS_OVERRIDES = {
None: [
@ -44,6 +44,7 @@ nox.options.reuse_existing_virtualenvs = True
# Don't fail on missing interpreters
nox.options.error_on_missing_interpreters = False
def _create_ci_directories():
for dirname in ('logs', 'coverage', 'xml-unittests-output'):
path = os.path.join(REPO_ROOT, 'artifacts', dirname)
@ -51,42 +52,46 @@ def _create_ci_directories():
os.makedirs(path)
def _install_requirements_overrides(session, *extra_requirements):
session.install('distro')
output = session.run('distro', '-j', silent=True)
distro_data = json.loads(output.strip())
requirements_overrides = REQUIREMENTS_OVERRIDES[None]
requirements_overrides.extend(
REQUIREMENTS_OVERRIDES.get(
'{id}-{version}'.format(**distro_data),
[]
)
)
if requirements_overrides:
for requirement in requirements_overrides:
session.install(requirement)
def _install_requirements(session, *extra_requirements):
_install_requirements_overrides(session)
# Install requirements
_requirements_files = [
os.path.join(REPO_ROOT, 'requirements', 'pytest.txt')
]
if sys.platform.startswith('linux'):
requirements_files = [
os.path.join(REPO_ROOT, 'requirements', 'tests.txt')
distro_requirements = None
if not IS_WINDOWS:
# The distro package doesn't output anything for Windows
session.install('distro')
output = session.run('distro', '-j', silent=True)
distro = json.loads(output.strip())
session.log('Distro information:\n%s', pprint.pformat(distro))
distro_keys = [
'{id}-{version}'.format(**distro),
'{id}-{version_parts[major]}'.format(**distro)
]
elif sys.platform.startswith('win'):
requirements_files = [
os.path.join(REPO_ROOT, 'pkg', 'windows', 'req.txt'),
]
elif sys.platform.startswith('darwin'):
requirements_files = [
os.path.join(REPO_ROOT, 'pkg', 'osx', 'req.txt'),
os.path.join(REPO_ROOT, 'pkg', 'osx', 'req_ext.txt'),
for distro_key in distro_keys:
_distro_requirements = os.path.join(REPO_ROOT, 'requirements', 'static', '{}.txt'.format(distro_key))
if os.path.exists(_distro_requirements):
distro_requirements = _distro_requirements
break
if distro_requirements is not None:
_requirements_files = [distro_requirements]
requirements_files = []
else:
_requirements_files = [
os.path.join(REPO_ROOT, 'requirements', 'pytest.txt')
]
if sys.platform.startswith('linux'):
requirements_files = [
os.path.join(REPO_ROOT, 'requirements', 'tests.txt')
]
elif sys.platform.startswith('win'):
requirements_files = [
os.path.join(REPO_ROOT, 'pkg', 'windows', 'req.txt'),
]
elif sys.platform.startswith('darwin'):
requirements_files = [
os.path.join(REPO_ROOT, 'pkg', 'osx', 'req.txt'),
os.path.join(REPO_ROOT, 'pkg', 'osx', 'req_ext.txt'),
]
while True:
if not requirements_files:
@ -122,7 +127,7 @@ def _install_requirements(session, *extra_requirements):
def _run_with_coverage(session, *test_cmd):
session.install('coverage')
session.install('coverage==4.5.3')
session.run('coverage', 'erase')
python_path_env_var = os.environ.get('PYTHONPATH') or None
if python_path_env_var is None:
@ -144,12 +149,11 @@ def _run_with_coverage(session, *test_cmd):
@nox.parametrize('coverage', [False, True])
def runtests(session, coverage):
# Install requirements
_install_requirements(session, 'unittest-xml-reporting')
_install_requirements(session, 'unittest-xml-reporting<2.4.0')
# Create required artifacts directories
_create_ci_directories()
cmd_args = [
'-v',
'--tests-logfile={}'.format(
os.path.join(REPO_ROOT, 'artifacts', 'logs', 'runtests.log')
)
@ -176,7 +180,7 @@ def pytest(session, coverage):
),
'--no-print-logs',
'-ra',
'-sv'
'-s'
] + session.posargs
if coverage is True:

View File

@ -2,7 +2,7 @@ Jinja2
# This should be changed to msgpack-python for Packages
# msgpack-python>0.3,!=0.5.5
msgpack>=0.5,!=0.5.5
PyYAML
PyYAML<5.1
MarkupSafe
requests>=1.0.0
tornado>=4.2.1,<6.0; python_version < '3'

View File

@ -0,0 +1,14 @@
What Is This All About
======================
This directory will contain platform specific requirements(and the requirements
of each requirements) locked to the versions used as if the testing environment
was setup using the salt-jenkins states.
The purpose of this is to ease the transition to `nox` and golden images where
only binary system packages are installed on the golden image and `nox`
installs the python dependencies on virtualenv specifically created for the
test run.
This will also make sure we run the tests with the exact same dependencies
everytime.

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython<2.0.9
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
supervisor; python_version < '3'
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,124 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/centos-6.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/centos-6.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
bcrypt==3.1.6 # via paramiko
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb==0.6.4 # via gitpython
gitpython==2.0.8
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
meld3==1.0.2 # via supervisor
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.4.2 # via junos-eznc, ncclient, scp
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap==0.9.0 # via gitdb
strict-rfc3339==0.7
supervisor==3.3.5 ; python_version < "3"
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
supervisor; python_version < '3'
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,124 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/centos-7.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/centos-7.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
bcrypt==3.1.6 # via paramiko
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
meld3==1.0.2 # via supervisor
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.4.2 # via junos-eznc, ncclient, scp
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
supervisor==3.3.5 ; python_version < "3"
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
paramiko==2.1.2
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,120 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/debian-8.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/debian-8.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.1.2
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
paramiko==2.1.2
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,120 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/debian-9.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/debian-9.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.1.2
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,36 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,122 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/fedora-28.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/fedora-28.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
bcrypt==3.1.6 # via paramiko
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.4.2 # via junos-eznc, ncclient, scp
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,36 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,122 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/fedora-29.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/fedora-29.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
bcrypt==3.1.6 # via paramiko
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.4.2 # via junos-eznc, ncclient, scp
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pynacl==1.3.0 # via paramiko
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via bcrypt, cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pynacl, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,38 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
certifi
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
hgtools
ioflo
jsonschema<=2.6.0
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
setuptools-scm
strict_rfc3339
supervisor; python_version < '3'
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,115 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/opensuse-42.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/opensuse-42.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
hgtools==8.1.1
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
markupsafe==1.1.1
meld3==1.0.2 # via supervisor
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
setproctitle==1.1.10
setuptools-scm==3.2.0
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, more-itertools, moto, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
supervisor==3.3.5 ; python_version < "3"
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
certifi
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
hgtools
ioflo
jsonschema<=2.6.0
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
setuptools-scm
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,113 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/opensuse-leap-15.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/opensuse-leap-15.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
hgtools==8.1.1
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
setproctitle==1.1.10
setuptools-scm==3.2.0
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, kubernetes, more-itertools, moto, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
paramiko==2.1.2
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,120 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/ubuntu-14.04.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/ubuntu-14.04.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.1.2
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
paramiko==2.1.2
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,120 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/ubuntu-16.04.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/ubuntu-16.04.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.1.2
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -0,0 +1,37 @@
# This is a compilation of requirements installed on salt-jenkins git.salt state run
apache-libcloud==1.0.0
boto3
boto>=2.46.0
cffi
cherrypy==17.3.0
dnspython
docker
futures>=2.0; python_version < '3.0'
GitPython
ioflo
jsonschema<=2.6.0
junos-eznc
jxmlease
keyring==5.7.1
kubernetes<4.0
mock<1.1.0
more-itertools==5.0.0
moto
msgpack-python >= 0.4.2, != 0.5.5
paramiko==2.1.2
psutil
pycrypto>=2.6.1
pyinotify
pyopenssl
python-etcd==0.4.2
python-gnupg
pyvmomi
pyzmq
requests
rfc3987
salttesting==2017.6.1
setproctitle
strict_rfc3339
timelib
tornado<5.0
virtualenv

View File

@ -0,0 +1,120 @@
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile -o requirements/static/ubuntu-18.04.txt requirements/zeromq.txt requirements/raet.txt requirements/pytest.txt requirements/static/ubuntu-18.04.in
#
apache-libcloud==1.0.0
asn1crypto==0.24.0 # via cryptography
atomicwrites==1.3.0 # via pytest
attrs==19.1.0 # via pytest
aws-xray-sdk==0.95 # via moto
backports-abc==0.5 # via tornado
backports.functools-lru-cache==1.5 # via cheroot, jaraco.functools
backports.ssl-match-hostname==3.7.0.1 # via docker, websocket-client
backports.tempfile==1.0 # via moto
backports.weakref==1.0.post1 # via backports.tempfile
boto3==1.9.115
boto==2.49.0
botocore==1.12.115 # via boto3, moto, s3transfer
cachetools==3.1.0 # via google-auth
certifi==2019.3.9 # via kubernetes, requests, tornado
cffi==1.12.2
chardet==3.0.4 # via requests
cheroot==6.5.4 # via cherrypy
cherrypy==17.3.0
contextlib2==0.5.5 # via cherrypy
cookies==2.2.1 # via responses
coverage==4.5.3 # via pytest-cov
cryptography==2.6.1 # via moto, paramiko, pyopenssl
dnspython==1.16.0
docker-pycreds==0.4.0 # via docker
docker==3.7.0
docutils==0.14 # via botocore
ecdsa==0.13 # via python-jose
enum34==1.1.6 # via cryptography, raet
funcsigs==1.0.2 # via pytest
functools32==3.2.3.post2 # via jsonschema
future==0.17.1 # via python-jose
futures==3.2.0 ; python_version < "3.0"
gitdb2==2.0.5 # via gitpython
gitpython==2.1.11
google-auth==1.6.3 # via kubernetes
idna==2.8 # via requests
ioflo==1.7.5
ipaddress==1.0.22 # via cryptography, docker, kubernetes
jaraco.functools==2.0 # via tempora
jinja2==2.10
jmespath==0.9.4 # via boto3, botocore
jsondiff==1.1.1 # via moto
jsonpickle==1.1 # via aws-xray-sdk
jsonschema==2.6.0
junos-eznc==2.2.0
jxmlease==1.0.1
keyring==5.7.1
kubernetes==3.0.0
libnacl==1.6.1
lxml==4.3.2 # via junos-eznc, ncclient
markupsafe==1.1.1
mock==1.0.1
more-itertools==5.0.0
moto==1.3.7
msgpack-python==0.5.6
msgpack==0.6.1
ncclient==0.6.3 # via junos-eznc
netaddr==0.7.19 # via junos-eznc
paramiko==2.1.2
pathlib2==2.3.3 # via pytest
pluggy==0.9.0 # via pytest
portend==2.3 # via cherrypy
psutil==5.6.1
py==1.8.0 # via pytest
pyaml==18.11.0 # via moto
pyasn1-modules==0.2.4 # via google-auth
pyasn1==0.4.5 # via paramiko, pyasn1-modules, rsa
pycparser==2.19 # via cffi
pycrypto==2.6.1
pycryptodome==3.7.3 # via python-jose
pyinotify==0.9.6
pyopenssl==19.0.0
pyserial==3.4 # via junos-eznc
pytest-cov==2.6.1
pytest-helpers-namespace==2019.1.8
pytest-salt-runtests-bridge==2019.1.30
pytest-salt==2018.12.8
pytest-tempdir==2018.8.11
pytest-timeout==1.3.3
pytest==4.3.1
python-dateutil==2.8.0 # via botocore, kubernetes, moto
python-etcd==0.4.2
python-gnupg==0.4.4
python-jose==2.0.2 # via moto
pytz==2018.9 # via moto, tempora
pyvmomi==6.7.1.2018.12
pyyaml==3.13
pyzmq==18.0.1 ; python_version != "3.4"
raet==0.6.8
requests==2.21.0
responses==0.10.5 # via moto
rfc3987==1.3.8
rsa==4.0 # via google-auth
s3transfer==0.2.0 # via boto3
salttesting==2017.6.1
scandir==1.10.0 # via pathlib2
scp==0.13.1 # via junos-eznc
selectors2==2.0.1 # via ncclient
setproctitle==1.1.10
singledispatch==3.4.0.3 # via tornado
six==1.12.0 # via cheroot, cherrypy, cryptography, docker, docker-pycreds, google-auth, junos-eznc, kubernetes, more-itertools, moto, ncclient, pathlib2, pyopenssl, pytest, python-dateutil, python-jose, pyvmomi, raet, responses, salttesting, singledispatch, tempora, websocket-client
smmap2==2.0.5 # via gitdb2
strict-rfc3339==0.7
tempora==1.14 # via portend
timelib==0.2.4
tornado==4.5.3 ; python_version < "3"
urllib3==1.24.1 # via botocore, kubernetes, python-etcd, requests
virtualenv==16.4.3
websocket-client==0.40.0 # via docker, kubernetes
werkzeug==0.14.1 # via moto
wrapt==1.11.1 # via aws-xray-sdk
xmltodict==0.12.0 # via moto
zc.lockfile==1.4 # via cherrypy

View File

@ -27,7 +27,7 @@ def __virtual__():
'only available on AIX systems.')
def __validate__(config):
def validate(config):
'''
Validate the beacon configuration
'''

View File

@ -1263,16 +1263,16 @@ class Cloud(object):
start = int(time.time())
while int(time.time()) < start + 60:
# We'll try every <timeout> seconds, up to a minute
mopts_ = salt.config.DEFAULT_MINION_OPTS
mopts_ = salt.config.DEFAULT_MASTER_OPTS
conf_path = '/'.join(self.opts['conf_file'].split('/')[:-1])
mopts_.update(
salt.config.minion_config(
salt.config.master_config(
os.path.join(conf_path,
'minion')
'master')
)
)
client = salt.client.get_local_client(mopts=self.opts)
client = salt.client.get_local_client(mopts=mopts_)
ret = client.cmd(
vm_['name'],

View File

@ -855,6 +855,13 @@ def _get_create_kwargs(skip_translate=None,
Take input kwargs and return a kwargs dict to pass to docker-py's
create_container() function.
'''
networks = kwargs.pop('networks', {})
if kwargs.get('network_mode', '') in networks:
networks = {kwargs['network_mode']: networks[kwargs['network_mode']]}
else:
networks = {}
kwargs = __utils__['docker.translate_input'](
salt.utils.docker.translate.container,
skip_translate=skip_translate,
@ -862,6 +869,9 @@ def _get_create_kwargs(skip_translate=None,
validate_ip_addrs=validate_ip_addrs,
**__utils__['args.clean_kwargs'](**kwargs))
if networks:
kwargs['networking_config'] = _create_networking_config(networks)
if client_args is None:
try:
client_args = get_client_args(['create_container', 'host_config'])
@ -2415,6 +2425,11 @@ def version():
return ret
def _create_networking_config(networks):
log.debug("creating networking config from {}".format(networks))
return _client_wrapper('create_networking_config',
{k: _client_wrapper('create_endpoint_config', **v) for k, v in networks.items()})
# Functions to manage containers
@_refresh_mine_cache
def create(image,

View File

@ -1692,6 +1692,8 @@ def running(name,
# value here.
configured_networks = networks
networks = _parse_networks(networks)
if networks:
kwargs['networks'] = networks
image_id = _resolve_image(ret, image, client_timeout)
except CommandExecutionError as exc:
ret['result'] = False

View File

@ -110,8 +110,23 @@ declarations. Each item in the ``names`` list receives its own individual state
``name`` and is converted into its own low-data structure. This is a convenient
way to manage several files with similar attributes.
There is more documentation about this feature in the :ref:`Names declaration
<names-declaration>` section of the :ref:`Highstate docs <states-highstate>`.
.. code-block:: yaml
salt_master_conf:
file.managed:
- user: root
- group: root
- mode: '0644'
- names:
- /etc/salt/master.d/master.conf:
- source: salt://saltmaster/master.conf
- /etc/salt/minion.d/minion-99.conf:
- source: salt://saltmaster/minion.conf
.. note::
There is more documentation about this feature in the :ref:`Names declaration
<names-declaration>` section of the :ref:`Highstate docs <states-highstate>`.
Special files can be managed via the ``mknod`` function. This function will
create and enforce the permissions on a special file. The function supports the
@ -5217,19 +5232,23 @@ def append(name,
if makedirs is True:
dirname = os.path.dirname(name)
if not __salt__['file.directory_exists'](dirname):
try:
_makedirs(name=name)
except CommandExecutionError as exc:
return _error(ret, 'Drive {0} is not mapped'.format(exc.message))
if __opts__['test']:
ret['comment'] = 'Directory {0} is set to be updated'.format(dirname)
ret['result'] = None
else:
if not __salt__['file.directory_exists'](dirname):
try:
_makedirs(name=name)
except CommandExecutionError as exc:
return _error(ret, 'Drive {0} is not mapped'.format(exc.message))
if salt.utils.platform.is_windows():
check_res, check_msg, ret['pchanges'] = _check_directory_win(dirname)
else:
check_res, check_msg, ret['pchanges'] = _check_directory(dirname)
if salt.utils.platform.is_windows():
check_res, check_msg, ret['pchanges'] = _check_directory_win(dirname)
else:
check_res, check_msg, ret['pchanges'] = _check_directory(dirname)
if not check_res:
return _error(ret, check_msg)
if not check_res:
return _error(ret, check_msg)
check_res, check_msg = _check_file(name)
if not check_res:

View File

@ -292,7 +292,7 @@ def private_key_managed(name,
x509.private_key_managed:
- bits: 4096
- new: True
{% if salt['file.file_exists']('/etc/pki/ca.key') -%}
{% if salt['file.file_exists']('/etc/pki/www.key') -%}
- prereq:
- x509: /etc/pki/www.crt
{%- endif %}

View File

@ -271,9 +271,10 @@ class CkMinions(object):
regex_match=False,
exact_match=False):
'''
Helper function to search for minions in master caches
If 'greedy' return accepted minions that matched by the condition or absend in the cache.
If not 'greedy' return the only minions have cache data and matched by the condition.
Helper function to search for minions in master caches If 'greedy',
then return accepted minions matched by the condition or those absent
from the cache. If not 'greedy' return the only minions have cache
data and matched by the condition.
'''
cache_enabled = self.opts.get('minion_data_cache', False)

View File

@ -17,6 +17,7 @@ from tests.support.helpers import destructiveTest, flaky, skip_if_not_root
# Import Salt libs
import salt.utils.files
import salt.utils.platform
import salt.modules.shadow
from salt.ext.six.moves import range
@ -27,11 +28,6 @@ class ShadowModuleTest(ModuleCase):
Validate the linux shadow system module
'''
def __init__(self, arg):
super(self.__class__, self).__init__(arg)
self._test_user = self.__random_string()
self._no_user = self.__random_string()
def setUp(self):
'''
Get current settings
@ -47,12 +43,9 @@ class ShadowModuleTest(ModuleCase):
**os_grain
)
)
def tearDown(self):
'''
Reset to original settings
'''
self.run_function('user.delete', [self._test_user])
self._test_user = self.__random_string()
self._no_user = self.__random_string()
self._password = salt.modules.shadow.gen_password('Password1234')
def __random_string(self, size=6):
'''
@ -68,6 +61,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.info
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -83,6 +77,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.del_password
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -98,6 +93,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_password
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -111,6 +107,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_inactdays
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -124,6 +121,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_maxdays
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -137,6 +135,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_mindays
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -151,6 +150,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.lock_password
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
self.run_function('shadow.set_password', [self._test_user, self._password])
@ -165,6 +165,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.lock_password
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
self.run_function('shadow.set_password', [self._test_user, self._password])
@ -179,6 +180,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_warndays
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -192,6 +194,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_date
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -205,6 +208,7 @@ class ShadowModuleTest(ModuleCase):
'''
Test shadow.set_exipre
'''
self.addCleanup(self.run_function, 'user.delete', [self._test_user])
self.run_function('user.add', [self._test_user])
# Correct Functionality
@ -221,16 +225,19 @@ class ShadowModuleTest(ModuleCase):
# saving shadow file
if not os.access("/etc/shadow", os.R_OK | os.W_OK):
self.skipTest('Could not save initial state of /etc/shadow')
with salt.utils.files.fopen('/etc/shadow', 'r') as sFile:
shadow = sFile.read()
def restore_shadow_file(contents):
# restore shadow file
with salt.utils.fopen('/etc/shadow', 'w') as wfh:
wfh.write(contents)
with salt.utils.files.fopen('/etc/shadow', 'r') as rfh:
contents = rfh.read()
self.addCleanup(restore_shadow_file, contents)
# set root password
self.assertTrue(self.run_function('shadow.set_password', ['root', self._password]))
self.assertEqual(
self.run_function('shadow.info', ['root'])['passwd'], self._password)
self.assertEqual(self.run_function('shadow.info', ['root'])['passwd'], self._password)
# delete root password
self.assertTrue(self.run_function('shadow.del_password', ['root']))
self.assertEqual(
self.run_function('shadow.info', ['root'])['passwd'], '')
#restore shadow file
with salt.utils.files.fopen('/etc/shadow', 'w') as sFile:
sFile.write(shadow)
self.assertEqual(self.run_function('shadow.info', ['root'])['passwd'], '')

View File

@ -595,6 +595,33 @@ class DockerContainerTestCase(ModuleCase, SaltReturnAssertsMixin):
self.assertTrue('VAR2=value2' in ret['Config']['Env'])
self.assertTrue('VAR3=value3' not in ret['Config']['Env'])
@with_network(subnet='10.247.197.96/27', create=True)
@container_name
def test_static_ip_one_network(self, container_name, net):
'''
Ensure that if a network is created and specified as network_mode, that is the only network, and
the static IP is applied.
'''
requested_ip = '10.247.197.100'
kwargs = {
'name': container_name,
'image': self.image,
'network_mode': net.name,
'networks': [{net.name: [{'ipv4_address': requested_ip}]}],
'shutdown_timeout': 1,
}
# Create a container
ret = self.run_state('docker_container.running', **kwargs)
self.assertSaltTrueReturn(ret)
inspect_result = self.run_function('docker.inspect_container',
[container_name])
connected_networks = inspect_result['NetworkSettings']['Networks']
self.assertEqual(list(connected_networks.keys()), [net.name])
self.assertEqual(inspect_result['HostConfig']['NetworkMode'], net.name)
self.assertEqual(connected_networks[net.name]['IPAMConfig']['IPv4Address'], requested_ip)
def _test_running(self, container_name, *nets):
'''
DRY function for testing static IPs