While testing running the test suite under Py3.7 on windows we hit an
issue installing botocore at the version it was at.
With this newer version of boto3 which also pulls in a newer version of
botocore we got past the issue.
* Merged junos-specific changes on 2019.2
* Merged junos-specific changes on 2019.2
* Fixes FileNotFound exception with invalid dest option in junos.cli
* Fixed documentation for junos.diff
* Fixed improper handling of dest and format options in rpc modules
* Implement exception handling around XML filter parsing
* Porting fix from develop to 2019.2
* Fixed documentation
* Fixed documentation
* Fixed rollback docstring: CLI example
* Implemented exception handling around template rendering in junos.load
* Implemented exception handling around template rendering in junos.install_config
* Fixes broken state module junos.diff
* Fixes broken state module junos.rollback
* Fixes broken state module junos.rpc
* Adds documentation about zeroize functionality for non-root user
* Adds error message for install_config in case invalid mode provided
* Handle LockError case in install_config gracefully
* Replace string concatenation with format
* Revert replacing cli command with rpc: junos.zeroize
* Support dynamic config mode
* Changed CLI example to conform with new rpc module definition
* Added exception handling for invalid image path for install_os module
* Extended load() support to config_action:merge, to match PyEZ capabilities
* Added check to allow only 1 config_action in load()
* Fixed reboot=True scenario for install_os
* Added comments to explain the behaviour in reboot scenario
* Added new option all_re. Updated documentation
* Fixed#117
* Temporary fix for #117
* Modified as per review comments
* Fixes junos.load template case
* Fixed test cases in 2019.2 branch
* Update junos_syslog.py
* Use cache_file instead of get_file
* Revert "Use cache_file instead of get_file"
This reverts commit b679c068de.
* Revert "Use cache_file instead of get_file"
This reverts commit b679c068de.
* added new testcases
* code changes as per review comment by @twangboy
* code changes as per review comment by @twangboy
* fix lint warnings as per saltpylint
* fix pylint, pydoc, and test failures due to junos-eznc version
* Revert "fix pylint, pydoc, and test failures due to junos-eznc version"
This reverts commit 430d5bdb9b.
* Revert "Revert "fix pylint, pydoc, and test failures due to junos-eznc version""
This reverts commit 4e69ce76e3.
* Revert "fix pylint, pydoc, and test failures due to junos-eznc version"
This reverts commit 430d5bdb9b.
* working on fixing comments from saltstack unit runs
* fix: salt.states.junos.rst:20:Pygments lexer name 'set' is not known
* fix as per comment from @dmurphy18 and pre-commit changes
* import line changes as per pre-commit
* changes as per comment from salt team regarding interface syntax
* changes as per comment from salt team regarding interface syntax
* when called from junos.rpc from test, dest is intacct
* pre-commit checks for darwin
* pre-commit check for linux onf py 3.8 and 3.9
Co-authored-by: rsmekala <rsmekala@juniper.net>
Co-authored-by: Nitin Kr <nitinkr@juniper.net>
Co-authored-by: Nitin Kr <nitin.nitp@gmail.com>
Co-authored-by: Shane Lee <slee@saltstack.com>
Co-authored-by: Sage the Rage <36676171+sagetherage@users.noreply.github.com>
Co-authored-by: David Murphy <dmurphy@saltstack.com>
```
.nox/lint-salt/lib/python3.7/site-packages/isort/settings.py:295: UserWarning: Found pyproject.toml with [tool.isort] section, but toml package is not installed. To configure isort with pyproject.toml, install with 'isort[pyproject]'.
10:19:57 file_path))
```
```
Failed to import utils nacl, this is due most likely to a syntax error:
20:27:00 Traceback (most recent call last):
20:27:00 File "/tmp/kitchen/testing/salt/loader.py", line 1607, in _load_module
20:27:00 mod = imp.load_module(mod_namespace, fn_, fpath, desc)
20:27:00 File "/tmp/kitchen/testing/salt/utils/nacl.py", line 26, in <module>
20:27:00 import libnacl.secret
20:27:00 File "/tmp/kitchen/testing/.nox/runtests-parametrized-2-7-coverage-true-crypto-none-transport-zeromq/local/lib/python2.7/site-packages/libnacl/__init__.py", line 119, in <module>
20:27:00 crypto_box_SEEDBYTES = nacl.crypto_box_seedbytes()
20:27:00 File "/usr/lib64/python2.7/ctypes/__init__.py", line 374, in __getattr__
20:27:00 func = self.__getitem__(name)
20:27:00 File "/usr/lib64/python2.7/ctypes/__init__.py", line 379, in __getitem__
20:27:00 func = self._FuncPtr((name_or_ordinal, self))
20:27:00 AttributeError: /usr/lib64/libsodium.so.4: undefined symbol: crypto_box_seedbytes
20:27:13 20:27:12,714 [salt.loader :1624][ERROR ] Failed to import module nacl, this is due most likely to a syntax error:
20:27:13 Traceback (most recent call last):
20:27:13 File "/tmp/kitchen/testing/salt/loader.py", line 1607, in _load_module
20:27:13 mod = imp.load_module(mod_namespace, fn_, fpath, desc)
20:27:13 File "/tmp/kitchen/testing/salt/modules/nacl.py", line 157, in <module>
20:27:13 import salt.utils.nacl
20:27:13 File "/tmp/kitchen/testing/salt/utils/nacl.py", line 26, in <module>
20:27:13 import libnacl.secret
20:27:13 File "/tmp/kitchen/testing/.nox/runtests-parametrized-2-7-coverage-true-crypto-none-transport-zeromq/local/lib/python2.7/site-packages/libnacl/__init__.py", line 119, in <module>
20:27:13 crypto_box_SEEDBYTES = nacl.crypto_box_seedbytes()
20:27:13 File "/usr/lib64/python2.7/ctypes/__init__.py", line 374, in __getattr__
20:27:13 func = self.__getitem__(name)
20:27:13 File "/usr/lib64/python2.7/ctypes/__init__.py", line 379, in __getitem__
20:27:13 func = self._FuncPtr((name_or_ordinal, self))
20:27:13 AttributeError: /usr/lib64/libsodium.so.4: undefined symbol: crypto_box_seedbytes
20:27:15 20:27:15,353 [salt.loader :1624][ERROR ] Failed to import utils nacl, this is due most likely to a syntax error:
20:27:15 Traceback (most recent call last):
20:27:15 File "/tmp/kitchen/testing/salt/loader.py", line 1607, in _load_module
20:27:15 mod = imp.load_module(mod_namespace, fn_, fpath, desc)
20:27:15 File "/tmp/kitchen/testing/salt/utils/nacl.py", line 26, in <module>
20:27:15 import libnacl.secret
20:27:15 File "/tmp/kitchen/testing/.nox/runtests-parametrized-2-7-coverage-true-crypto-none-transport-zeromq/local/lib/python2.7/site-packages/libnacl/__init__.py", line 119, in <module>
20:27:15 crypto_box_SEEDBYTES = nacl.crypto_box_seedbytes()
20:27:15 File "/usr/lib64/python2.7/ctypes/__init__.py", line 374, in __getattr__
20:27:15 func = self.__getitem__(name)
20:27:15 File "/usr/lib64/python2.7/ctypes/__init__.py", line 379, in __getitem__
20:27:15 func = self._FuncPtr((name_or_ordinal, self))
20:27:15 AttributeError: /usr/lib64/libsodium.so.4: undefined symbol: crypto_box_seedbytes
```
Due to issues found during package testing for the several supported
linux distributions, we're switching back our crypto depencency to
pycrypto.
Security concerned users are still advised to install the latest m2crypto
or pycryptodome library after pip installing salt since salt is prepared
to work with whatever is available.