Commit Graph

77322 Commits

Author SHA1 Message Date
Sergey Kizunov
892c6d4d24 TCP transport: Fix occasional errors when using salt command
When using the `salt` command, errors would occasionally appear that
look like:

```
File "...\salt\transport\tcp.py", line 883, in _stream_return
AttributeError: 'NoneType' object has no attribute 'StreamClosedError'
```

Upon investigation, it was discovered that in this case,
`SaltMessageClient._stream_return()` was completed after all the modules
such as the one containing `tornado.iostream.StreamClosedError` were
unloaded, so at that time, that symbol evaluated to `None` instead of a
valid exception class.

Instead, we would expect `_stream_return` to be completed at the time
that `SaltMessageClient.close()` is invoked. It was noted that
`_stream_return` was not completed when using the `SyncWrapper`, since
that object turns off the IO Loop immediately when its own future
completes, so that the IO Loop is not running when
`SaltMessageClient.close()` is invoked which doesn't give `_stream_return`
a chance to complete. Even when the IO Loop is closed in
`SyncWrapper.__del__()`, `_stream_return` is not completed. In this case,
it only seems to complete when the Python application shuts down which
is when the error appears.

Fix this issue by allowing the IO Loop to run again until the completion
of a specially created future that completes when `_stream_return` is
exiting.

Signed-off-by: Sergey Kizunov <sergey.kizunov@ni.com>
2017-05-31 18:30:18 -05:00
Sean Jenkins
095e5949a3 Fix unit tests for PR #41509 2017-05-31 17:22:07 -06:00
Sean Jenkins
eb7ef3c856 Add keystone V3 API support for keystone.endpoint_present|get, endpoint_absent|delete.
Passing interface to endpoint_present, or absent, will ensure only the given interface
for specified the specified region, is acted upon.

Fixes #41435
2017-05-31 17:22:07 -06:00
Daniel Wallace
0989be8919 allow digest to be empty in create_crl 2017-05-31 16:48:54 -06:00
Mike Place
06ed4f077b Merge pull request #41337 from Foxlik/2016.11
Fix #41335 - list index out of range on empty line in authorized_keys
2017-05-31 14:59:16 -05:00
Mike Place
1ace72d871 Merge pull request #41512 from twangboy/fix_win_status
Use psutil where possible in win_status.py
2017-05-31 14:55:59 -05:00
Mike Place
683cc5f414 Merge pull request #41490 from jdsieci/2016.11_selinux
Backport of SELinux module installation and removal
2017-05-31 14:37:59 -05:00
peter-funktionIT
d146fd029c Update win_pki.py
Removed whitespaces on empty line
2017-05-31 21:11:30 +02:00
twangboy
582d09b484 Get psutil import 2017-05-31 11:03:07 -06:00
Mike Place
2e7e84b8f2 Merge pull request #41522 from jettero/mongodb-keys-are-stupid
Sadly, you can't have '.'s and '$'s in dict keys in a mongodb doc.
2017-05-31 10:55:23 -05:00
Paul Miller
12648f5439 dang, thought I already got that. Apparently only got the bottom one. This should do it. 2017-05-31 10:16:22 -04:00
Paul Miller
7c4a763518 ugh, forgot about this lint too. This one looks especially terrible. 2017-05-31 09:38:46 -04:00
Paul Miller
c973988d8d forgot about the linter pass … fixed 2017-05-31 09:06:59 -04:00
Paul Miller
da0d9e4045 Sadly, you can't have '.'s and '$'s in dict keys in a mongodb doc. 2017-05-31 08:10:54 -04:00
Tomas Zvala
916fecb64f modify ssh_test.py, to check empty lines and comments in authorized_keys #41335 2017-05-31 10:56:02 +02:00
Nicole Thomas
30ad4fd9a0 Merge pull request #41506 from gtmanfred/2016.11
check for integer types
2017-05-30 18:48:21 -06:00
twangboy
fd88bb277f Remove unused imports (lint) 2017-05-30 16:02:38 -06:00
twangboy
41a39dff00 Use psutil where possible 2017-05-30 15:51:55 -06:00
Daniel Wallace
5fe2e9bbf5 check for integer types
This will check for int and long in py2 and int in py3
2017-05-30 14:14:54 -06:00
Mike Place
06ef17dec3 Merge pull request #41469 from Ch3LL/fix_redis_error
Fix keep_jobs keyerror in redis returner
2017-05-30 13:37:42 -05:00
Mike Place
7a09b2b678 Merge pull request #41473 from twangboy/fix_win_firewall
Fix win_firewall execution and state modules
2017-05-30 13:35:23 -05:00
Nicole Thomas
f635cb11c4 Merge pull request #41499 from rallytime/merge-2016.11
[2016.11] Merge forward from 2016.3 to 2016.11
2017-05-30 12:06:02 -06:00
rallytime
20d893d397 Merge branch '2016.3' into '2016.11'
No conflicts.
2017-05-30 10:14:44 -06:00
Benjamin Drung
d3ce7bf05f Fix pkgrepo.managed always return changes for test=true
You can write a pkgrepo.managed state that contains components as comma
separated list (as specified in the documentation):

