add grain for detecting mdadm devices
fix jenkins PEP8 & style
Switch up the test.arg runner to filter the __pub* kwargs

The old behavior is available with the raw_arg function.
Extract reformatting low data into method for both sync & async methods

The cmd_async method needs this same low data reformatting. This
extracts that out into a reusable method.
Remove double import
Fix OrderedDict import
Fix WheelClient().cmd_sync()

WheelClient defaults to sync behavior so we just need to wrap
master_call here.
Merge branch 'mdadm-grain' of https://github.com/pille/salt into pille-mdadm-grain
Added integration tests WheelClient cmd_sync cmd_async
Examine clear_load instead of token for the eauth type
Clean up mdadm grain from #16396

Fix open filehandle, and fix traceback on minions with no /proc/mdstat.
Merge branch 'pille-mdadm-grain' into develop
Merge pull request #16450 from rallytime/fix_orderedDict_import

Fix OrderedDict import
Fix salt-cloud ec2 requests containing spaces.

salt-cloud receives an error when trying to create an EC2 instance when
any number of argument values contain a space. This happens because
salt-cloud is incorrectly building the url string when calculating the
signature. AWS signature algorithm #2 requires that spaces be encoded
using %20, however python's urlencode method replaces them with a +.
The easy fix is to just search and replace in the encoded string.

I encountered this myself with a security group with a space in it.
This was reported in issue #10181
https://github.com/saltstack/salt/issues/10181

The error looks like this:
someinstancename:
    ----------
    Errors:
        ----------
        Error:
            ----------
            Code:
                SignatureDoesNotMatch
            Message:
                The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.
    RequestID:
        12345678-9abc-def0-1234-56789abcdef0
Merge pull request #16452 from markdoliner/develop

Fix salt-cloud ec2 requests containing spaces.
Merge pull request #16451 from whiteinge/add-wheelclient-tests

Add WheelClient integration tests for cmd_sync and cmd_async
State Module, not State Declaration
Fix formatting error
Fixing issue with ps.top and ps.pgrep.  I checked all versions of psutil and couldn't find any reference to using a pid() function to return the PID from a process object.
Fixing the unit tests for ps module