Merge pull request #50057 from rallytime/merge-2018.3

[2018.3] Merge forward from 2017.7 to 2018.3
This commit is contained in:
Nicole Thomas 2018-10-15 16:35:45 -04:00 committed by GitHub
commit a9e9974bd5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 52 additions and 35 deletions

View file

@ -114,6 +114,12 @@ Set up the provider cloud config at ``/etc/salt/cloud.providers`` or
driver: gce
.. note::
Empty strings as values for ``service_account_private_key`` and ``service_account_email_address``
can be used on GCE instances. This will result in the service account assigned to the GCE instance
being used.
.. note::
The value provided for ``project`` must not contain underscores or spaces and

View file

@ -4,3 +4,13 @@ In Progress: Salt 2017.7.9 Release Notes
Version 2017.7.9 is an **unreleased** bugfix release for :ref:`2017.7.0 <release-2017-7-0>`.
This release is still in progress and has not been released yet.
Salt Cloud Features
===================
GCE Driver
----------
The GCE salt cloud driver can now be used with GCE instance credentials by
setting the configuration paramaters ``service_account_private_key`` and
``service_account_private_email`` to an empty string.

View file

@ -134,7 +134,8 @@ def __virtual__():
parameters = details['gce']
pathname = os.path.expanduser(parameters['service_account_private_key'])
if salt.utils.cloud.check_key_path_and_mode(
# empty pathname will tell libcloud to use instance credentials
if pathname and salt.utils.cloud.check_key_path_and_mode(
provider, pathname
) is False:
return False

View file

@ -1589,7 +1589,7 @@ class Minion(MinionBase):
sdata = {'pid': os.getpid()}
sdata.update(data)
log.info('Starting a new job with PID %s', sdata['pid'])
log.info('Starting a new job %s with PID %s', data['jid'], sdata['pid'])
with salt.utils.files.fopen(fn_, 'w+b') as fp_:
fp_.write(minion_instance.serial.dumps(sdata))
ret = {'success': False}

View file

@ -1035,11 +1035,8 @@ def _parse_conf(conf_file=None, in_mem=False, family='ipv4'):
if args[-1].startswith('-'):
args.append('')
parsed_args = []
if sys.version.startswith('2.6'):
(opts, leftover_args) = parser.parse_args(args)
parsed_args = vars(opts)
else:
parsed_args = vars(parser.parse_args(args))
opts, _ = parser.parse_known_args(args)
parsed_args = vars(opts)
ret_args = {}
chain = parsed_args['append']
for arg in parsed_args:

View file

@ -1989,17 +1989,20 @@ def processlist(**connection_args):
"SHOW FULL PROCESSLIST".
Returns: a list of dicts, with each dict representing a process:
.. code-block:: python
{'Command': 'Query',
'Host': 'localhost',
'Id': 39,
'Info': 'SHOW FULL PROCESSLIST',
'Rows_examined': 0,
'Rows_read': 1,
'Rows_sent': 0,
'State': None,
'Time': 0,
'User': 'root',
'db': 'mysql'}
'Host': 'localhost',
'Id': 39,
'Info': 'SHOW FULL PROCESSLIST',
'Rows_examined': 0,
'Rows_read': 1,
'Rows_sent': 0,
'State': None,
'Time': 0,
'User': 'root',
'db': 'mysql'}
CLI Example:

View file

@ -48,7 +48,7 @@ def present(name,
The keyId or keyIds to add to the GPG keychain.
user
Add GPG keys to the user's keychain
Add GPG keys to the specified user's keychain
keyserver
The keyserver to retrieve the keys from.
@ -151,7 +151,7 @@ def absent(name,
The keyId or keyIds to add to the GPG keychain.
user
Add GPG keys to the user's keychain
Remove GPG keys from the specified user's keychain
gnupghome
Override GNUPG Home directory

View file

@ -42,7 +42,7 @@ def __virtual__():
def pv_present(name, **kwargs):
'''
Set a physical device to be used as an LVM physical volume
Set a Physical Device to be used as an LVM Physical Volume
name
The device name to initialize.
@ -106,13 +106,13 @@ def pv_absent(name):
def vg_present(name, devices=None, **kwargs):
'''
Create an LVM volume group
Create an LVM Volume Group
name
The volume group name to create
The Volume Group name to create
devices
A list of devices that will be added to the volume group
A list of devices that will be added to the Volume Group
kwargs
Any supported options to vgcreate. See
@ -214,16 +214,16 @@ def lv_present(name,
force=False,
**kwargs):
'''
Create a new logical volume
Create a new Logical Volume
name
The name of the logical volume
The name of the Logical Volume
vgname
The volume group name for this logical volume
The name of the Volume Group on which the Logical Volume resides
size
The initial size of the logical volume
The initial size of the Logical Volume
extents
The number of logical extents to allocate
@ -232,7 +232,7 @@ def lv_present(name,
The name of the snapshot
pv
The physical volume to use
The Physical Volume to use
kwargs
Any supported options to lvcreate. See
@ -241,10 +241,10 @@ def lv_present(name,
.. versionadded:: to_complete
thinvolume
Logical volume is thinly provisioned
Logical Volume is thinly provisioned
thinpool
Logical volume is a thin pool
Logical Volume is a thin pool
.. versionadded:: 2018.3.0
@ -297,13 +297,13 @@ def lv_present(name,
def lv_absent(name, vgname=None):
'''
Remove a given existing logical volume from a named existing volume group
Remove a given existing Logical Volume from a named existing volume group
name
The logical volume to remove
The Logical Volume to remove
vgname
The volume group name
The name of the Volume Group on which the Logical Volume resides
'''
ret = {'changes': {},
'comment': '',

View file

@ -26,7 +26,7 @@ def absent(name, user=None, signal=None):
The pattern to match.
user
The user process belongs
The user to which the process belongs
signal
Signal to send to the process(es).

View file

@ -55,7 +55,7 @@ def managed(name, port, services=None, user=None, password=None, bypass_domains=
The username to use for the proxy server if required
password
The password to use if required by the server
The password to use for the proxy server if required
bypass_domains
An array of the domains that should bypass the proxy