my-repository:
  pkgrepo.managed:
    - name: deb [arch=amd64] http://example.com/ stretch main non-free
    - dist: stretch
    - architectures: amd64
    - comps: main,non-free
    - file: /etc/apt/sources.list.d/example.list
    - clean_file: True

When running the state with test=true, salt will always tell that the
state would change the configuration. pkg.get_repo returns comps as
list, but pkgrepo.managed compares this list against the comma-separated
comps from kwargs (which will always be not equal).

Thus convert the comma-separated comps to a list in pkg.expand_repo_def
to compare two lists in pkgrepo.managed.

Signed-off-by: Benjamin Drung <benjamin.drung@profitbricks.com>
2017-05-29 11:27:22 +02:00
Benjamin Drung
1592687294 Document aptpkg architectures parameter
Signed-off-by: Benjamin Drung <benjamin.drung@profitbricks.com>
2017-05-29 11:27:22 +02:00
twangboy
e503b455c3 Fix lint error 2017-05-26 17:11:41 -06:00
twangboy
d3f0f8bcd2 Fix win_firewall execution and state modules
- Vastly improved documentation
- Raise exception on command failure
- Check retcode instead of checking for 'Ok.'
- Fix problem with errors showing up in the log
- Created rule_exists function
2017-05-26 16:30:44 -06:00
Mike Place
964b1ee027 Merge pull request #41439 from terminalmage/salt-cp-base64
base64 encode binary data sent using salt-cp
2017-05-26 16:46:34 -05:00
Mike Place
83f1e48241 Merge pull request #41464 from rallytime/bp-39850
Back-port #39850 to 2016.11
2017-05-26 16:22:43 -05:00
Nicole Thomas
960c5767fa Merge pull request #41443 from UtahDave/fix_args_masterpy
use proper arg number
2017-05-26 14:36:36 -06:00
Ch3LL
8ee1251a3a
Fix keep_jobs keyerror in redis returner 2017-05-26 15:25:26 -04:00
rallytime
9b84b751b2 Pylint fixes 2017-05-26 12:38:38 -06:00
Petr Michalec
6db8915021 Endpoint handling per region, fixes #35874
- extend tests for multiple regions
- region arg by default set to None
- print verbose changes to be exec.
2017-05-26 11:15:29 -06:00
Nicole Thomas
88c28c18c3 Merge pull request #41350 from lorengordon/issue-41341
Supports quoted values in /etc/sysconfig/network
2017-05-26 10:22:03 -06:00
Nicole Thomas
824f2d3b69 Merge pull request #41398 from rallytime/merge-2016.11
[2016.11] Merge forward from 2016.3 to 2016.11
2017-05-26 09:17:48 -06:00
Nathan Fish
0089be4440 linux_sysctl: use dirname() as suggested 2017-05-26 09:47:47 -05:00
Erik Johnson
ec08064b99 Merge pull request #41442 from UtahDave/fix_args
use proper arg number
2017-05-26 08:42:50 -05:00
peter-funktionIT
ef8e3ef569 Update win_pki.py
Always pass cert_format to get_cert_file from import_cert. 
Also pass password if given.
2017-05-26 14:03:56 +02:00
David Boucha
dfbdc275ca use proper arg number 2017-05-25 23:00:36 -06:00
David Boucha
0324833c9e use proper arg number 2017-05-25 22:55:36 -06:00
Erik Johnson
ebf6cc78c7 base64 encode binary data sent using salt-cp
This fixes a problem when you make a request to salt-api using the /jobs
endpoint and request a JSON return. json.dumps() fails to serialize the
binary data entered into the job cache from salt-cp calls.
2017-05-25 18:08:33 -05:00
Nicole Thomas
2941e9c923 Merge pull request #22 from terminalmage/merge-2016.11
base64 encode binary data sent using salt-cp
2017-05-25 17:05:32 -06:00
Erik Johnson
087a958afc base64 encode binary data sent using salt-cp
This fixes a problem when you make a request to salt-api using the /jobs
endpoint and request a JSON return. json.dumps() fails to serialize the
binary data entered into the job cache from salt-cp calls.
2017-05-25 17:57:25 -05:00
Mike Place
22096d9213 Merge pull request #41397 from Enquier/neutron-ssl-verify
Updating Nova/Neutron modules to support KeystoneAuth and SSLVerify
2017-05-25 16:16:13 -05:00
Mike Place
14a58cf536 Merge pull request #41409 from garethgreenaway/34460_fixes_ipc_transport
Fixes to ipc transport
2017-05-25 16:06:26 -05:00
Mike Place
824428700d Merge pull request #41421 from UtahDave/fix_blacklist_docs
Correct doc to actually blacklist a module
2017-05-25 16:01:46 -05:00
Nicole Thomas
b98d5e00d4 Merge pull request #41431 from terminalmage/issue41353
Fix regression in state orchestration
2017-05-25 12:44:52 -06:00
Nicole Thomas
eeff3dd7fb Merge pull request #41429 from ricohouse/fix-compare-bug
Issue #41338: Return false when compare config fails
2017-05-25 11:18:01 -06:00
Erik Johnson
16eae64cca Fix regression in state orchestration
This falls back to using the effective saltenv when no saltenv has been
explicitly passed.
2017-05-25 10:51:09 -05:00
Richard Thompson
9b61665c4c Issue #41338: Return false when compare config fails 2017-05-25 15:49:34 +01:00