297 Commits e21fa5d518 ... 214ae8a9af

Autor SHA1 Mensagem Data
  ScriptAutomate 214ae8a9af Sync state_aggregate option in minion and master há 3 anos atrás
  Frode Gundersen 318502ab65 Update docs for latest há 3 anos atrás
  Pedro Algarvio 57dda7eec8 Drop Py2 and six on tests/unit/transport/test_zeromq.py há 3 anos atrás
  Pedro Algarvio daa2c62d42 Drop Py2 and six on tests/unit/transport/test_ipc.py há 3 anos atrás
  Pedro Algarvio 5bf545a447 Drop Py2 and six on tests/unit/transport/test_tcp.py há 3 anos atrás
  Pedro Algarvio 87cd649c3c Drop Py2 and six on tests/unit/serializers/test_serializers.py há 3 anos atrás
  Pedro Algarvio 1ee6a77bac Drop Py2 and six on tests/unit/modules/test_random_org.py há 3 anos atrás
  Pedro Algarvio 76caf43f9e Drop Py2 and six on tests/integration/states/test_renderers.py há 3 anos atrás
  Pedro Algarvio c792386881 Drop Py2 and six on tests/integration/states/test_lxd_container.py há 3 anos atrás
  Pedro Algarvio 8343dc4eb0 Drop Py2 and six on tests/integration/states/test_lxd.py há 3 anos atrás
  Pedro Algarvio e961a77087 Drop Py2 and six on tests/integration/ssh/test_state.py há 3 anos atrás
  Pedro Algarvio 2ebcb3cf81 Drop Py2 and six on tests/integration/runners/test_state.py há 3 anos atrás
  Pedro Algarvio c80bbbfb6f Drop Py2 and six on tests/integration/netapi/rest_cherrypy/test_app.py há 3 anos atrás
  Pedro Algarvio 1b9409a5c4 Drop Py2 and six on tests/integration/modules/test_win_ntp.py há 3 anos atrás
  Pedro Algarvio 00732ca457 Drop Py2 and six on tests/integration/modules/test_system.py há 3 anos atrás
  Pedro Algarvio 845590462d Drop Py2 and six on tests/integration/modules/test_status.py há 3 anos atrás
  Pedro Algarvio eb8d5f6224 Drop Py2 and six on tests/integration/modules/test_mac_timezone.py há 3 anos atrás
  Pedro Algarvio bd4b472eab Drop Py2 and six on tests/integration/modules/test_mac_power.py há 3 anos atrás
  Pedro Algarvio 4f28a20a5c Drop Py2 and six on tests/integration/modules/test_linux_shadow.py há 3 anos atrás
  Pedro Algarvio 86a5e043ff Drop Py2 and six on tests/integration/modules/test_grains.py há 3 anos atrás
  Pedro Algarvio d5644b9d30 Drop Py2 and six on tests/integration/logging/test_jid_logging.py há 3 anos atrás
  Pedro Algarvio c2b702b9b6 Drop Py2 and six on tests/integration/cli/test_grains.py há 3 anos atrás
  Pedro Algarvio a0086b167d Migrate `tests/integration/modules/test_saltutil.py` to PyTest há 3 anos atrás
  Pedro Algarvio 0a26d54489 Bump `pytest-salt-factories` to 0.99.0 há 3 anos atrás
  Cédric Bosdonnat 9433cb9929 Ensure virt.update stop_on_reboot is updated with its default value há 4 anos atrás
  Cédric Bosdonnat 0a3ebb7750 virt: expose live parameter in virt.defined state há 4 anos atrás
  Cédric Bosdonnat 9714bd00fa virt: add stop_on_reboot parameter in guest states and definition há 4 anos atrás
  Daniel A. Wozniak 135a22b005 Fix schedule test flakiness há 4 anos atrás
  Leo Davis 0dd9bdb0c3 Fix test_pkgrepo_01_managed and test_pkgrepo_02_absent for Ubuntu. há 4 anos atrás
  Pedro Algarvio 41aecaf1d5 Drop Py2 and six on salt/utils/state.py há 4 anos atrás
  Pedro Algarvio 15d5c89f0b Drop Py2 and six on salt/utils/mattermost.py há 4 anos atrás
  Pedro Algarvio 0afeb516f8 Drop Py2 and six on salt/states/postgres_initdb.py há 4 anos atrás
  Pedro Algarvio d4d0b38bdb Drop Py2 and six on salt/states/esxcluster.py há 4 anos atrás
  Pedro Algarvio 18f009117c Drop Py2 and six on salt/returners/slack_returner.py há 4 anos atrás
  Pedro Algarvio 77ecbd3e3d Drop Py2 and six on salt/modules/purefb.py há 4 anos atrás
  Pedro Algarvio 7a0abd7e49 Drop Py2 and six on salt/grains/napalm.py há 4 anos atrás
  David Murphy 68fc5dc880 Cleaned up left-over comments and is_junos há 4 anos atrás
  David Murphy 3480b15c61 debugging há 4 anos atrás
  David Murphy 960b8f83c5 Initial fixes for proxyid check if not junos há 4 anos atrás
  Sebastian Marsching 1148d34530 Fix bug in svn.latest (closes #59069). (#59071) há 4 anos atrás
  Alyssa Rock d3606be389 [DOCS]: Add topic describing Salt System Architecture for newbies (#58664) há 4 anos atrás
  Pedro Algarvio 45cc49daed Drop Py2 and six on salt/modules/win_file.py há 4 anos atrás
  Pedro Algarvio 3c740f6ea2 Drop Py2 and six on salt/utils/win_functions.py há 4 anos atrás
  Pedro Algarvio cfdfb19eab Drop Py2 and six on salt/pillar/ec2_pillar.py há 4 anos atrás
  Pedro Algarvio f72b6e9b72 Drop Py2 and six on salt/cloud/clouds/gce.py há 4 anos atrás
  Pedro Algarvio 6b082af13c Drop Py2 and six on salt/beacons/haproxy.py há 4 anos atrás
  Pedro Algarvio 4dfdcad965 Drop Py2 and six on salt/states/elasticsearch_index_template.py há 4 anos atrás
  Pedro Algarvio ac294d777e Drop Py2 and six on salt/states/elasticsearch_index.py há 4 anos atrás
  Pedro Algarvio cb9b7a65e7 Drop Py2 and six on salt/states/file.py há 4 anos atrás
  Pedro Algarvio b283177718 Drop Py2 and six on salt/modules/file.py há 4 anos atrás
  Pedro Algarvio e7d5695482 Drop Py2 and six on salt/utils/win_dacl.py há 4 anos atrás
  Pedro Algarvio d3a7af6aa8 Drop Py2 and six on salt/states/salt_proxy.py há 4 anos atrás
  Pedro Algarvio ffe573d0da Drop Py2 and six on salt/proxy/ssh_sample.py há 4 anos atrás
  Pedro Algarvio f8f58fbc33 Drop Py2 and six on salt/modules/mac_system.py há 4 anos atrás
  Pedro Algarvio 9d2e7819ad Drop Py2 and six on salt/modules/mac_power.py há 4 anos atrás
  Pedro Algarvio 0f7fc22d10 Drop Py2 and six on salt/modules/lxd.py há 4 anos atrás
  Pedro Algarvio 5cf74fba45 Drop Py2 and six on salt/states/boto3_elasticsearch.py há 4 anos atrás
  Pedro Algarvio cb0c04b54a Drop Py2 and six on salt/modules/boto3_elasticsearch.py há 4 anos atrás
  Pedro Algarvio c00ca8b293 Drop Py2 and six on salt/modules/kubernetesmod.py há 4 anos atrás
  Pedro Algarvio c60a09028f Drop Py2 and six on salt/states/boto_elbv2.py há 4 anos atrás
  Pedro Algarvio ec066bdbd1 Drop Py2 and six on salt/runners/salt.py há 4 anos atrás
  Pedro Algarvio 27460c8647 Drop Py2 and six on salt/modules/zypperpkg.py há 4 anos atrás
  Pedro Algarvio 2eac920c0a Drop Py2 and six on salt/modules/yumpkg.py há 4 anos atrás
  Pedro Algarvio 56be6c7ba2 Drop Py2 and six on salt/modules/win_network.py há 4 anos atrás
  Pedro Algarvio 1c88d5a22f Drop Py2 and six on salt/modules/sysfs.py há 4 anos atrás
  Pedro Algarvio 4f94cf16d3 Drop Py2 and six on salt/modules/splunk_search.py há 4 anos atrás
  Pedro Algarvio 89f44364fc Drop Py2 and six on salt/modules/snapper.py há 4 anos atrás
  Pedro Algarvio 60018f1fa2 Drop Py2 and six on salt/modules/rpm_lowpkg.py há 4 anos atrás
  Pedro Algarvio f0cc2be328 Drop Py2 and six on salt/modules/pip.py há 4 anos atrás
  Pedro Algarvio d389105cdf Drop Py2 and six on salt/modules/pf.py há 4 anos atrás
  Pedro Algarvio f4f3e59842 Drop Py2 and six on salt/modules/opkg.py há 4 anos atrás
  Pedro Algarvio 7c3ad0aaa3 Drop Py2 and six on salt/modules/nspawn.py há 4 anos atrás
  Pedro Algarvio ce997a76fd Drop Py2 and six on salt/modules/nftables.py há 4 anos atrás
  Pedro Algarvio dfba3e2f83 Drop Py2 and six on salt/modules/network.py há 4 anos atrás
  Pedro Algarvio 63ec7e54e7 Drop Py2 and six on salt/modules/netaddress.py há 4 anos atrás
  Pedro Algarvio 9077c5e67b Drop Py2 and six on salt/modules/minion.py há 4 anos atrás
  Pedro Algarvio 23957cf2e0 Drop Py2 and six on salt/modules/mac_brew_pkg.py há 4 anos atrás
  Pedro Algarvio c3c1854bf3 Drop Py2 and six on salt/modules/ldap3.py há 4 anos atrás
  Pedro Algarvio 682e158366 Drop Py2 and six on salt/modules/inspector.py há 4 anos atrás
  Pedro Algarvio 3e94f542a6 Drop Py2 and six on salt/modules/elasticsearch.py há 4 anos atrás
  Pedro Algarvio 945fbb022a Drop Py2 and six on salt/modules/dpkg_lowpkg.py há 4 anos atrás
  Pedro Algarvio e132669c56 Drop Py2 and six on salt/modules/cabal.py há 4 anos atrás
  Pedro Algarvio 7c83727405 Drop Py2 and six on salt/modules/boto_sns.py há 4 anos atrás
  Pedro Algarvio dff3de2cba Drop Py2 and six on salt/modules/boto_secgroup.py há 4 anos atrás
  Pedro Algarvio fa4b286963 Drop Py2 and six on salt/modules/boto_kinesis.py há 4 anos atrás
  Pedro Algarvio b8568b6021 Drop Py2 and six on salt/modules/boto_iam.py há 4 anos atrás
  Pedro Algarvio 4b7e00954c Drop Py2 and six on salt/modules/boto_elbv2.py há 4 anos atrás
  Pedro Algarvio 333b26af5d Drop Py2 and six on salt/modules/boto_elb.py há 4 anos atrás
  Pedro Algarvio fce83830cc Drop Py2 and six on salt/modules/boto_elasticache.py há 4 anos atrás
  Pedro Algarvio 3ed77fe08f Drop Py2 and six on salt/modules/boto_dynamodb.py há 4 anos atrás
  Pedro Algarvio 8036b7b7fd Drop Py2 and six on salt/modules/boto_datapipeline.py há 4 anos atrás
  Pedro Algarvio afe276340f Drop Py2 and six on salt/modules/boto_cloudwatch.py há 4 anos atrás
  Pedro Algarvio 1dc7b474a3 Drop Py2 and six on salt/modules/boto3_sns.py há 4 anos atrás
  Pedro Algarvio 0cef0cb802 Drop Py2 and six on salt/modules/boto3_route53.py há 4 anos atrás
  Pedro Algarvio f18a023c68 Drop Py2 and six on salt/modules/bigip.py há 4 anos atrás
  Pedro Algarvio dc832cdda8 Drop Py2 and six on salt/modules/bcache.py há 4 anos atrás
  Pedro Algarvio 4c74611e15 Drop Py2 and six on salt/modules/aptpkg.py há 4 anos atrás
  Pedro Algarvio 4aeefb62cc Drop Py2 and six on salt/modules/acme.py há 4 anos atrás
  Pedro Algarvio afe63bd937 Remove unused function. Drop Py2. há 4 anos atrás
  Daniel A. Wozniak 47e451a077 Fix pre-commit há 4 anos atrás
  Daniel A. Wozniak fe9be53773 Fix linter há 4 anos atrás
  Daniel A. Wozniak b2a0987493 More test fixes há 4 anos atrás
  Daniel A. Wozniak 9307553b5b More test fixes há 4 anos atrás
  Daniel A. Wozniak ab9a801936 Need to import builtins há 4 anos atrás
  Daniel A. Wozniak 49aa70fbd2 Remove six imports há 4 anos atrás
  Daniel A. Wozniak 5c093ab6c6 Fix broken ssh slow tests há 4 anos atrás
  Elias Probst 92effbcb7c netapi/rest_cherrypy: fix doc for access/error log config há 4 anos atrás
  Daniel A. Wozniak d82cbf52f6 Fix older pytest runs há 4 anos atrás
  Daniel A. Wozniak e3bbfe94ae fix pre-commit issues há 4 anos atrás
  Daniel A. Wozniak d8df6dc4f8 Make sure boto apigateway tests pass under pytest há 4 anos atrás
  Daniel A. Wozniak 4129baad6c Make sure test fails without loader changes há 4 anos atrás
  Daniel A. Wozniak 6a5af2449b Syntax cleanup há 4 anos atrás
  Daniel A. Wozniak 31832de573 Combine isinstance checks há 4 anos atrás
  Daniel A. Wozniak 73763191e9 Fix typo há 4 anos atrás
  Daniel A. Wozniak db8fd90c96 Fix test_loader_globals case há 4 anos atrás
  Daniel A. Wozniak 6b62f18649 Add more tests and better docstrings há 4 anos atrás
  Daniel A. Wozniak 812590588c Use patch_if to clean up tests há 4 anos atrás
  Daniel A. Wozniak 8fc996ede2 Slow test fixes há 4 anos atrás
  Daniel A. Wozniak 83f551aeca Run loaded methods in a context specific to the laoder há 4 anos atrás
  Pedro Algarvio a521ff1785 Migrate `tests/integration/states/test_cron.py` to PyTest há 4 anos atrás
  Pedro Algarvio 7433a8a022 `temp_file` now returns a `pathlib.Path` instance há 4 anos atrás
  Pedro Algarvio eae3e96b4e The type of line breaks is not important to the test há 4 anos atrás
  Pedro Algarvio 2477ebfb35 Migrate multimaster tests to PyTest há 4 anos atrás
  Pedro Algarvio bd466bf147 Drop Py2 and six usage há 4 anos atrás
  Cédric Bosdonnat 6cb22d64c5 virt: cleanup the consoles and serials support há 4 anos atrás
  marina2209 a859c6cc84 Add console and serial to update and running status há 4 anos atrás
  Pedro Algarvio ed4b34525a Fix the filemap checks há 4 anos atrás
  Pedro Algarvio 8cbc51737a `temp_file` helper now uses and returns `pathlib.Path` há 4 anos atrás
  Pedro Algarvio 19c72464df Migrate `integration.minion.test_pillar` to PyTest há 4 anos atrás
  Pedro Algarvio 0c349e0f83 The Syndic Tests are currently broken. See #58975 for more info há 4 anos atrás
  Pedro Algarvio 116ab7bca1 Remove test suite static pillar há 4 anos atrás
  Pedro Algarvio ed386e534c Migrate the rpmbuild integration test to PyTest há 4 anos atrás
  Pedro Algarvio 57ee6875c8 Migrate the sdb vault tests to PyTest há 4 anos atrás
  Pedro Algarvio f334fee0b6 Use a random port for the vault container há 4 anos atrás
  Pedro Algarvio 2be33aafd5 Migrate the SDB etcd DB integration tests to PyTest há 4 anos atrás
  Pedro Algarvio 98eaf5f4f1 Use a random port for the sdb etcd docker container to use há 4 anos atrás
  Pedro Algarvio b8c4534d66 Migrate the salt-ssh pillar tests to PyTest há 4 anos atrás
  Pedro Algarvio cb92560b1d Fix the `salt_ssh_cli` fixture há 4 anos atrás
  Pedro Algarvio 767999f2fe Migrate state file tests which required pillar to PyTest há 4 anos atrás
  Pedro Algarvio 2f7fb31195 The `file_tree` ext pillar now has a fixture for it's root path há 4 anos atrás
  Pedro Algarvio e1a752b0ab Migrate the integration pillar module tests to PyTest há 4 anos atrás
  Pedro Algarvio f7673c57d3 Migrate `salt` CLI matcher tests to PyTest há 4 anos atrás
  Pedro Algarvio d7f82e0d11 Migrate the cache runner integration tests to PyTest há 4 anos atrás
  Pedro Algarvio f1cdc13476 Migrate the pillar include integration tests to PyTest há 4 anos atrás
  Pedro Algarvio 71cda7cf0f Add some log calls to know what's going on há 4 anos atrás
  Pedro Algarvio d23f41f5cd Remove unused test files há 4 anos atrás
  Pedro Algarvio 8f88056025 Fix github actions to pass unquoted paths há 4 anos atrás
  Pedro Algarvio 2d3d26a6cd Migrate the minion blackout integration tests to PyTest há 4 anos atrás
  Pedro Algarvio 3b0b213163 Fix pre-commit Github Action for changed files há 4 anos atrás
  Pedro Algarvio 4242369f00 Store generated documentation as build artifacts há 4 anos atrás
  Pedro Algarvio 58f9b5e6f4 Always build man pages on push events há 4 anos atrás
  Gareth J. Greenaway da7dfd4049 Adding changelog. há 4 anos atrás
  Gareth J. Greenaway 167a80dfdc Fixing the two failing tests when running on Photon OS. Python 3 installed on Photon OS does not support MD4 hashing, so don't load pdbedit module and skip the test_generate_nt_hash test. Default unmask for files and directories results in them having only user and group permissions so update the test_directory_max_depth test. há 4 anos atrás
  Cédric Bosdonnat 5f91ccc5fb virt: only live update vcpu max if there is a change há 4 anos atrás
  Cédric Bosdonnat 697bb2013e virt: canonicalize cpuset before comparing há 4 anos atrás
  Cédric Bosdonnat 1e0762fbc0 Remove unneeded VM XML definition fragments in tests há 4 anos atrás
  Cédric Bosdonnat e07def1c13 virt: allow using IO threads on disks há 4 anos atrás
  Cédric Bosdonnat 0f9a948d2c virt: add qemu guest agent channel há 4 anos atrás
  Cédric Bosdonnat c848d17de2 virt: add clock configuration for guests há 4 anos atrás
  Cédric Bosdonnat 63c76d5ca8 virt: add kvm-hint-dedicated feature handling há 4 anos atrás
  Cédric Bosdonnat 282e162887 virt.update: factorize the mapping value definition há 4 anos atrás
  Cédric Bosdonnat 4848853dc8 virt.update: handle tiny difference in memory values há 4 anos atrás
  Cédric Bosdonnat 407a00fb58 xmlutil: use a comparison function to update XML há 4 anos atrás
  Cédric Bosdonnat 28b4a173c7 virt.update: properly handle nosharepages and locked elements há 4 anos atrás
  Cédric Bosdonnat f70c056a13 xmlutil.change_xml: properly handle updated return value for removals há 4 anos atrás
  Pedro Algarvio 8f6c90ba78 Mention the Github Actions that run against a fork há 4 anos atrás
  Pedro Algarvio 7528e42fcf Update the style conventions doc há 4 anos atrás
  Pedro Algarvio 7b5302a686 Fix lint issues há 4 anos atrás
  Pedro Algarvio 9c978fdccc Allow running the docs jenkins job in GH Actions há 4 anos atrás
  Pedro Algarvio 4a1c948a0a Allow running the lint jenkins job in GH Actions há 4 anos atrás
  Pedro Algarvio 5f4ed3b3f4 Allow running the pre-commit jenkins job in GH Actions há 4 anos atrás
  gqlo 50701b3573 virt: support cpu tunning and Iothread allocation há 4 anos atrás
  gqlo 4fb4d12fdb virt: support memory_backing há 4 anos atrás
  Cédric Bosdonnat 93655b548b xmlutil.change_xml properly handle xpath node number há 4 anos atrás
  Cédric Bosdonnat 9bf6b39416 virt: make context preprocessing more reusable in _gen_xml há 4 anos atrás
  gqlo e3dae97e10 virt: support cpu model and topology há 4 anos atrás
  gqlo f321ca4b1f fixup! precommit failure fix há 4 anos atrás
  gqlo 6421cd5284 virt: support host numa tunning capability há 4 anos atrás
  Cédric Bosdonnat 938f9dee25 libvirt domain template memory config fixes há 4 anos atrás
  Pedro Algarvio d0a39c0cba Bump pytest-salt-factories to 0.98.2 há 4 anos atrás
  Pedro Algarvio e48b669f3c Bump pytest-salt-factories to 0.98.1 há 4 anos atrás
  Pedro Algarvio 61a7757da5 The `minion_tgt` keyword argument is now mandatory há 4 anos atrás
  Pedro Algarvio baacf049bc Skip test because of https://github.com/saltstack/salt/pull/58979 há 4 anos atrás
  Pedro Algarvio 93c26f1f84 Bump to pytest 6.2.1 and pytest-salt-factories 0.98.0 há 4 anos atrás
  Pedro Algarvio a7b6e57103 Don't set `close_fds` to `True` on FreeBSD when Py<3.9 há 4 anos atrás
  krionbsd 9f261802f3 Remove FreeBSD 12.1 há 4 anos atrás
  Gareth J. Greenaway bf619c9312 Ensure the right versionlock package is installed in the other tests as well. há 4 anos atrás
  Gareth J. Greenaway 1783a9ce91 Ensure the right versionlock package is installed. há 4 anos atrás
  Gareth J. Greenaway 1b27c38a2b making searching ret comment more generic for other OSes há 4 anos atrás
  Gareth J. Greenaway 55568c3ee3 Adding changelog. há 4 anos atrás
  Gareth J. Greenaway bc158b1afd Adding test for pkg.unhold changes in yumpkg.py. há 4 anos atrás
  Gareth J. Greenaway aefdd8a5a6 No need for this code to handle dicts since we are handling dicts further down. há 4 anos atrás
  David Murphy d1924f9ebe emoved commented out line, per reviewer's request há 4 anos atrás
  David Murphy 9629d16834 Fixed documentation há 4 anos atrás
  David Murphy 9db25a5cf4 Updated install_os tests to allow for status,message conn.sw.install and decorator tests há 4 anos atrás
  David Murphy 1198505a92 Clean up docs and reboot test há 4 anos atrás
  David Murphy dae37f749d Cleanup typos and decorator há 4 anos atrás
  David Murphy 86163200e6 Fixing tests há 4 anos atrás
  David Murphy bafbc9762c Allow for event.fire_master, and typo in string há 4 anos atrás
  David Murphy 585a191ad8 Correct for use of single quotes há 4 anos atrás
  David Murphy 57160ce7a6 Adding Juniper native minion changes from 3002 to master há 4 anos atrás
  David Murphy b0f2f116ca Initial support for Juniper native minion for Salt 3002 há 4 anos atrás
  Bryce Larson fc687823a7 remove macos highsierra from ci há 4 anos atrás
  krionbsd 3a8331e66a [merge jam] port 52631, drop Py2 support há 4 anos atrás
  Gareth J. Greenaway 21a4f7c7d2 Update test_state.py há 4 anos atrás
  Gareth J. Greenaway 309c046d5b removing separate state file and creating it when the test runs. há 4 anos atrás
  Gareth J. Greenaway 99f56c46c8 changes suggested by @s0undt3ch. há 4 anos atrás
  Gareth J. Greenaway 47e556c945 Adding changelog. há 4 anos atrás
  Gareth J. Greenaway 336a62ec5d When we are checking requisites, run reconcile_procs just on those requisite states not all running states. há 4 anos atrás
  Bryce Larson 3ec4cfd48e update requirements to be able to be installed on arm64 version of ubuntu 20.04 há 4 anos atrás
  Pedro Algarvio 086bb760c6 Skipping tests on Windows per Shane's(@twangboy) suggestion há 4 anos atrás
  Pedro Algarvio ccabafd386 Set the test daemons log file level to error. We already forward logs to pytest. há 4 anos atrás
  Daniel A. Wozniak 8ad56ec06e Fix logging if it happens to be enabled by force há 4 anos atrás
  Daniel A. Wozniak 439d4b6c68 Clean up linter and refactor new tests há 4 anos atrás
  Megan Wilhite 91145a1904 one less object created on startup of minion há 4 anos atrás
  Megan Wilhite a139f6f6a9 Load system grains when custom grains are set há 4 anos atrás
  Frode Gundersen da6819735c Update 3002.2.rst há 4 anos atrás
  Frode Gundersen df82a81469 Update CHANGELOG.md há 4 anos atrás
  Frode Gundersen 54aa364c63 Update changelog há 4 anos atrás
  Pedro Algarvio 13ffd8134d Remove the loader's weakref finalizer. há 4 anos atrás
  Pedro Algarvio bb02c28dc8 Should either be `exc_info=True` or `exc_info_on_loglevel=logging.<LEVEL>` há 4 anos atrás
  Pedro Algarvio bb310e1e97 Fix the dummy proxy pkg.upgrade tests, version was getting bumped twice há 4 anos atrás
  Pedro Algarvio 2562c87e75 Fix dummy proxy tests under PyTest há 4 anos atrás
  Pedro Algarvio ea3644ecda These tests don't need to run under root há 4 anos atrás
  Frode Gundersen 8df03c17e1 Update docs for 3002.2 release há 4 anos atrás
  ScriptAutomate 4f096201ea Environment to saltenv and documenting color há 4 anos atrás
  Pedro Algarvio 1bdcbfea0a It's no longer necessary to pass `request` há 4 anos atrás
  Pedro Algarvio 237957c2ec The paths need to be strings for Py3.5 há 4 anos atrás
  Megan Wilhite 8a74985356 use eauth creds for ssh netapi client auth tests há 4 anos atrás
  Megan Wilhite 0aff420f8f Fix netapisshclient tests há 4 anos atrás
  cmcmarrow b06dafb020 add back name arg há 4 anos atrás
  cmcmarrow eadd5224f1 add tests há 4 anos atrás
  cmcmarrow 8a38e05063 get hgfs fileserver to start há 4 anos atrás
  cmcmarrow 9f5a0508fd fix hgfs há 4 anos atrás
  Megan Wilhite 6939711d5b update call args list for ssh client unit test há 4 anos atrás
  Megan Wilhite b2a6715901 Fixes salt-ssh authentication when using tty há 4 anos atrás
  Pedro Algarvio c9c635cf55 Upgrade to non vulnerable cryptography>=3.2 há 4 anos atrás
  Alexander Weidinger ea409f0723 Fix: compare bytes when comparing certificates (fixes #56556) há 4 anos atrás
  Pedro Algarvio 7ba3fd6f76 Fix incompatible types check há 4 anos atrás
  Pedro Algarvio ef754d4c0d Drop Py2 and six usage há 4 anos atrás
  Pedro Algarvio 60d3d14f4c Upgrade to non vulnerable cryptography==3.2 há 4 anos atrás
  Gareth J. Greenaway f6dffeef61 fixing failing test. updating pre-commit. há 4 anos atrás
  Daniel Wozniak 098cfabd90 Don't log in virtual function há 4 anos atrás
  Gareth J. Greenaway d979393027 Adding changelog. há 4 anos atrás
  Gareth J. Greenaway 45af9a27a0 Ensure that elasticsearch.index_exists is available before loading the elasticsearch returner. há 4 anos atrás
  Cristian Hotea bfe340bdc8 [master] Porting #52357 to master (#58650) há 4 anos atrás
  Megan Wilhite 7f548281bb add changelog há 4 anos atrás
  Megan Wilhite fa9c535182 Allow bytes in gpg renderer há 4 anos atrás
  Megan Wilhite 8e77355300 Revert "run pre-commit" há 4 anos atrás
  Megan Wilhite 11e2550d7e Revert "Ensure file_tree pillar returns unicode" há 4 anos atrás
  krionbsd 2e94a57d94 Fix pre-commit há 4 anos atrás
  Gareth J. Greenaway df0859da74 Revert "[Fix] Correctly pass subset parameter to cmd_subset (#58601)" há 4 anos atrás
  Alan Somers 9457fd428f Refactor tests/unit/states/test_sysctl.py há 4 anos atrás
  Benjamin Drung 6048c87357 Support mock 2.0.0 again há 4 anos atrás
  Cristian Hotea b0b131fe1b Enable iptables module on NILinuxRT systems há 4 anos atrás
  Daniel Wozniak 023528b3b1 3002.1 (#58871) há 4 anos atrás
  Jarrod Funnell 3dc25dc4ca [Fix] Correctly pass subset parameter to cmd_subset (#58601) há 4 anos atrás
  Megan Wilhite e443061612 Skip test if locale does not exist há 4 anos atrás
  Megan Wilhite dd3a6a53ad run pre-commit há 4 anos atrás
  Megan Wilhite e9e593c3fb Catch OSError when calling crypt.crypt há 4 anos atrás
  Bryce Larson 0a583f1ef1 add fedora33 há 4 anos atrás
  Bryce Larson 66d0e2e0da update requirements for fedora33 há 4 anos atrás
  Bryce Larson 07e5f2d874 Result of 'pre-commit run --files salt/_compat.py' há 4 anos atrás
  Frédéric Pierret (fepitre) 81042929fd IPv6AddressScoped: define self._scope_id for python3.9+ compatibility há 4 anos atrás
  Charles McMarrow bf1d8379f7 remove log há 4 anos atrás
  cmcmarrow 8d4ebdd097 make default default to on há 4 anos atrás
  cmcmarrow 370d6bc972 fix failing tests há 4 anos atrás
  cmcmarrow 27f64de387 fix doc error há 4 anos atrás
  cmcmarrow 68a43a9a30 clean up virt a little há 4 anos atrás
  cmcmarrow 75acff2134 fix virt if há 4 anos atrás
  Daniel A. Wozniak 70ac2b1d7b We no longer support python version without importlib há 4 anos atrás
  Megan Wilhite 0cd95615a9 add changelog há 4 anos atrás
  Megan Wilhite 10860d5498 run pre-commit há 4 anos atrás
  Megan Wilhite 7a3ce47382 Fail when func_ret is False new module.run syntax há 4 anos atrás
  Pedro Algarvio 6fdcfba70c Bump cffi to cffi==1.14.3 for Py3.9 há 4 anos atrás
  Megan Wilhite d4f8bda55a run pre-commit há 4 anos atrás
  Megan Wilhite 6826255ab5 Ensure file_tree pillar returns unicode há 4 anos atrás
  Daniel Wozniak 3e269eda82 Fix typo in changelog/58861.fixed há 4 anos atrás
  Gareth J. Greenaway 13b4de945e Adding changelog. há 4 anos atrás
  Gareth J. Greenaway 7de1722ed5 Log a different obeject when debugging if we're using disk cache vs memory cache. The disk cache pillar class has the _dict_ object but the cache pillar object which is used with the memory cache does not include a _dict obeject because it is a dict already. Adding a test when pillar_cache_backend is memory. há 4 anos atrás
  Ken Crowell 89f13a934c Fix use of unauthd cached vmware service instance há 4 anos atrás
  Daniel A. Wozniak ad4ebdcdf4 Add changelog entry for 58904 há 4 anos atrás
  Daniel A. Wozniak 61d4ed5dff Add tests for minion opts in grains há 4 anos atrás
  Daniel A. Wozniak 944212e00b Fix unit test há 4 anos atrás
  Daniel A. Wozniak 1811d152ef wintest há 4 anos atrás
  twangboy 8b6ad32ec3 Add changelog há 4 anos atrás
  twangboy 914424f912 Add some tests há 4 anos atrás
  twangboy e3da965d12 Fix overly strict __virtual__ checks há 4 anos atrás
  Megan Wilhite e547b8ca00 remove file mistakenly added há 4 anos atrás
  Megan Wilhite c6cf4848c5 add changelog há 4 anos atrás
  Megan Wilhite 3233248cb8 run pre-commit há 4 anos atrás
  Megan Wilhite e703157529 Change dict check to isinstance for file.keyvalue há 4 anos atrás
  piterpunk 92d0800e27 Fixed "extents" usage instructions há 4 anos atrás
  piterpunk ae0606fa21 Added changelog entry há 4 anos atrás
  piterpunk d34e19e691 Updated tests for lvm.lv_present há 4 anos atrás
  piterpunk a1e96ce078 Allow extents as a percent in lvm.lv_present há 4 anos atrás
  Pedro Algarvio e1f93a5be2 Update to the latest salt-bootstrap release v2020.10.21 há 4 anos atrás
100 ficheiros alterados com 1558 adições e 431 exclusões
  1. 135 0
      .github/workflows/docs.yml
  2. 137 0
      .github/workflows/lint.yml
  3. 55 0
      .github/workflows/pre-commit.yml
  4. 1 1
      .pre-commit-config.yaml
  5. 92 2
      CHANGELOG.md
  6. 1 0
      changelog/57880.added
  7. 0 1
      changelog/58439.fixed
  8. 1 0
      changelog/58589.added
  9. 0 1
      changelog/58753.fixed
  10. 0 1
      changelog/58773.fixed
  11. 1 0
      changelog/58844.added
  12. 1 0
      changelog/58883.fixed
  13. 1 0
      changelog/58976.fixed
  14. 1 0
      changelog/58991.fixed
  15. 2 0
      changelog/59069.fixed
  16. 2 2
      cicd/jenkins/kitchen-fedora33-py3
  17. 2 2
      cicd/jenkins/kitchen-fedora33-py3-pytest
  18. 0 17
      cicd/jenkins/kitchen-freebsd121-py3
  19. 0 20
      cicd/jenkins/kitchen-freebsd121-py3-pytest
  20. 0 19
      cicd/jenkins/kitchen-macosxhighsierra-py3
  21. 0 21
      cicd/jenkins/kitchen-macosxhighsierra-py3-pytest
  22. 5 2
      conf/minion
  23. 2 3
      doc/_incl/requisite_incl.rst
  24. BIN
      doc/_static/salt-architecture.png
  25. 1 0
      doc/contents.rst
  26. 1 1
      doc/man/salt-api.1
  27. 1 1
      doc/man/salt-call.1
  28. 1 1
      doc/man/salt-cloud.1
  29. 1 1
      doc/man/salt-cp.1
  30. 1 1
      doc/man/salt-key.1
  31. 1 1
      doc/man/salt-master.1
  32. 1 1
      doc/man/salt-minion.1
  33. 1 1
      doc/man/salt-proxy.1
  34. 1 1
      doc/man/salt-run.1
  35. 1 1
      doc/man/salt-ssh.1
  36. 1 1
      doc/man/salt-syndic.1
  37. 1 1
      doc/man/salt-unity.1
  38. 1 1
      doc/man/salt.1
  39. 391 158
      doc/man/salt.7
  40. 1 1
      doc/man/spm.1
  41. 1 0
      doc/ref/beacons/all/index.rst
  42. 5 0
      doc/ref/beacons/all/salt.beacons.junos_rre_keys.rst
  43. 8 6
      doc/ref/configuration/master.rst
  44. 32 0
      doc/ref/configuration/minion.rst
  45. 14 2
      doc/security/index.rst
  46. 14 0
      doc/topics/development/contributing.rst
  47. 19 21
      doc/topics/development/conventions/style.rst
  48. 7 1
      doc/topics/hardening.rst
  49. 2 0
      doc/topics/index.rst
  50. 13 0
      doc/topics/releases/2019.2.6.rst
  51. 15 0
      doc/topics/releases/2019.2.7.rst
  52. 13 0
      doc/topics/releases/2019.2.8.rst
  53. 13 0
      doc/topics/releases/3000.4.rst
  54. 15 0
      doc/topics/releases/3000.5.rst
  55. 13 0
      doc/topics/releases/3000.6.rst
  56. 13 0
      doc/topics/releases/3001.2.rst
  57. 15 0
      doc/topics/releases/3001.3.rst
  58. 13 0
      doc/topics/releases/3001.4.rst
  59. 17 0
      doc/topics/releases/3002.1.rst
  60. 28 0
      doc/topics/releases/3002.2.rst
  61. 8 0
      doc/topics/releases/3003.rst
  62. 1 1
      doc/topics/releases/index.rst
  63. 277 0
      doc/topics/salt_system_architecture.rst
  64. 1 0
      doc/topics/ssh/roster.rst
  65. 1 0
      requirements/base.txt
  66. 1 1
      requirements/pytest.txt
  67. 2 1
      requirements/static/ci/linux.in
  68. 1 2
      requirements/static/ci/py3.5/cloud.txt
  69. 8 6
      requirements/static/ci/py3.5/darwin.txt
  70. 7 5
      requirements/static/ci/py3.5/freebsd.txt
  71. 7 5
      requirements/static/ci/py3.5/linux.txt
  72. 6 5
      requirements/static/ci/py3.5/windows.txt
  73. 1 2
      requirements/static/ci/py3.6/cloud.txt
  74. 8 6
      requirements/static/ci/py3.6/darwin.txt
  75. 7 5
      requirements/static/ci/py3.6/freebsd.txt
  76. 7 5
      requirements/static/ci/py3.6/linux.txt
  77. 6 5
      requirements/static/ci/py3.6/windows.txt
  78. 1 2
      requirements/static/ci/py3.7/cloud.txt
  79. 6 6
      requirements/static/ci/py3.7/darwin.txt
  80. 5 5
      requirements/static/ci/py3.7/freebsd.txt
  81. 5 5
      requirements/static/ci/py3.7/linux.txt
  82. 4 5
      requirements/static/ci/py3.7/windows.txt
  83. 1 2
      requirements/static/ci/py3.8/cloud.txt
  84. 6 6
      requirements/static/ci/py3.8/darwin.txt
  85. 5 5
      requirements/static/ci/py3.8/freebsd.txt
  86. 6 7
      requirements/static/ci/py3.8/linux.txt
  87. 2 3
      requirements/static/ci/py3.9/cloud.txt
  88. 7 7
      requirements/static/ci/py3.9/darwin.txt
  89. 5 5
      requirements/static/ci/py3.9/freebsd.txt
  90. 7 7
      requirements/static/ci/py3.9/linux.txt
  91. 4 3
      requirements/static/pkg/py3.5/darwin.txt
  92. 4 2
      requirements/static/pkg/py3.5/freebsd.txt
  93. 4 2
      requirements/static/pkg/py3.5/linux.txt
  94. 3 2
      requirements/static/pkg/py3.5/windows.txt
  95. 4 3
      requirements/static/pkg/py3.6/darwin.txt
  96. 4 2
      requirements/static/pkg/py3.6/freebsd.txt
  97. 4 2
      requirements/static/pkg/py3.6/linux.txt
  98. 3 2
      requirements/static/pkg/py3.6/windows.txt
  99. 2 3
      requirements/static/pkg/py3.7/darwin.txt
  100. 2 2
      requirements/static/pkg/py3.7/freebsd.txt

+ 135 - 0
.github/workflows/docs.yml

@@ -0,0 +1,135 @@
+name: Docs
+
+on: [push, pull_request]
+
+jobs:
+  Salt:
+    name: Build Salt Documentation
+    runs-on: ubuntu-latest
+
+    container:
+      image: python:3.8.6-slim-buster
+
+    steps:
+
+    - name: Install System Deps
+      run: |
+        apt-get update
+        apt-get install -y enchant git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev xz-utils
+
+    - uses: actions/checkout@v2
+
+    - name: Set Python Version Env Var
+      run: |
+        echo PY_VERSION=$(python -c 'import sys; print("{}.{}".format(*sys.version_info))') >> $GITHUB_ENV
+
+    - name: Install Nox
+      run: |
+        python -m pip install --upgrade pip
+        pip install nox
+
+    - id: changed-files
+      name: Get Changed Files
+      uses: dorny/paths-filter@v2
+      with:
+        token: ${{ github.token }}
+        list-files: json
+        filters: |
+          docs:
+            - docs/**
+
+    - name: Set Docs Python Cache Key
+      run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
+
+    - name: Setup Nox Cache
+      uses: pat-s/always-upload-cache@v2.1.3
+      with:
+        path: .nox/
+        key: docs-salt|${{ env.PY }}|${{ hashFiles(format('requirements/static/ci/py{0}/*.txt', env.PY_VERSION)) }}
+
+    - name: Install Python Requirements
+      env:
+        PIP_EXTRA_INDEX_URL: https://artifactory.saltstack.net/artifactory/api/pypi/pypi-open/simple/
+      run:
+        nox --install-only --forcecolor -e 'docs-html(compress=False, clean=True)'
+
+    - name: Build Docs
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e 'docs-html(compress=False, clean=True)'
+
+    - name: Store Generated Documentation
+      uses: actions/upload-artifact@v2
+      with:
+        name: salt-html-docs
+        path: doc/_build/html
+
+  Manpages:
+    name: Build Salt man Pages
+    runs-on: ubuntu-latest
+
+    container:
+      image: python:3.8.6-slim-buster
+
+    steps:
+
+    - name: Install System Deps
+      run: |
+        apt-get update
+        apt-get install -y enchant git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev
+
+    - uses: actions/checkout@v2
+
+    - id: changed-files
+      name: Get Changed Files
+      uses: dorny/paths-filter@v2
+      with:
+        token: ${{ github.token }}
+        list-files: json
+        filters: |
+          docs:
+            - docs/**
+
+    - name: Set Python Version Env Var
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      run: |
+        echo PY_VERSION=$(python -c 'import sys; print("{}.{}".format(*sys.version_info))') >> $GITHUB_ENV
+
+    - name: Install Nox
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      run: |
+        python -m pip install --upgrade pip
+        pip install nox
+
+    - name: Set Docs Python Cache Key
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
+
+    - name: Setup Nox Cache
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      uses: pat-s/always-upload-cache@v2.1.3
+      with:
+        path: .nox/
+        key: docs-man|${{ env.PY }}|${{ hashFiles(format('requirements/static/ci/py{0}/*.txt', env.PY_VERSION)) }}
+
+    - name: Install Python Requirements
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      env:
+        PIP_EXTRA_INDEX_URL: https://artifactory.saltstack.net/artifactory/api/pypi/pypi-open/simple/
+      run:
+        nox --install-only --forcecolor -e 'docs-man(compress=False, update=False, clean=True)'
+
+    - name: Build Manpages
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e 'docs-man(compress=False, update=False, clean=True)'
+
+    - name: Store Generated Documentation
+      if: github.event_name == 'push' || steps.changed-files.outputs.docs == 'true'
+      uses: actions/upload-artifact@v2
+      with:
+        name: salt-man-pages
+        path: doc/_build/man

+ 137 - 0
.github/workflows/lint.yml

@@ -0,0 +1,137 @@
+name: Lint
+
+on: [push, pull_request]
+
+jobs:
+  Salt:
+    name: Lint Salt's Source Code
+    runs-on: ubuntu-latest
+
+    container:
+      image: python:3.8.6-slim-buster
+
+    steps:
+
+    - name: Install System Deps
+      run: |
+        apt-get update
+        apt-get install -y enchant git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev
+
+    - uses: actions/checkout@v2
+
+    - name: Set Python Version Env Var
+      run: |
+        echo PY_VERSION=$(python -c 'import sys; print("{}.{}".format(*sys.version_info))') >> $GITHUB_ENV
+
+    - name: Install Nox
+      run: |
+        python -m pip install --upgrade pip
+        pip install nox
+
+    - name: Set Lint Python Cache Key
+      run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
+
+    - name: Setup Nox Cache
+      uses: pat-s/always-upload-cache@v2.1.3
+      with:
+        path: .nox/
+        key: lint-salt|${{ env.PY }}|${{ hashFiles(format('requirements/static/ci/py{0}/*.txt', env.PY_VERSION)) }}
+
+    - id: changed-files
+      name: Get Changed Files
+      uses: dorny/paths-filter@v2
+      with:
+        token: ${{ github.token }}
+        list-files: json
+        filters: |
+          salt:
+            - added|modified:
+              - setup.py
+              - noxfile.py
+              - salt/**/*.py
+              - tasks/**/*.py
+
+    - name: Install Python Requirements
+      env:
+        PIP_EXTRA_INDEX_URL: https://artifactory.saltstack.net/artifactory/api/pypi/pypi-open/simple/
+      run:
+        nox --install-only --forcecolor -e lint-salt
+
+    - name: Lint Changed Files
+      if: github.event_name == 'pull_request' && steps.changed-files.outputs.salt == 'true'
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e lint-salt -- ${{ join(fromJSON(steps.changed-files.outputs.salt_files), ' ') }}
+
+    - name: Lint ALL Files
+      if: steps.changed-files.outputs.salt == 'true'
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e lint-salt
+
+  Tests:
+    name: Lint Salt's Test Suite
+    runs-on: ubuntu-latest
+
+    container:
+      image: python:3.8.6-slim-buster
+
+    steps:
+
+    - name: Install System Deps
+      run: |
+        apt-get update
+        apt-get install -y enchant git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev
+
+    - uses: actions/checkout@v2
+
+    - name: Set Python Version Env Var
+      run: |
+        echo PY_VERSION=$(python -c 'import sys; print("{}.{}".format(*sys.version_info))') >> $GITHUB_ENV
+
+    - name: Install Nox
+      run: |
+        python -m pip install --upgrade pip
+        pip install nox
+
+    - name: Set Lint Python Cache Key
+      run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
+
+    - name: Setup Nox Cache
+      uses: pat-s/always-upload-cache@v2.1.3
+      with:
+        path: .nox/
+        key: lint-tests|${{ env.PY }}|${{ hashFiles(format('requirements/static/ci/py{0}/*.txt', env.PY_VERSION)) }}
+
+    - id: changed-files
+      name: Get Changed Files
+      uses: dorny/paths-filter@v2
+      with:
+        token: ${{ github.token }}
+        list-files: json
+        filters: |
+          tests:
+            - added|modified:
+              - tests/**/*.py
+
+    - name: Install Python Requirements
+      env:
+        PIP_EXTRA_INDEX_URL: https://artifactory.saltstack.net/artifactory/api/pypi/pypi-open/simple/
+      run:
+        nox --install-only --forcecolor -e lint-tests
+
+    - name: Lint Changed Files
+      if: github.event_name == 'pull_request' && steps.changed-files.outputs.tests == 'true'
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e lint-tests -- ${{ join(fromJSON(steps.changed-files.outputs.tests_files), ' ') }}
+
+    - name: Lint ALL Files
+      if: steps.changed-files.outputs.tests == 'true'
+      env:
+        SKIP_REQUIREMENTS_INSTALL: YES
+      run: |
+        nox --forcecolor -e lint-tests

+ 55 - 0
.github/workflows/pre-commit.yml

@@ -0,0 +1,55 @@
+name: Pre-Commit
+
+on: [push, pull_request]
+
+jobs:
+  Pre-Commit:
+    name: Run Pre-Commit Against Salt
+
+    runs-on: ubuntu-latest
+
+    container:
+      image: python:3.8.6-slim-buster
+
+    steps:
+
+    - name: Install System Deps
+      run: |
+        apt-get update
+        apt-get install -y enchant git gcc make zlib1g-dev libc-dev libffi-dev g++ libxml2 libxml2-dev libxslt-dev libcurl4-openssl-dev libssl-dev libgnutls28-dev
+
+    - uses: actions/checkout@v2
+
+    - name: Set Pre-Commit Cache Key
+      run: echo "PY=$(python --version --version | sha256sum | cut -d' ' -f1)" >> $GITHUB_ENV
+
+    - name: Setup Pre-Commit Cache
+      uses: pat-s/always-upload-cache@v2.1.3
+      with:
+        path: ~/.cache/pre-commit
+        key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}
+
+    - id: changed-files
+      name: Get Changed Files
+      uses: dorny/paths-filter@v2
+      with:
+        token: ${{ github.token }}
+        list-files: json
+        filters: |
+          repo:
+            - added|modified:
+              - '**'
+
+    - name: Check ALL Files On Branch
+      uses: pre-commit/action@v2.0.0
+      if: github.event_name != 'pull_request'
+      env:
+        SKIP: lint-salt,lint-tests,pyupgrade,remove-import-headers,rstcheck
+
+    - name: Check Changed Files On PR
+      uses: pre-commit/action@v2.0.0
+      if: github.event_name == 'pull_request' && steps.changed-files.outputs.repo == 'true'
+      with:
+        extra_args: --files ${{ join(fromJSON(steps.changed-files.outputs.repo_files), ' ') }}
+      env:
+        SKIP: lint-salt,lint-tests

+ 1 - 1
.pre-commit-config.yaml

@@ -1184,7 +1184,7 @@ repos:
       - id: nox
         alias: check-filemap
         name: Check Filename Map Change Matching
-        files: ^tests/filename_map\.yml$
+        files: ^tests/(filename_map\.yml|.*\.py)$
         pass_filenames: false
         args:
           - -e

+ 92 - 2
CHANGELOG.md

@@ -7,6 +7,44 @@ Versions are `MAJOR.PATCH`.
 
 # Changelog
 
+Salt 3002.2 (2020-11-16)
+========================
+
+Fixed
+-----
+
+- Change dict check to isinstance instead of type() for key_values in file.keyvalue. (#57758)
+- Fail when func_ret is False when using the new module.run syntax. (#57768)
+- Fix comparison of certificate values (#58296)
+- When using ssh_pre_flight if there is a failure, fail on retcode not stderr. (#58439)
+- Fix use of unauthd cached vmware service instance (#58691)
+- Removing use of undefined varilable in utils/slack.py. (#58753)
+- Restored the ability to specify the amount of extents for a Logical
+  Volume as a percentage. (#58759)
+- Ensuring that the version check function is run a second time in all the user related functions incase the user being managed is the connection user and the password has been updated. (#58773)
+- Allow bytes in gpg renderer (#58794)
+- Fix issue where win_wua module fails to load when BITS is set to Manual (#58848)
+- Ensure that elasticsearch.index_exists is available before loading the elasticsearch returner. (#58851)
+- Log a different object when debugging if we're using disk cache vs memory cache. The disk cache pillar class has the dict object but the cache pillar object which is used with the memory cache does not include a _dict obeject because it is a dict already. (#58861)
+- Do not generate grains for every job run on Windows minions. This makes Windows
+  conform more to the way posix OSes work today. (#58904)
+- Fixes salt-ssh authentication when using tty (#58922)
+- Revert LazyLoader finalizer. Removed the weakref.finalizer code. On some occasions, the finalized would run when trying to load a new module, firing a race condition. (#58947)
+
+
+Salt 3002.1 (2020-10-26)
+========================
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)
+- Properly validate eauth credentials and tokens along with their ACLs.
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)
+
 Salt 3002 (2020-10-19)
 ======================
 
@@ -45,7 +83,6 @@ Changed
   arguments. ``formatter`` is still supported, but using both ``serializer`` and
   ``formatter`` will cause the state to fail. (#57858)
 
-
 Fixed
 -----
 
@@ -236,6 +273,33 @@ Added
   This flag will be deprecated in the Phosphorus release when this functionality
   becomes the default. (#58652)
 
+Salt 3001.4
+===========
+
+Fixed
+-----
+
+- Fixes salt-ssh authentication when using tty (#58922)
+
+Salt 3001.3
+===========
+
+Fixed
+-----
+
+- Properly validate eauth credentials and tokens along with their ACLs.
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)
+
+Salt 3001.2
+===========
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)
 
 Salt 3001.1 (2020-07-27)
 ========================
@@ -663,8 +727,34 @@ Added
 - [#56637](https://github.com/saltstack/salt/pull/56637) - Add ``win_wua.installed`` to the ``win_wua`` execution module
 - Clarify how to get the master fingerprint (#54699)
 
+Salt 3000.6
+===========
+
+Fixed
+-----
+
+- Fixes salt-ssh authentication when using tty (#58922)
+
+Salt 3000.5
+===========
+
+Fixed
+-----
+
+- Properly validate eauth credentials and tokens along with their ACLs.
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)
+
+Salt 3000.4
+===========
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)
 
-## 3000.1
 ### 3000.3
 
 ### Fixed

+ 1 - 0
changelog/57880.added

@@ -0,0 +1 @@
+CPU model, topology and NUMA node tuning

+ 0 - 1
changelog/58439.fixed

@@ -1 +0,0 @@
-When using ssh_pre_flight if there is a failure, fail on retcode not stderr.

+ 1 - 0
changelog/58589.added

@@ -0,0 +1 @@
+Allow handling special first boot definition on virtual machine

+ 0 - 1
changelog/58753.fixed

@@ -1 +0,0 @@
-Removing use of undefined varilable in utils/slack.py.

+ 0 - 1
changelog/58773.fixed

@@ -1 +0,0 @@
-Ensuring that the version check function is run a second time in all the user related functions incase the user being managed is the connection user and the password has been updated.

+ 1 - 0
changelog/58844.added

@@ -0,0 +1 @@
+Enhance console and serial support in virt module

+ 1 - 0
changelog/58883.fixed

@@ -0,0 +1 @@
+Fixing unhold in yumpkg. Removing unnecessary code and relying on the code that handles dicts later. Adding tests when pkg.installed is called with hold=False.

+ 1 - 0
changelog/58976.fixed

@@ -0,0 +1 @@
+When we are checking requisites, run reconcile_procs just on those requisite states not all running states.

+ 1 - 0
changelog/58991.fixed

@@ -0,0 +1 @@
+Fixing the two failing tests when running on Photon OS. Python 3 installed on Photon OS does not support MD4 hashing, so don't load pdbedit module and skip the test_generate_nt_hash test. Default unmask for files and directories results in them having only user and group permissions so update the test_directory_max_depth test.

+ 2 - 0
changelog/59069.fixed

@@ -0,0 +1,2 @@
+Fixed an error when running svn.latest in test mode and using the trust_failures
+option.

+ 2 - 2
cicd/jenkins/kitchen-fedora31-py3 → cicd/jenkins/kitchen-fedora33-py3

@@ -1,10 +1,10 @@
 @Library('salt@master-1.9') _
 
 runTestSuite(
-    ami_image_id: 'ami-014e0bc5fd36130a6',
+    ami_image_id: 'ami-0f325553c2ef49ecf',
     concurrent_builds: 1,
     distro_name: 'fedora',
-    distro_version: '31',
+    distro_version: '33',
     env: env,
     golden_images_branch: 'master',
     jenkins_slave_label: 'kitchen-slave',

+ 2 - 2
cicd/jenkins/kitchen-fedora31-py3-pytest → cicd/jenkins/kitchen-fedora33-py3-pytest

@@ -1,10 +1,10 @@
 @Library('salt@master-1.9') _
 
 runTestSuite(
-    ami_image_id: 'ami-014e0bc5fd36130a6',
+    ami_image_id: 'ami-0f325553c2ef49ecf',
     concurrent_builds: 1,
     distro_name: 'fedora',
-    distro_version: '31',
+    distro_version: '33',
     env: env,
     golden_images_branch: 'master',
     jenkins_slave_label: 'kitchen-slave',

+ 0 - 17
cicd/jenkins/kitchen-freebsd121-py3

@@ -1,17 +0,0 @@
-@Library('salt@master-1.9') _
-
-runTestSuite(
-    ami_image_id: 'ami-07e12cf8c3e2dc24d',
-    concurrent_builds: 1,
-    distro_name: 'freebsd',
-    distro_version: '121',
-    env: env,
-    golden_images_branch: 'master',
-    jenkins_slave_label: 'kitchen-slave',
-    nox_env_name: 'runtests-zeromq',
-    nox_passthrough_opts: '--ssh-tests',
-    python_version: 'py3',
-    testrun_timeout: 6,
-    use_spot_instances: true)
-
-// vim: ft=groovy

+ 0 - 20
cicd/jenkins/kitchen-freebsd121-py3-pytest

@@ -1,20 +0,0 @@
-@Library('salt@master-1.9') _
-
-runTestSuite(
-    ami_image_id: 'ami-07e12cf8c3e2dc24d',
-    concurrent_builds: 1,
-    distro_name: 'freebsd',
-    distro_version: '121',
-    env: env,
-    golden_images_branch: 'master',
-    jenkins_slave_label: 'kitchen-slave',
-    nox_env_name: 'pytest-zeromq',
-    nox_passthrough_opts: '--ssh-tests',
-    python_version: 'py3',
-    //splits: ['unit', 'integration', 'multimaster'],
-    testrun_timeout: 6,
-    use_spot_instances: true,
-    //fast_slow_staged_testrun: true
-)
-
-// vim: ft=groovy

+ 0 - 19
cicd/jenkins/kitchen-macosxhighsierra-py3

@@ -1,19 +0,0 @@
-@Library('salt@master-1.9') _
-
-// Pre-nox pipeline
-runTestSuite(
-    concurrent_builds: 1,
-    distro_name: 'macosx',
-    distro_version: 'highsierra',
-    env: env,
-    golden_images_branch: 'master',
-    jenkins_slave_label: 'kitchen-slave-mac',
-    kitchen_platforms_file: '/var/jenkins/workspace/pre-golden-nox-platforms.yml',
-    nox_env_name: 'runtests-zeromq',
-    nox_passthrough_opts: '--ssh-tests',
-    python_version: 'py3',
-    run_full: params.runFull,
-    testrun_timeout: 6,
-    use_spot_instances: false)
-
-// vim: ft=groovy

+ 0 - 21
cicd/jenkins/kitchen-macosxhighsierra-py3-pytest

@@ -1,21 +0,0 @@
-@Library('salt@master-1.9') _
-
-// Pre-nox pipeline
-runTestSuite(
-    concurrent_builds: 1,
-    distro_name: 'macosx',
-    distro_version: 'highsierra',
-    env: env,
-    golden_images_branch: 'master',
-    jenkins_slave_label: 'kitchen-slave-mac',
-    kitchen_platforms_file: '/var/jenkins/workspace/pre-golden-nox-platforms.yml',
-    nox_env_name: 'pytest-zeromq',
-    nox_passthrough_opts: '--ssh-tests',
-    python_version: 'py3',
-    //splits: ['unit', 'integration', 'multimaster'],
-    testrun_timeout: 6,
-    use_spot_instances: false,
-    //fast_slow_staged_testrun: true
-)
-
-// vim: ft=groovy

+ 5 - 2
conf/minion

@@ -530,11 +530,14 @@
 # enabled and can be disabled by changing this value to False.
 #clean_dynamic_modules: True
 #
-# Normally, the minion is not isolated to any single environment on the master
+# Renamed from ``environment`` to ``saltenv``. If ``environment`` is used,
+# ``saltenv`` will take its value. If both are used, ``environment`` will be
+# ignored and ``saltenv`` will be used.
+# Normally the minion is not isolated to any single environment on the master
 # when running states, but the environment can be isolated on the minion side
 # by statically setting it. Remember that the recommended way to manage
 # environments is to isolate via the top file.
-#environment: None
+#saltenv: None
 #
 # Isolates the pillar environment on the minion side. This functions the same
 # as the environment setting, but for pillar instead of states.

+ 2 - 3
doc/_incl/requisite_incl.rst

@@ -4,7 +4,6 @@ following the :ref:`installation` and the
 
 .. admonition:: Stuck?
 
-    There are many ways to :ref:`get help from the Salt community
-    <salt-community>` including our
+    There are many ways to :ref:`salt-community` including our
     `mailing list <https://groups.google.com/forum/#!forum/salt-users>`_
-    and our `IRC channel <https://webchat.freenode.net/#salt>`_ #salt.
+    and our `IRC channel <https://webchat.freenode.net/#salt>`_ #salt.

BIN
doc/_static/salt-architecture.png


+ 1 - 0
doc/contents.rst

@@ -8,6 +8,7 @@ Salt Table of Contents
     :maxdepth: 2
 
     topics/index
+    topics/salt_system_architecture
     topics/installation/index
     topics/configuration/index
     topics/using_salt

+ 1 - 1
doc/man/salt-api.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-API" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-API" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-api \- salt-api Command
 .

+ 1 - 1
doc/man/salt-call.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-CALL" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-CALL" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-call \- salt-call Documentation
 .

+ 1 - 1
doc/man/salt-cloud.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-CLOUD" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-CLOUD" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-cloud \- Salt Cloud Command
 .

+ 1 - 1
doc/man/salt-cp.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-CP" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-CP" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-cp \- salt-cp Documentation
 .

+ 1 - 1
doc/man/salt-key.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-KEY" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-KEY" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-key \- salt-key Documentation
 .

+ 1 - 1
doc/man/salt-master.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-MASTER" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-MASTER" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-master \- salt-master Documentation
 .

+ 1 - 1
doc/man/salt-minion.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-MINION" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-MINION" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-minion \- salt-minion Documentation
 .

+ 1 - 1
doc/man/salt-proxy.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-PROXY" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-PROXY" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-proxy \- salt-proxy Documentation
 .

+ 1 - 1
doc/man/salt-run.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-RUN" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-RUN" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-run \- salt-run Documentation
 .

+ 1 - 1
doc/man/salt-ssh.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-SSH" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-SSH" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-ssh \- salt-ssh Documentation
 .

+ 1 - 1
doc/man/salt-syndic.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-SYNDIC" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-SYNDIC" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-syndic \- salt-syndic Documentation
 .

+ 1 - 1
doc/man/salt-unity.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT-UNITY" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT-UNITY" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt-unity \- salt-unity Command
 .

+ 1 - 1
doc/man/salt.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SALT" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SALT" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 salt \- salt
 .

Diff do ficheiro suprimidas por serem muito extensas
+ 391 - 158
doc/man/salt.7


+ 1 - 1
doc/man/spm.1

@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH "SPM" "1" "Oct 05, 2020" "3002" "Salt"
+.TH "SPM" "1" "Nov 14, 2020" "3002.2" "Salt"
 .SH NAME
 spm \- Salt Package Manager Command
 .

+ 1 - 0
doc/ref/beacons/all/index.rst

@@ -21,6 +21,7 @@ beacon modules
     haproxy
     inotify
     journald
+    junos_rre_keys
     load
     log_beacon
     memusage

+ 5 - 0
doc/ref/beacons/all/salt.beacons.junos_rre_keys.rst

@@ -0,0 +1,5 @@
+salt.beacons.junos_rre_keys module
+====================================
+
+.. automodule:: salt.beacons.junos_rre_keys
+    :members:

+ 8 - 6
doc/ref/configuration/master.rst

@@ -2525,18 +2525,20 @@ states is cluttering the logs. Set it to True to ignore them.
 
 Default: ``False``
 
-Automatically aggregate all states that have support for mod_aggregate by
-setting to ``True``. Or pass a list of state module names to automatically
-aggregate just those types.
+Automatically aggregate all states that have support for ``mod_aggregate`` by
+setting to ``True``.
 
 .. code-block:: yaml
 
-    state_aggregate:
-      - pkg
+    state_aggregate: True
+
+Or pass a list of state module names to automatically
+aggregate just those types.
 
 .. code-block:: yaml
 
-    state_aggregate: True
+    state_aggregate:
+      - pkg
 
 .. conf_master:: state_events
 

+ 32 - 0
doc/ref/configuration/minion.rst

@@ -103,6 +103,16 @@ The option can also be set to a list of masters, enabling
           - address2
         master_type: failover
 
+.. conf_minion:: color
+
+``color``
+---------
+
+Default: ``True``
+
+By default output is colored. To disable colored output, set the color value to
+``False``.
+
 .. conf_minion:: ipv6
 
 ``ipv6``
@@ -2179,6 +2189,28 @@ or just post what changes are going to be made.
 
     test: False
 
+.. conf_minion:: state_aggregate
+
+``state_aggregate``
+-------------------
+
+Default: ``False``
+
+Automatically aggregate all states that have support for ``mod_aggregate`` by
+setting to ``True``.
+
+.. code-block:: yaml
+
+    state_aggregate: True
+
+Or pass a list of state module names to automatically
+aggregate just those types.
+
+.. code-block:: yaml
+
+    state_aggregate:
+      - pkg
+
 .. conf_minion:: state_verbose
 
 ``state_verbose``

+ 14 - 2
doc/security/index.rst

@@ -114,8 +114,20 @@ quickly and safely as is possible.
     lists. The announcement contains a description of the issue and a link to
     the full release documentation and download locations.
 
+.. _saltstack_security_announcements:
+
 Receiving security announcements
 ================================
 
-The fastest place to receive security announcements is via the `salt-announce`_
-mailing list. This list is low-traffic.
+The following mailing lists, per the previous tasks identified in our response
+procedure, will receive security-relevant notifications:
+
+* `salt-packagers`_
+* `salt-users`_
+* `salt-announce`_
+
+In addition to the mailing lists, SaltStack also provides the following resources:
+
+* `SaltStack Security Announcements <https://www.saltstack.com/security-announcements/>`__ landing page
+* `SaltStack Security RSS Feed <http://www.saltstack.com/feed/?post_type=security>`__
+* `SaltStack Community Slack Workspace <http://saltstackcommunity.slack.com/>`__

+ 14 - 0
doc/topics/development/contributing.rst

@@ -250,6 +250,19 @@ Fork a Repo Guide_>`_ and is well worth reading.
         non-fast-forward issue, will likely add extra commits to the pull
         request which were not part of your changes.
 
+#.  Check `Github Actions`_ status on your fork
+
+    By now, and in case you haven't disabled `Github Actions`_, you should have at least 3
+    workflows running on your fork.
+
+      #. ``Pre-Commit`` - The pre-commit checks salt uses to validate several parts of its codebase
+      #. ``Docs`` - Builds Salt's Documentation
+      #. ``Lint`` - Runs lint checks agraint the salt codebase
+
+    Go to https://github.com/my-account/salt/actions to check them out.
+    These will give you an early warning in case something is not right, giving you a chance to fix
+    them even before you open a pull request against the Salt repository.
+
 #.  Find the branch on your GitHub salt fork.
 
     https://github.com/my-account/salt/branches/fix-broken-thing
@@ -468,3 +481,4 @@ Script, see the Bootstrap Script's `Contributing Guidelines`_.
 .. _`#salt on freenode`: https://webchat.freenode.net/#salt
 .. _`saltstack meetup`: https://www.meetup.com/pro/saltstack/
 .. _`saltstack on serverfault`: https://serverfault.com/questions/tagged/saltstack
+.. _`Github Actions`: https://docs.github.com/actions

+ 19 - 21
doc/topics/development/conventions/style.rst

@@ -18,31 +18,21 @@ to treat others without respect, especially people working to improve Salt)!
 Linting
 =======
 
-Most Salt style conventions are codified in Salt's ``.testing.pylintrc`` file.
-Salt's pylint file has two dependencies: pylint_ and saltpylint_. You can
-install these dependencies with ``pip``:
+Most Salt style conventions are codified in Salt's ``.pylintrc`` file.
+Salt's pylint file has two dependencies: pylint_ and saltpylint_, however, linting should
+be done using :ref:`nox <getting_set_up_for_tests>`.
 
 .. code-block:: bash
 
-    pip install pylint
-    pip install saltpylint
+   nox -e lint
 
-The ``.testing.pylintrc`` file is found in the root of the Salt project and can
-be passed as an argument to the pylint_ program as follows:
+One can target either salt's source code or the test suite(different pylint rules apply):
 
 .. code-block:: bash
 
-    pylint --rcfile=/path/to/salt/.testing.pylintrc salt/dir/to/lint
+   nox -e lint-salt
+   nox -e lint-tests
 
-.. note::
-
-    There are two pylint files in the ``salt`` directory. One is the
-    ``.pylintrc`` file and the other is the ``.testing.pylintrc`` file. The
-    tests that run in Jenkins against GitHub Pull Requests use
-    ``.testing.pylintrc``. The ``testing.pylintrc`` file is a little less
-    strict than the ``.pylintrc`` and is used to make it easier for contributors
-    to submit changes. The ``.pylintrc`` file can be used for linting, but the
-    ``testing.pylintrc`` is the source of truth when submitting pull requests.
 
 .. _pylint: https://www.pylint.org/
 .. _saltpylint: https://github.com/saltstack/salt-pylint
@@ -66,15 +56,23 @@ Formatting Strings
 
 All strings which require formatting should use the `.format` string method:
 
+Please do NOT use printf formatting, unless it's a log message.
+
+Good:
+
 .. code-block:: python
 
     data = "some text"
-    more = "{0} and then some".format(data)
+    more = "{} and then some".format(data)
+    log.debug("%s and then some", data)
 
-Make sure to use indices or identifiers in the format brackets, since empty
-brackets are not supported by python 2.6.
+Bad:
+
+.. code-block:: python
+
+    data = "some text"
+    log.debug("{} and then some".format(data))
 
-Please do NOT use printf formatting.
 
 Docstring Conventions
 ---------------------

+ 7 - 1
doc/topics/hardening.rst

@@ -10,6 +10,11 @@ heavily on how you use Salt, where you use Salt, how your team is structured,
 where you get data from, and what kinds of access (internal and external) you
 require.
 
+.. important::
+
+    Refer to the :ref:`saltstack_security_announcements` documentation in order to stay updated
+    and secure.
+
 .. warning::
 
     For historical reasons, Salt requires PyCrypto as a "lowest common
@@ -43,7 +48,8 @@ Salt hardening tips
 ===================
 
 - Subscribe to `salt-users`_ or `salt-announce`_ so you know when new Salt
-  releases are available. Keep your systems up-to-date with the latest patches.
+  releases are available.
+- Keep your systems up-to-date with the latest patches.
 - Use Salt's Client :ref:`ACL system <acl>` to avoid having to give out root
   access in order to run Salt commands.
 - Use Salt's Client :ref:`ACL system <acl>` to restrict which users can run what commands.

+ 2 - 0
doc/topics/index.rst

@@ -1,3 +1,5 @@
+.. _`Apache 2.0 license`: http://www.apache.org/licenses/LICENSE-2.0.html
+
 ====================
 Introduction to Salt
 ====================

+ 13 - 0
doc/topics/releases/2019.2.6.rst

@@ -0,0 +1,13 @@
+.. _release-2019-2-6:
+
+===========================
+Salt 2019.2.6 Release Notes
+===========================
+
+Version 2019.2.6 is a CVE fix release for :ref:`2019.2.0 <release-2019-2-0>`.
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)

+ 15 - 0
doc/topics/releases/2019.2.7.rst

@@ -0,0 +1,15 @@
+.. _release-2019-2-7:
+
+===========================
+Salt 2019.2.7 Release Notes
+===========================
+
+Version 2019.2.7 is a CVE fix release for :ref:`2019.2.0 <release-2019-2-0>`.
+
+Fixed
+-----
+
+- Properly validate eauth credentials and tokens along with their ACLs. 
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)

+ 13 - 0
doc/topics/releases/2019.2.8.rst

@@ -0,0 +1,13 @@
+.. _release-2019-2-8:
+
+===========================
+Salt 2019.2.8 Release Notes
+===========================
+
+Version 2019.2.8 is a bugfix release for :ref:`2019.2.0 <release-2019-2-0>`.
+
+Fixed
+-----
+
+- Fixes salt-ssh authentication when using tty (#58922)
+

+ 13 - 0
doc/topics/releases/3000.4.rst

@@ -0,0 +1,13 @@
+.. _release-3000-4:
+
+=========================
+Salt 3000.4 Release Notes
+=========================
+
+Version 3000.4 is a CVE fix release for :ref:`3000 <release-3000>`.
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)

+ 15 - 0
doc/topics/releases/3000.5.rst

@@ -0,0 +1,15 @@
+.. _release-3000-5:
+
+=========================
+Salt 3000.5 Release Notes
+=========================
+
+Version 3000.5 is a CVE fix release for :ref:`3000 <release-3000>`.
+
+Fixed
+-----
+
+- Properly validate eauth credentials and tokens along with their ACLs. 
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)

+ 13 - 0
doc/topics/releases/3000.6.rst

@@ -0,0 +1,13 @@
+.. _release-3000-6:
+
+=========================
+Salt 3000.6 Release Notes
+=========================
+
+Version 3000.6 is a bugfix release for :ref:`3000 <release-3000>`.
+
+Fixed
+-----
+
+- Fixes salt-ssh authentication when using tty (#58922)
+

+ 13 - 0
doc/topics/releases/3001.2.rst

@@ -0,0 +1,13 @@
+.. _release-3001-2:
+
+=========================
+Salt 3001.2 Release Notes
+=========================
+
+Version 3001.2 is a CVE fix release for :ref:`3001 <release-3001>`.
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)

+ 15 - 0
doc/topics/releases/3001.3.rst

@@ -0,0 +1,15 @@
+.. _release-3001-3:
+
+=========================
+Salt 3001.3 Release Notes
+=========================
+
+Version 3001.3 is a CVE fix release for :ref:`3001 <release-3001>`.
+
+Fixed
+-----
+
+- Properly validate eauth credentials and tokens along with their ACLs.
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)

+ 13 - 0
doc/topics/releases/3001.4.rst

@@ -0,0 +1,13 @@
+.. _release-3001-4:
+
+=========================
+Salt 3001.4 Release Notes
+=========================
+
+Version 3001.4 is a bugfix release for :ref:`3001 <release-3001>`.
+
+Fixed
+-----
+
+- Fixes salt-ssh authentication when using tty (#58922)
+

+ 17 - 0
doc/topics/releases/3002.1.rst

@@ -0,0 +1,17 @@
+.. _release-3002-1:
+
+=========================
+Salt 3002.1 Release Notes
+=========================
+
+Version 3002.1 is a CVE fix release for :ref:`3002 <release-3002>`.
+
+Fixed
+-----
+
+- Prevent shell injections in netapi ssh client (cve-2020-16846)
+- Prevent creating world readable private keys with the tls execution module. (cve-2020-17490)
+- Properly validate eauth credentials and tokens along with their ACLs. 
+  Prior to this change eauth was not properly validated when calling
+  Salt ssh via the salt-api. Any value for 'eauth' or 'token' would allow a user
+  to bypass authentication and make calls to Salt ssh. (CVE-2020-25592)

+ 28 - 0
doc/topics/releases/3002.2.rst

@@ -0,0 +1,28 @@
+.. _release-3002-2:
+
+=========================
+Salt 3002.2 Release Notes
+=========================
+
+Version 3002.2 is a bugfix release for :ref:`3002 <release-3002>`.
+
+Fixed
+-----
+
+- Change dict check to isinstance instead of type() for key_values in file.keyvalue. (#57758)
+- Fail when func_ret is False when using the new module.run syntax. (#57768)
+- Fix comparison of certificate values (#58296)
+- When using ssh_pre_flight if there is a failure, fail on retcode not stderr. (#58439)
+- Fix use of unauthd cached vmware service instance (#58691)
+- Removing use of undefined varilable in utils/slack.py. (#58753)
+- Restored the ability to specify the amount of extents for a Logical
+  Volume as a percentage. (#58759)
+- Ensuring that the version check function is run a second time in all the user related functions incase the user being managed is the connection user and the password has been updated. (#58773)
+- Allow bytes in gpg renderer (#58794)
+- Fix issue where win_wua module fails to load when BITS is set to Manual (#58848)
+- Ensure that elasticsearch.index_exists is available before loading the elasticsearch returner. (#58851)
+- Log a different object when debugging if we're using disk cache vs memory cache. The disk cache pillar class has the dict object but the cache pillar object which is used with the memory cache does not include a _dict obeject because it is a dict already. (#58861)
+- Do not generate grains for every job run on Windows minions. This makes Windows
+  conform more to the way posix OSes work today. (#58904)
+- Fixes salt-ssh authentication when using tty (#58922)
+- Revert LazyLoader finalizer. Removed the weakref.finalizer code. On some occasions, the finalized would run when trying to load a new module, firing a race condition. (#58947)

+ 8 - 0
doc/topics/releases/3003.rst

@@ -0,0 +1,8 @@
+.. _release-3003:
+
+============================================
+Salt 3003 Release Notes - Codename Aluminium
+============================================
+
+Salt 3003 is an *unreleased* upcoming feature release.
+

+ 1 - 1
doc/topics/releases/index.rst

@@ -41,7 +41,7 @@ Upcoming Release
     :maxdepth: 1
     :glob:
 
-    3002*
+    3003*
 
 .. seealso:: :ref:`Legacy salt-cloud release docs <legacy-salt-cloud-release-notes>`
 

+ 277 - 0
doc/topics/salt_system_architecture.rst

@@ -0,0 +1,277 @@
+.. _salt-system-architecture:
+
+========================
+Salt system architecture
+========================
+
+Overview
+========
+This page provides a high-level overview of the Salt system architecture and its
+different components.
+
+
+What is Salt?
+=============
+Salt is a Python-based open-source remote execution framework used for:
+
+* Configuration management
+* Automation
+* Provisioning
+* Orchestration
+
+
+The Salt system architecture
+============================
+The following diagram shows the primary components of the basic Salt
+architecture:
+
+.. image:: /_static/salt-architecture.png
+    :width: 80%
+
+The following sections describe some of the core components of the Salt
+architecture.
+
+
+Salt Masters and Salt Minions
+-----------------------------
+Salt uses the master-client model in which a master issues commands to a client
+and the client executes the command. In the Salt ecosystem, the Salt Master is a
+server that is running the ``salt-master`` service. It issues commands to one or
+more Salt Minions, which are servers that are running the ``salt-minion``
+service and that are registered with that particular Salt Master.
+
+Another way to describe Salt is as a publisher-subscriber model. The master
+publishes jobs that need to be executed and Salt Minions subscribe to those
+jobs. When a specific job applies to that minion, it will execute the job.
+
+When a minion finishes executing a job, it sends job return data back to the
+master. Salt has two ports used by default for the minions to communicate with
+their master(s). These ports work in concert to receive and deliver data to the
+Message Bus. Salt’s message bus is ZeroMQ, which creates an asynchronous network
+topology to provide the fastest communication possible.
+
+
+Targets and grains
+------------------
+The master indicates which minions should execute the job by defining a
+*target*. A target is the group of minions, across one or many masters, that a
+job's Salt command applies to.
+
+.. Note::
+    A master can also be managed like a minion and can be a target if it is
+    running the ``salt-minion`` service.
+
+The following is an example of one of the many kinds of commands that a master
+might issue to a minion. This command indicates that all minions should install
+the Vim application:
+
+.. code-block:: bash
+
+    salt -v '*' pkg.install vim
+
+In this case the glob ``'*'`` is the target, which indicates that all minions
+should execute this command. Many other targeting options are available,
+including targeting a specific minion by its ID or targeting minions by their
+shared traits or characteristics (called *grains* in Salt).
+
+Salt comes with an interface to derive information about the underlying system.
+This is called the *grains interface*, because it presents Salt with grains of
+information. Grains are collected for the operating system, domain name,
+IP address, kernel, OS type, memory, and many other system properties. You can
+also create your own custom grain data.
+
+Grain data is relatively static. However, grain data is refreshed when system
+information changes (such as network settings) or when a new value is assigned
+to a custom grain.
+
+
+Open event system (event bus)
+-----------------------------
+The event system is used for inter-process communication between the Salt Master
+and Salt Minions. In the event system:
+
+* Events are seen by both the master and minions.
+* Events can be monitored and evaluated by both.
+
+The event bus lays the groundwork for orchestration and real-time monitoring.
+
+All minions see jobs and results by subscribing to events published on the event
+system. Salt uses a pluggable event system with two layers:
+
+* **ZeroMQ (0MQ)** - The current default socket-level library providing a
+  flexible transport layer.
+* **Tornado** - Full TCP-based transport layer event system.
+
+One of the greatest strengths of Salt is the speed of execution. The event
+system’s communication bus is more efficient than running a higher-level web
+service (http). The remote execution system is the component that all components
+are built upon, allowing for decentralized remote execution to spread load
+across resources.
+
+
+Salt states
+-----------
+In addition to remote execution, Salt provides another method for configuring
+minions by declaring which *state* a minion should be in, otherwise referred to
+as *Salt states*. Salt states make configuration management possible. You can
+use Salt states to deploy and manage infrastructure with simple YAML files.
+Using states, you can automate recursive and predictable tasks by queueing jobs
+for Salt to implement without needing user input. You can also add more complex
+conditional logic to state files with Jinja.
+
+To illustrate the subtle differences between remote execution and configuration
+management, take the command referenced in the previous section about
+`Targets and grains`_ in which Salt installed the application Vim on all
+minions:
+
+.. list-table::
+  :widths: 25 25 50
+  :header-rows: 1
+
+  * - Methodology
+    - Implementation
+    - Result
+
+  * - Remote execution
+    - * Run ``salt -v '*' pkg.install vim`` from the terminal
+    - * Remotely installs Vim on the targeted minions
+
+  * - Configuration management
+    - * Write a YAML state file that checks whether Vim is installed
+      * This state file is then applied to the targeted minions
+    - * Ensures that Vim is always installed on the targeted minions
+      * Salt analyzes the state file and determines what actions need to be
+        taken to ensure the minion complies with the state declarations
+      * If Vim is not installed, it automates the processes to install Vim on
+        the targeted minions
+
+The state file that verifies Vim is installed might look like the following
+example:
+
+.. code-block:: yaml
+
+    # File:/srv/salt/vim_install.sls
+
+    install_vim_now:
+      pkg.installed:
+        - pkgs:
+          - vim
+
+To apply this state to a minion, you would use the ``state.apply`` module, such
+as in the following example:
+
+.. code-block:: bash
+
+    salt '*' state.apply vim_install
+
+This command applies the ``vim_install`` state to all minions.
+
+*Formulas* are collections of states that work in harmony to configure a minion
+or application. For example, one state might trigger another state.
+
+
+The Top file
+------------
+It is not practical to manually run each state individually targeting specific
+minions each time. Some environments have hundreds of state files targeting
+thousands of minions.
+
+Salt offers two features to help with this scaling problem:
+
+* **The top.sls file** - Maps Salt states to their applicable minions.
+* **Highstate execution** - Runs all Salt states outlined in ``top.sls`` in a
+  single execution.
+
+The top file maps which states should be applied to different minions in certain
+environments. The following is an example of a simple top file:
+
+.. code-block:: yaml
+
+    # File: /srv/salt/top.sls
+
+    base:
+      '*':
+        - all_server_setup
+
+      '01webserver':
+        - web_server_setup
+
+In this example, ``base`` refers to the Salt environment, which is the default.
+You can specify more than one environment as needed, such as prod, dev, QA, etc.
+
+Groups of minions are specified under the environment, and states are listed for
+each set of minions. This top file indicates that a state called
+``all_server_setup`` should be applied to all minions ``'*'`` and the state
+called ``web_server_setup`` should be applied to the ``01webserver`` minion.
+
+To run the Salt command, you would use the state.highstate function:
+
+.. code-block:: bash
+
+    salt \* state.highstate
+
+This command applies the top file to the targeted minions.
+
+
+Salt pillar
+-----------
+Salt’s pillar feature takes data defined on the Salt Master and distributes it
+to minions as needed. Pillar is primarily used to store secrets or other highly
+sensitive data, such as account credentials, cryptographic keys, or passwords.
+Pillar is also useful for storing non-secret data that you don't want to place
+directly in your state files, such as configuration data.
+
+Salt pillar brings data into the cluster from the opposite direction as grains.
+While grains are data generated from the minion, the pillar is data generated
+from the master.
+
+Pillars are organized similarly to states in a Pillar state tree, where
+``top.sls`` acts to coordinate pillar data to environments and minions privy to
+the data. Information transferred using pillar has a dictionary generated for
+the targeted minion and encrypted with that minion’s key for secure data
+transfer. Pillar data is encrypted on a per-minion basis, which makes it useful
+for storing sensitive data specific to a particular minion.
+
+
+Beacons and reactors
+--------------------
+The beacon system is a monitoring tool that can listen for a variety of system
+processes on Salt Minions. Beacons can trigger reactors which can then help
+implement a change or troubleshoot an issue. For example, if a service’s
+response times out, the reactor system can restart the service.
+
+Beacons are used for a variety of purposes, including:
+
+* Automated reporting
+* Error log delivery
+* Microservice monitoring
+* User shell activity
+* Resource monitoring
+
+When coupled with reactors, beacons can create automated pre-written responses
+to infrastructure and application issues. Reactors expand Salt with automated
+responses using pre-written remediation states.
+
+Reactors can be applied in a variety of scenarios:
+
+* Infrastructure scaling
+* Notifying administrators
+* Restarting failed applications
+* Automatic rollback
+
+When both beacons and reactors are used together , you can create unique states
+customized to your specific needs.
+
+
+Salt runners and orchestration
+------------------------------
+Salt runners are convenience applications executed with the ``salt-run``
+command. Salt runners work similarly to Salt execution modules. However, they
+execute on the Salt Master instead of the Salt Minions. A Salt runner can be a
+simple client call or a complex application.
+
+Salt provides the ability to orchestrate system administrative tasks throughout
+the enterprise. Orchestration makes it possible to coordinate the activities of
+multiple machines from a central place. It has the added advantage of being able
+to control the sequence of when certain configuration events occur.
+Orchestration states execute on the master using the state runner module.

+ 1 - 0
doc/topics/ssh/roster.rst

@@ -69,6 +69,7 @@ The information which can be stored in a roster ``target`` is the following:
         set_path:    # Set the path environment variable, to ensure the expected python
                      # binary is in the salt-ssh path, when running the command.
                      # Example: '$PATH:/usr/local/bin/'. Added in 3001 Release.
+        ssh_options: # List of options (as 'option=argument') to pass to ssh.
 
 
 .. _ssh_pre_flight:

+ 1 - 0
requirements/base.txt

@@ -4,3 +4,4 @@ PyYAML
 MarkupSafe
 requests>=1.0.0
 distro>=1.5
+contextvars; python_version < '3.7'

+ 1 - 1
requirements/pytest.txt

@@ -2,6 +2,6 @@ mock >= 3.0.0
 # PyTest
 pytest >= 6.1.0
 pytest-salt
-pytest-salt-factories >= 0.93.0
+pytest-salt-factories >= 0.99.0
 pytest-tempdir >= 2019.10.12
 pytest-helpers-namespace >= 2019.1.8

+ 2 - 1
requirements/static/ci/linux.in

@@ -25,7 +25,8 @@ passlib
 paramiko>=2.1.6
 pycurl
 pygit2<=0.28.2; python_version < '3.8'
-pygit2>=1.2.0; python_version >= '3.8'
+pygit2<1.1.0; python_version == '3.8'
+pygit2>=1.2.0; python_version >= '3.9'
 pyiface
 pyinotify
 python-etcd>0.4.2

+ 1 - 2
requirements/static/ci/py3.5/cloud.txt

@@ -4,11 +4,10 @@
 #
 #    pip-compile -o requirements/static/ci/py3.5/cloud.txt -v requirements/static/ci/cloud.in
 #
-asn1crypto==0.24.0        # via cryptography
 certifi==2019.3.9         # via requests
 cffi==1.12.2              # via cryptography
 chardet==3.0.4            # via requests
-cryptography==2.6.1       # via requests-ntlm, smbprotocol
+cryptography==3.2.1       # via requests-ntlm, smbprotocol
 idna==2.8                 # via requests
 netaddr==0.7.19
 ntlm-auth==1.3.0          # via requests-ntlm, smbprotocol

+ 8 - 6
requirements/static/ci/py3.5/darwin.txt

@@ -7,8 +7,8 @@
 apache-libcloud==2.4.0
 appdirs==1.4.3            # via virtualenv
 argh==0.26.2              # via watchdog
-asn1crypto==1.3.0
-attrs==19.1.0             # via pytest
+asn1crypto==1.3.0         # via certvalidator, oscrypto
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 bcrypt==3.1.6             # via paramiko
@@ -27,8 +27,9 @@ cherrypy==17.4.1
 click==7.0                # via geomet
 clustershell==1.8.1
 contextlib2==0.6.0.post1
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -44,6 +45,7 @@ gitdb2==2.0.6
 gitpython==2.1.15
 google-auth==1.6.3        # via kubernetes
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.3.1  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -89,10 +91,10 @@ pyopenssl==19.0.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -100,7 +102,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 7 - 5
requirements/static/ci/py3.5/freebsd.txt

@@ -8,7 +8,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.functools-lru-cache==1.5
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
@@ -26,8 +26,9 @@ cheetah3==3.1.0
 cheroot==6.5.4
 cherrypy==17.3.0
 contextlib2==0.5.5
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -43,6 +44,7 @@ gitpython==2.1.11
 google-auth==1.6.3        # via kubernetes
 hgtools==8.1.1
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -91,10 +93,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -102,7 +104,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 7 - 5
requirements/static/ci/py3.5/linux.txt

@@ -9,7 +9,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 azure-applicationinsights==0.1.0  # via azure
 azure-batch==4.1.3        # via azure
@@ -110,8 +110,9 @@ cheroot==6.5.4
 cherrypy==17.3.0
 click==7.1.1              # via geomet
 contextlib2==0.5.5
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -128,6 +129,7 @@ gitpython==2.1.11
 google-auth==1.6.3        # via kubernetes
 hgtools==8.1.1
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -184,10 +186,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -195,7 +197,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests-oauthlib==1.3.0  # via msrest
 requests==2.21.0
 responses==0.10.6         # via moto

+ 6 - 5
requirements/static/ci/py3.5/windows.txt

@@ -5,9 +5,8 @@
 #    pip-compile -o requirements/static/ci/py3.5/windows.txt -v requirements/static/pkg/py3.5/windows.txt requirements/pytest.txt requirements/static/ci/windows.in
 #
 appdirs==1.4.4            # via virtualenv
-asn1crypto==1.3.0
 atomicwrites==1.3.0       # via pytest
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 boto3==1.13.5
@@ -24,7 +23,8 @@ cherrypy==17.4.1
 click==7.1.2              # via geomet
 colorama==0.4.1           # via pytest
 contextlib2==0.6.0.post1
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dmidecode==0.9.0
@@ -41,6 +41,7 @@ gitdb2==2.0.5
 gitpython==2.1.10
 google-auth==1.6.3        # via kubernetes
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -83,10 +84,10 @@ pymysql==0.9.3
 pyopenssl==19.0.0
 pyparsing==2.4.5          # via packaging
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4

+ 1 - 2
requirements/static/ci/py3.6/cloud.txt

@@ -4,11 +4,10 @@
 #
 #    pip-compile -o requirements/static/ci/py3.6/cloud.txt -v requirements/static/ci/cloud.in
 #
-asn1crypto==0.24.0        # via cryptography
 certifi==2019.3.9         # via requests
 cffi==1.12.2              # via cryptography
 chardet==3.0.4            # via requests
-cryptography==2.6.1       # via requests-ntlm, smbprotocol
+cryptography==3.2.1       # via requests-ntlm, smbprotocol
 idna==2.8                 # via requests
 netaddr==0.7.19
 ntlm-auth==1.3.0          # via requests-ntlm, smbprotocol

+ 8 - 6
requirements/static/ci/py3.6/darwin.txt

@@ -7,8 +7,8 @@
 apache-libcloud==2.4.0
 appdirs==1.4.3            # via virtualenv
 argh==0.26.2              # via watchdog
-asn1crypto==1.3.0
-attrs==19.1.0             # via pytest
+asn1crypto==1.3.0         # via certvalidator, oscrypto
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 bcrypt==3.1.6             # via paramiko
@@ -29,8 +29,9 @@ click==7.0                # via geomet
 clustershell==1.8.1
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.6.0.post1
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -46,6 +47,7 @@ gitdb2==2.0.6
 gitpython==2.1.15
 google-auth==1.6.3        # via kubernetes
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.3.1  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -94,10 +96,10 @@ pyopenssl==19.0.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -105,7 +107,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 7 - 5
requirements/static/ci/py3.6/freebsd.txt

@@ -8,7 +8,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.functools-lru-cache==1.5
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
@@ -28,8 +28,9 @@ cherrypy==17.3.0
 ciscoconfparse==1.5.19    # via napalm
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -45,6 +46,7 @@ gitpython==2.1.11
 google-auth==1.6.3        # via kubernetes
 hgtools==8.1.1
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -96,10 +98,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -107,7 +109,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 7 - 5
requirements/static/ci/py3.6/linux.txt

@@ -9,7 +9,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 azure-applicationinsights==0.1.0  # via azure
 azure-batch==4.1.3        # via azure
@@ -112,8 +112,9 @@ ciscoconfparse==1.5.19    # via napalm
 click==7.1.1              # via geomet
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
+contextvars==2.4 ; python_version < "3.7"
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -130,6 +131,7 @@ gitpython==2.1.11
 google-auth==1.6.3        # via kubernetes
 hgtools==8.1.1
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -188,10 +190,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -199,7 +201,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests-oauthlib==1.3.0  # via msrest
 requests==2.21.0
 responses==0.10.6         # via moto

+ 6 - 5
requirements/static/ci/py3.6/windows.txt

@@ -5,9 +5,8 @@
 #    pip-compile -o requirements/static/ci/py3.6/windows.txt -v requirements/static/pkg/py3.6/windows.txt requirements/pytest.txt requirements/static/ci/windows.in
 #
 appdirs==1.4.4            # via virtualenv
-asn1crypto==1.3.0
 atomicwrites==1.3.0       # via pytest
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 boto3==1.13.5
@@ -24,7 +23,8 @@ cherrypy==17.4.1
 click==7.1.2              # via geomet
 colorama==0.4.1           # via pytest
 contextlib2==0.6.0.post1
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dmidecode==0.9.0
@@ -41,6 +41,7 @@ gitdb2==2.0.5
 gitpython==2.1.10
 google-auth==1.6.3        # via kubernetes
 idna==2.8
+immutables==0.14
 importlib-metadata==0.23  # via importlib-resources, pluggy, pytest, virtualenv
 importlib-resources==1.5.0  # via virtualenv
 iniconfig==1.0.1          # via pytest
@@ -82,10 +83,10 @@ pymysql==0.9.3
 pyopenssl==19.0.0
 pyparsing==2.4.5          # via packaging
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4

+ 1 - 2
requirements/static/ci/py3.7/cloud.txt

@@ -4,11 +4,10 @@
 #
 #    pip-compile -o requirements/static/ci/py3.7/cloud.txt -v requirements/static/ci/cloud.in
 #
-asn1crypto==0.24.0        # via cryptography
 certifi==2019.3.9         # via requests
 cffi==1.12.2              # via cryptography
 chardet==3.0.4            # via requests
-cryptography==2.6.1       # via requests-ntlm, smbprotocol
+cryptography==3.2.1       # via requests-ntlm, smbprotocol
 idna==2.8                 # via requests
 netaddr==0.7.19
 ntlm-auth==1.3.0          # via requests-ntlm, smbprotocol

+ 6 - 6
requirements/static/ci/py3.7/darwin.txt

@@ -7,8 +7,8 @@
 apache-libcloud==2.4.0
 appdirs==1.4.3            # via virtualenv
 argh==0.26.2              # via watchdog
-asn1crypto==1.3.0
-attrs==19.1.0             # via pytest
+asn1crypto==1.3.0         # via certvalidator, oscrypto
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 bcrypt==3.1.6             # via paramiko
 boto3==1.13.5
@@ -29,7 +29,7 @@ clustershell==1.8.1
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.6.0.post1
 croniter==0.3.29
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -92,10 +92,10 @@ pyopenssl==19.0.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -103,7 +103,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 5 - 5
requirements/static/ci/py3.7/freebsd.txt

@@ -8,7 +8,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.functools-lru-cache==1.5
 bcrypt==3.1.6             # via paramiko
@@ -28,7 +28,7 @@ ciscoconfparse==1.5.19    # via napalm
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -94,10 +94,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -105,7 +105,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 5 - 5
requirements/static/ci/py3.7/linux.txt

@@ -9,7 +9,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 azure-applicationinsights==0.1.0  # via azure
 azure-batch==4.1.3        # via azure
@@ -112,7 +112,7 @@ click==7.1.1              # via geomet
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -186,10 +186,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -197,7 +197,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests-oauthlib==1.3.0  # via msrest
 requests==2.21.0
 responses==0.10.6         # via moto

+ 4 - 5
requirements/static/ci/py3.7/windows.txt

@@ -5,9 +5,8 @@
 #    pip-compile -o requirements/static/ci/py3.7/windows.txt -v requirements/static/pkg/py3.7/windows.txt requirements/pytest.txt requirements/static/ci/windows.in
 #
 appdirs==1.4.4            # via virtualenv
-asn1crypto==1.3.0
 atomicwrites==1.3.0       # via pytest
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 boto3==1.13.5
 boto==2.49.0
@@ -23,7 +22,7 @@ cherrypy==17.4.1
 click==7.1.2              # via geomet
 colorama==0.4.1           # via pytest
 contextlib2==0.6.0.post1
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dmidecode==0.9.0
@@ -80,10 +79,10 @@ pymysql==0.9.3
 pyopenssl==19.0.0
 pyparsing==2.4.5          # via packaging
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4

+ 1 - 2
requirements/static/ci/py3.8/cloud.txt

@@ -4,11 +4,10 @@
 #
 #    pip-compile -o requirements/static/ci/py3.8/cloud.txt -v requirements/static/ci/cloud.in
 #
-asn1crypto==0.24.0        # via cryptography
 certifi==2019.3.9         # via requests
 cffi==1.12.2              # via cryptography
 chardet==3.0.4            # via requests
-cryptography==2.6.1       # via requests-ntlm, smbprotocol
+cryptography==3.2.1       # via requests-ntlm, smbprotocol
 idna==2.8                 # via requests
 netaddr==0.7.19
 ntlm-auth==1.3.0          # via requests-ntlm, smbprotocol

+ 6 - 6
requirements/static/ci/py3.8/darwin.txt

@@ -7,8 +7,8 @@
 apache-libcloud==2.4.0
 appdirs==1.4.3            # via virtualenv
 argh==0.26.2              # via watchdog
-asn1crypto==1.3.0
-attrs==19.1.0             # via pytest
+asn1crypto==1.3.0         # via certvalidator, oscrypto
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 bcrypt==3.1.6             # via paramiko
 boto3==1.13.5
@@ -29,7 +29,7 @@ clustershell==1.8.1
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.6.0.post1
 croniter==0.3.29
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -91,10 +91,10 @@ pyopenssl==19.0.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -102,7 +102,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.0 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 5 - 5
requirements/static/ci/py3.8/freebsd.txt

@@ -8,7 +8,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.functools-lru-cache==1.5
 bcrypt==3.1.6             # via paramiko
@@ -28,7 +28,7 @@ ciscoconfparse==1.5.19    # via napalm
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -93,10 +93,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -104,7 +104,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.0 ; python_version < "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 6 - 7
requirements/static/ci/py3.8/linux.txt

@@ -9,7 +9,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 azure-applicationinsights==0.1.0  # via azure
 azure-batch==4.1.3        # via azure
@@ -98,7 +98,6 @@ bcrypt==3.1.6             # via paramiko
 boto3==1.13.5
 boto==2.49.0
 botocore==1.16.26         # via boto3, moto, s3transfer
-cached-property==1.5.1    # via pygit2
 cachetools==3.1.0         # via google-auth
 cassandra-driver==3.23.0
 certifi==2020.6.20
@@ -113,7 +112,7 @@ click==7.1.1              # via geomet
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -177,7 +176,7 @@ pycryptodome==3.8.1       # via python-jose
 pycryptodomex==3.9.8
 pycurl==7.43.0.6
 pyeapi==0.8.3             # via napalm
-pygit2==1.2.0 ; python_version >= "3.8"
+pygit2==1.0.3 ; python_version == "3.8"
 pyiface==0.0.11
 pyinotify==0.9.6
 pyjwt==1.7.1              # via adal
@@ -186,10 +185,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -197,7 +196,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.0 ; python_version < "3.9"
 requests-oauthlib==1.3.0  # via msrest
 requests==2.21.0
 responses==0.10.6         # via moto

+ 2 - 3
requirements/static/ci/py3.9/cloud.txt

@@ -4,11 +4,10 @@
 #
 #    pip-compile -o requirements/static/ci/py3.9/cloud.txt -v requirements/static/ci/cloud.in
 #
-asn1crypto==0.24.0        # via cryptography
 certifi==2019.3.9         # via requests
-cffi==1.12.2              # via cryptography
+cffi==1.14.3              # via cryptography
 chardet==3.0.4            # via requests
-cryptography==2.6.1       # via requests-ntlm, smbprotocol
+cryptography==3.2.1       # via requests-ntlm, smbprotocol
 idna==2.8                 # via requests
 netaddr==0.7.19
 ntlm-auth==1.3.0          # via requests-ntlm, smbprotocol

+ 7 - 7
requirements/static/ci/py3.9/darwin.txt

@@ -7,8 +7,8 @@
 apache-libcloud==2.4.0
 appdirs==1.4.3            # via virtualenv
 argh==0.26.2              # via watchdog
-asn1crypto==1.3.0
-attrs==19.1.0             # via pytest
+asn1crypto==1.3.0         # via certvalidator, oscrypto
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 bcrypt==3.1.6             # via paramiko
 boto3==1.13.5
@@ -18,7 +18,7 @@ cachetools==3.1.0         # via google-auth
 cassandra-driver==3.23.0
 certifi==2020.6.20
 certvalidator==0.11.1     # via vcert
-cffi==1.12.2
+cffi==1.14.3
 chardet==3.0.4
 cheetah3==3.1.0
 cheroot==8.3.0
@@ -29,7 +29,7 @@ clustershell==1.8.1
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.6.0.post1
 croniter==0.3.29
-cryptography==2.6.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -91,10 +91,10 @@ pyopenssl==19.0.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.0
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -102,7 +102,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.2 ; python_version >= "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 5 - 5
requirements/static/ci/py3.9/freebsd.txt

@@ -8,7 +8,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 backports.functools-lru-cache==1.5
 bcrypt==3.1.6             # via paramiko
@@ -28,7 +28,7 @@ ciscoconfparse==1.5.19    # via napalm
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -93,10 +93,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -104,7 +104,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.2 ; python_version >= "3.9"
 requests==2.21.0
 responses==0.10.6         # via moto
 rfc3987==1.3.8

+ 7 - 7
requirements/static/ci/py3.9/linux.txt

@@ -9,7 +9,7 @@ apache-libcloud==2.0.0
 appdirs==1.4.4            # via virtualenv
 argh==0.26.2              # via watchdog
 asn1crypto==1.3.0         # via certvalidator, oscrypto
-attrs==19.1.0             # via pytest
+attrs==20.3.0             # via pytest, pytest-salt-factories
 aws-xray-sdk==0.95        # via moto
 azure-applicationinsights==0.1.0  # via azure
 azure-batch==4.1.3        # via azure
@@ -113,7 +113,7 @@ click==7.1.1              # via geomet
 colorama==0.4.3           # via ciscoconfparse
 contextlib2==0.5.5
 croniter==0.3.29
-cryptography==3.1.1
+cryptography==3.2
 distlib==0.3.0            # via virtualenv
 distro==1.5.0
 dnspython==1.16.0
@@ -145,7 +145,7 @@ kazoo==2.6.1
 keyring==5.7.1
 kubernetes==3.0.0
 libnacl==1.7.1
-lxml==4.3.3               # via junos-eznc, napalm, ncclient
+lxml==4.5.2               # via junos-eznc, napalm, ncclient
 mako==1.1.0
 markupsafe==1.1.1
 mock==3.0.5
@@ -177,7 +177,7 @@ pycryptodome==3.8.1       # via python-jose
 pycryptodomex==3.9.8
 pycurl==7.43.0.6
 pyeapi==0.8.3             # via napalm
-pygit2==1.2.0 ; python_version >= "3.8"
+pygit2==1.2.0 ; python_version >= "3.9"
 pyiface==0.0.11
 pyinotify==0.9.6
 pyjwt==1.7.1              # via adal
@@ -186,10 +186,10 @@ pyopenssl==19.1.0
 pyparsing==2.4.5          # via junos-eznc, packaging
 pyserial==3.4             # via junos-eznc, netmiko
 pytest-helpers-namespace==2019.1.8
-pytest-salt-factories==0.93.0
+pytest-salt-factories==0.99.0
 pytest-salt==2020.1.27
 pytest-tempdir==2019.10.12
-pytest==6.1.1
+pytest==6.1.2
 python-dateutil==2.8.1
 python-etcd==0.4.5
 python-gnupg==0.4.4
@@ -197,7 +197,7 @@ python-jose==2.0.2        # via moto
 pytz==2020.1
 pyvmomi==6.7.1.2018.12
 pyyaml==5.3.1
-pyzmq==19.0.0
+pyzmq==19.0.2 ; python_version >= "3.9"
 requests-oauthlib==1.3.0  # via msrest
 requests==2.21.0
 responses==0.10.6         # via moto

+ 4 - 3
requirements/static/pkg/py3.5/darwin.txt

@@ -5,7 +5,6 @@
 #    pip-compile -o requirements/static/pkg/py3.5/darwin.txt -v pkg/osx/req_pyobjc.txt requirements/darwin.txt requirements/static/pkg/darwin.in
 #
 apache-libcloud==2.4.0
-asn1crypto==1.3.0         # via cryptography
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 certifi==2020.6.20        # via requests
 cffi==1.12.2              # via cryptography
@@ -13,11 +12,13 @@ chardet==3.0.4            # via requests
 cheroot==8.3.0            # via cherrypy
 cherrypy==17.4.1
 contextlib2==0.6.0.post1  # via cherrypy
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distro==1.5.0
 gitdb2==2.0.6             # via gitpython
 gitpython==2.1.15
 idna==2.8
+immutables==0.14          # via contextvars
 ipaddress==1.0.22
 jaraco.functools==2.0     # via cheroot, tempora
 jinja2==2.10.1
@@ -36,7 +37,7 @@ python-dateutil==2.8.0
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, pyopenssl, python-dateutil, tempora

+ 4 - 2
requirements/static/pkg/py3.5/freebsd.txt

@@ -12,9 +12,11 @@ chardet==3.0.4            # via requests
 cheroot==6.5.4            # via cherrypy
 cherrypy==17.3.0
 contextlib2==0.5.5        # via cherrypy
-cryptography==3.1.1       # via pyopenssl
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2         # via pyopenssl
 distro==1.5.0
 idna==2.8                 # via requests
+immutables==0.14          # via contextvars
 jaraco.functools==2.0     # via tempora
 jinja2==2.10.1
 markupsafe==1.1.1
@@ -29,7 +31,7 @@ python-dateutil==2.8.1
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, more-itertools, pyopenssl, python-dateutil, tempora

+ 4 - 2
requirements/static/pkg/py3.5/linux.txt

@@ -12,9 +12,11 @@ chardet==3.0.4            # via requests
 cheroot==6.5.4            # via cherrypy
 cherrypy==17.3.0
 contextlib2==0.5.5        # via cherrypy
-cryptography==3.1.1       # via pyopenssl
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2         # via pyopenssl
 distro==1.5.0
 idna==2.8                 # via requests
+immutables==0.14          # via contextvars
 jaraco.functools==2.0     # via tempora
 jinja2==2.10.1
 markupsafe==1.1.1
@@ -29,7 +31,7 @@ python-dateutil==2.8.1
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, more-itertools, pyopenssl, python-dateutil, tempora

+ 3 - 2
requirements/static/pkg/py3.5/windows.txt

@@ -4,7 +4,6 @@
 #
 #    pip-compile -o requirements/static/pkg/py3.5/windows.txt -v requirements/windows.txt requirements/static/pkg/windows.in
 #
-asn1crypto==1.3.0         # via cryptography
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 certifi==2020.6.20
 cffi==1.12.2
@@ -12,11 +11,13 @@ chardet==3.0.4            # via requests
 cheroot==8.3.0            # via cherrypy
 cherrypy==17.4.1
 contextlib2==0.6.0.post1  # via cherrypy
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distro==1.5.0
 gitdb2==2.0.5             # via gitpython
 gitpython==2.1.10
 idna==2.8
+immutables==0.14          # via contextvars
 ioloop==0.1a0
 ipaddress==1.0.22
 jaraco.functools==2.0     # via cheroot, tempora

+ 4 - 3
requirements/static/pkg/py3.6/darwin.txt

@@ -5,7 +5,6 @@
 #    pip-compile -o requirements/static/pkg/py3.6/darwin.txt -v pkg/osx/req_pyobjc.txt requirements/darwin.txt requirements/static/pkg/darwin.in
 #
 apache-libcloud==2.4.0
-asn1crypto==1.3.0         # via cryptography
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 certifi==2020.6.20        # via requests
 cffi==1.12.2              # via cryptography
@@ -13,11 +12,13 @@ chardet==3.0.4            # via requests
 cheroot==8.3.0            # via cherrypy
 cherrypy==17.4.1
 contextlib2==0.6.0.post1  # via cherrypy
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distro==1.5.0
 gitdb2==2.0.6             # via gitpython
 gitpython==2.1.15
 idna==2.8
+immutables==0.14          # via contextvars
 ipaddress==1.0.22
 jaraco.functools==2.0     # via cheroot, tempora
 jinja2==2.10.1
@@ -36,7 +37,7 @@ python-dateutil==2.8.0
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, pyopenssl, python-dateutil, tempora

+ 4 - 2
requirements/static/pkg/py3.6/freebsd.txt

@@ -12,9 +12,11 @@ chardet==3.0.4            # via requests
 cheroot==6.5.4            # via cherrypy
 cherrypy==17.3.0
 contextlib2==0.5.5        # via cherrypy
-cryptography==3.1.1       # via pyopenssl
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2         # via pyopenssl
 distro==1.5.0
 idna==2.8                 # via requests
+immutables==0.14          # via contextvars
 jaraco.functools==2.0     # via tempora
 jinja2==2.10.1
 markupsafe==1.1.1
@@ -29,7 +31,7 @@ python-dateutil==2.8.1
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, more-itertools, pyopenssl, python-dateutil, tempora

+ 4 - 2
requirements/static/pkg/py3.6/linux.txt

@@ -12,9 +12,11 @@ chardet==3.0.4            # via requests
 cheroot==6.5.4            # via cherrypy
 cherrypy==17.3.0
 contextlib2==0.5.5        # via cherrypy
-cryptography==3.1.1       # via pyopenssl
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2         # via pyopenssl
 distro==1.5.0
 idna==2.8                 # via requests
+immutables==0.14          # via contextvars
 jaraco.functools==2.0     # via tempora
 jinja2==2.10.1
 markupsafe==1.1.1
@@ -29,7 +31,7 @@ python-dateutil==2.8.1
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, more-itertools, pyopenssl, python-dateutil, tempora

+ 3 - 2
requirements/static/pkg/py3.6/windows.txt

@@ -4,7 +4,6 @@
 #
 #    pip-compile -o requirements/static/pkg/py3.6/windows.txt -v requirements/windows.txt requirements/static/pkg/windows.in
 #
-asn1crypto==1.3.0         # via cryptography
 backports.ssl-match-hostname==3.7.0.1 ; python_version < "3.7"
 certifi==2020.6.20
 cffi==1.12.2
@@ -12,11 +11,13 @@ chardet==3.0.4            # via requests
 cheroot==8.3.0            # via cherrypy
 cherrypy==17.4.1
 contextlib2==0.6.0.post1  # via cherrypy
-cryptography==2.6.1
+contextvars==2.4 ; python_version < "3.7"
+cryptography==3.2
 distro==1.5.0
 gitdb2==2.0.5             # via gitpython
 gitpython==2.1.10
 idna==2.8
+immutables==0.14          # via contextvars
 ioloop==0.1a0
 ipaddress==1.0.22
 jaraco.functools==2.0     # via cheroot, tempora

+ 2 - 3
requirements/static/pkg/py3.7/darwin.txt

@@ -5,14 +5,13 @@
 #    pip-compile -o requirements/static/pkg/py3.7/darwin.txt -v pkg/osx/req_pyobjc.txt requirements/darwin.txt requirements/static/pkg/darwin.in
 #
 apache-libcloud==2.4.0
-asn1crypto==1.3.0         # via cryptography
 certifi==2020.6.20        # via requests
 cffi==1.12.2              # via cryptography
 chardet==3.0.4            # via requests
 cheroot==8.3.0            # via cherrypy
 cherrypy==17.4.1
 contextlib2==0.6.0.post1  # via cherrypy
-cryptography==2.6.1
+cryptography==3.2
 distro==1.5.0
 gitdb2==2.0.6             # via gitpython
 gitpython==2.1.15
@@ -35,7 +34,7 @@ python-dateutil==2.8.0
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, pyopenssl, python-dateutil, tempora

+ 2 - 2
requirements/static/pkg/py3.7/freebsd.txt

@@ -11,7 +11,7 @@ chardet==3.0.4            # via requests
 cheroot==6.5.4            # via cherrypy
 cherrypy==17.3.0
 contextlib2==0.5.5        # via cherrypy
-cryptography==3.1.1       # via pyopenssl
+cryptography==3.2         # via pyopenssl
 distro==1.5.0
 idna==2.8                 # via requests
 jaraco.functools==2.0     # via tempora
@@ -28,7 +28,7 @@ python-dateutil==2.8.1
 python-gnupg==0.4.4
 pytz==2020.1              # via tempora
 pyyaml==5.3.1
-pyzmq==18.0.1
+pyzmq==18.0.1 ; python_version < "3.9"
 requests==2.21.0
 setproctitle==1.1.10
 six==1.15.0               # via cheroot, cherrypy, cryptography, more-itertools, pyopenssl, python-dateutil, tempora

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff