Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Releases watchmaker 0.16.4 #955

Merged
merged 42 commits into from
Aug 23, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
6773f61
Bump src/watchmaker/static/salt/formulas/scap-formula
dependabot-preview[bot] Aug 9, 2019
49a319a
Merge pull request #936 from plus3it/dependabot/submodules/src/watchm…
eemperor Aug 9, 2019
4cc818b
Bump pip from 19.2.1 to 19.2.2
dependabot-preview[bot] Aug 11, 2019
249e28e
Bump flake8-bugbear from 19.3.0 to 19.8.0
dependabot-preview[bot] Aug 12, 2019
f1c2399
Bump src/watchmaker/static/salt/formulas/ash-linux-formula
dependabot-preview[bot] Aug 13, 2019
7e1e8cf
Bump src/watchmaker/static/salt/formulas/join-domain-formula
dependabot-preview[bot] Aug 13, 2019
d19e52e
Merge pull request #938 from plus3it/dependabot/pip/pip-19.2.2
YakDriver Aug 13, 2019
38c8416
Merge pull request #939 from plus3it/dependabot/pip/flake8-bugbear-19…
YakDriver Aug 13, 2019
4bf25a7
Merge pull request #940 from plus3it/dependabot/submodules/src/watchm…
YakDriver Aug 13, 2019
fb0bb80
Merge pull request #941 from plus3it/dependabot/submodules/src/watchm…
YakDriver Aug 13, 2019
5c205da
Bump setuptools from 41.0.1 to 41.1.0
dependabot-preview[bot] Aug 13, 2019
88ada04
Merge pull request #942 from plus3it/dependabot/pip/setuptools-41.1.0
YakDriver Aug 14, 2019
6d02066
Bump setuptools from 41.1.0 to 41.1.0.post1
dependabot-preview[bot] Aug 15, 2019
86bf5d9
Merge pull request #943 from plus3it/dependabot/pip/setuptools-41.1.0…
YakDriver Aug 15, 2019
2733d34
Bump sphinx from 2.1.2 to 2.2.0
dependabot-preview[bot] Aug 18, 2019
37c5ce9
Revert setuptools to 41.1.0
YakDriver Aug 19, 2019
9c8be75
Merge pull request #946 from plus3it/dependabot/pip/sphinx-2.2.0
YakDriver Aug 19, 2019
53e3ee0
Bump pytest from 5.0.1 to 5.1.0
dependabot-preview[bot] Aug 19, 2019
937a8ff
Merge pull request #945 from plus3it/dependabot/pip/pytest-5.1.0
YakDriver Aug 19, 2019
b323066
Bump flake8-future-import from 0.4.5 to 0.4.6
dependabot-preview[bot] Aug 19, 2019
86e5075
Import annotations for future
YakDriver Aug 19, 2019
c935ff8
Merge pull request #932 from plus3it/dependabot/pip/flake8-future-imp…
YakDriver Aug 19, 2019
6430709
Bump pydocstyle from 3.0.0 to 4.0.1
dependabot-preview[bot] Aug 19, 2019
716eaa8
Add blank lines for pydocstyle 4
YakDriver Aug 19, 2019
8814d74
Merge pull request #944 from plus3it/dependabot/pip/pydocstyle-4.0.1
YakDriver Aug 19, 2019
fb5f395
Updates pip usage on linux to always use `python3 -m pip ...`
lorengordon Aug 20, 2019
0a186c4
Merge pull request #948 from lorengordon/pip-docs
eemperor Aug 20, 2019
005db25
Bump pytest from 5.1.0 to 5.1.1
dependabot-preview[bot] Aug 20, 2019
f40e44b
Bump setuptools from 41.1.0 to 41.2.0
dependabot-preview[bot] Aug 21, 2019
3c82418
Adds submodule for fup-formula
ferricoxide Aug 21, 2019
ee40e33
Bump src/watchmaker/static/salt/formulas/join-domain-formula
dependabot-preview[bot] Aug 22, 2019
de82a71
Merge pull request #949 from plus3it/dependabot/pip/pytest-5.1.1
YakDriver Aug 22, 2019
e513562
Merge pull request #950 from plus3it/dependabot/pip/setuptools-41.2.0
YakDriver Aug 22, 2019
c9cb7a1
Merge pull request #952 from plus3it/dependabot/submodules/src/watchm…
YakDriver Aug 22, 2019
6fae542
Merge pull request #951 from ferricoxide/WIP_addFup
YakDriver Aug 22, 2019
480e111
Bump src/watchmaker/static/salt/content from `156cfaa` to `354763d`
dependabot-preview[bot] Aug 22, 2019
ff7a93a
Merge pull request #953 from plus3it/dependabot/submodules/src/watchm…
YakDriver Aug 22, 2019
21d750c
Bump src/watchmaker/static/salt/formulas/dotnet4-formula
dependabot-preview[bot] Aug 22, 2019
327e9ad
Merge pull request #954 from plus3it/dependabot/submodules/src/watchm…
YakDriver Aug 22, 2019
c8fc76c
Prepare watchmaker 0.16.4 release
eemperor Aug 23, 2019
21f9cd7
Merge pull request #947 from eemperor/0.16.4
eemperor Aug 23, 2019
aa74e6c
Release watchmaker version 0.16.4
eemperor Aug 23, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.16.3
current_version = 0.16.4
commit = False
tag = False
tag_name = {new_version}
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -46,3 +46,6 @@
[submodule "src/watchmaker/static/salt/content"]
path = src/watchmaker/static/salt/content
url = https://github.com/plus3it/watchmaker-salt-content.git
[submodule "src/watchmaker/static/salt/formulas/fup-formula"]
path = src/watchmaker/static/salt/formulas/fup-formula
url = https://github.com/plus3it/fup-formula.git
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
## Changelog

### 0.16.4

**Commit Delta**: [Change from 0.16.3 release](https://github.com/plus3it/watchmaker/compare/0.16.3...0.16.4)

**Released**: 2019.08.23

**Summary**:

* Updates documentation on pip usage in Linux to always use `python3 -m pip...`
* dotnet4-formula
- Adds .NET Framework 4.8 version and associated KB to lookup tables
* fup-formula
- New salt formula to install packages via URL
* scap-formula
- (Windows) Adds configuration to allow scan results to be generated when using SCC v5.0.2 and higher
* watchmaker-salt-content
- (Windows) Adds .NET Framework 4.8 info to dotnet winrepo package content

### 0.16.3

**Commit Delta**: [Change from 0.16.2 release](https://github.com/plus3it/watchmaker/compare/0.16.2...0.16.3)
Expand Down
6 changes: 3 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,20 +151,20 @@ specify something like this for EC2 userdata:
PYPI_URL=https://pypi.org/simple

# Install pip
python3 -m ensurepip --upgrade --default-pip
python3 -m ensurepip

# Install git
yum -y install git

# Upgrade pip and setuptools
pip install --index-url="$PYPI_URL" --upgrade pip setuptools
python3 -m pip install --index-url="$PYPI_URL" --upgrade pip setuptools

# Clone watchmaker
git clone "$GIT_REPO" --branch "$GIT_BRANCH" --recursive

# Install watchmaker
cd watchmaker
pip install --index-url "$PYPI_URL" --editable .
python3 -m pip install --index-url "$PYPI_URL" --editable .

# Run watchmaker
watchmaker --log-level debug --log-dir=/var/log/watchmaker
Expand Down
4 changes: 2 additions & 2 deletions docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ The preferred method to install `watchmaker` is from the Python Package Index
the most recent stable release.

```bash
pip install watchmaker
python3 -m pip install watchmaker
```

If you do not have Python or [pip][0], this [Python installation guide][1]
Expand Down Expand Up @@ -57,7 +57,7 @@ The sources for `watchmaker` are available from the [GitHub repo][2].
3. Then you can install Watchmaker:

```bash
pip install .
python3 -m pip install .
```

## From standalone executable package (Beta feature)
Expand Down
12 changes: 6 additions & 6 deletions docs/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,13 +121,13 @@ export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

# Install pip
python3 -m ensurepip --upgrade --default-pip
python3 -m ensurepip

# Install setup dependencies
pip install --index-url="$PYPI_URL" --upgrade pip setuptools
python3 -m pip install --index-url="$PYPI_URL" --upgrade pip setuptools

# Install Watchmaker
pip install --index-url="$PYPI_URL" --upgrade watchmaker
python3 -m pip install --index-url="$PYPI_URL" --upgrade watchmaker

# Run Watchmaker
watchmaker --log-level debug --log-dir=/var/log/watchmaker
Expand All @@ -147,13 +147,13 @@ runcmd:
export LANG=en_US.UTF-8

# Install pip
python3 -m ensurepip --upgrade --default-pip
python3 -m ensurepip

# Install setup dependencies
pip install --index-url="$PYPI_URL" --upgrade pip setuptools
python3 -m pip install --index-url="$PYPI_URL" --upgrade pip setuptools

# Install Watchmaker
pip install --index-url="$PYPI_URL" --upgrade watchmaker
python3 -m pip install --index-url="$PYPI_URL" --upgrade watchmaker

# Run Watchmaker
watchmaker --log-level debug --log-dir=/var/log/watchmaker
Expand Down
6 changes: 3 additions & 3 deletions requirements/check.txt
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
check-manifest==0.39
flake8==3.7.8
flake8-bugbear==19.3.0
flake8-bugbear==19.8.0
flake8-builtins==1.4.1
flake8-docstrings==1.3.1
flake8-isort==2.7.0
flake8-future-import==0.4.5
flake8-future-import==0.4.6
flake8-print==3.1.0
isort==4.3.21
m2r==0.2.1
pep8-naming==0.8.2
pydocstyle==3.0.0
pydocstyle==4.0.1
pygments==2.4.2
pylint==2.3.1
readme-renderer==24.0
4 changes: 2 additions & 2 deletions requirements/docs.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
m2r==0.2.1
setuptools==41.0.1
sphinx==2.1.2
setuptools==41.2.0
sphinx==2.2.0
sphinx-rtd-theme==0.4.3
2 changes: 1 addition & 1 deletion requirements/pip.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
pip==19.2.1
pip==19.2.2
2 changes: 1 addition & 1 deletion requirements/test.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ mock==2.0.0;python_version=="2.6" # pyup: ==2.0.0
mock==3.0.5;python_version>="2.7"
pytest==3.2.5;python_version=="2.6" or python_version=="3.3" # pyup: ==3.2.5
pytest==4.6.3;python_version=="2.7" or python_version=="3.4"
pytest==5.0.1;python_version>="3.5"
pytest==5.1.1;python_version>="3.5"
pytest-travis-fold==1.3.0
pytest-catchlog==1.2.2;python_version=="2.6"
pytest-cov==2.5.1;python_version=="2.6" # pyup: ==2.5.1
Expand Down
4 changes: 2 additions & 2 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
[metadata]
name = watchmaker
description = Applied Configuration Management
version = 0.16.3
version = 0.16.4
author = Plus3IT Maintainers of Watchmaker
author_email = [email protected]
url = https://github.com/plus3it/watchmaker
Expand Down Expand Up @@ -67,7 +67,7 @@ exclude =
dist,
htmlcov,
*/static/salt/formulas/*
ignore = FI15,FI16,FI17,FI5,D107,W503,W504
ignore = FI15,FI16,FI17,FI18,FI5,D107,W503,W504

[tool:pytest]
mock_use_standalone_module = true
Expand Down
2 changes: 2 additions & 0 deletions src/watchmaker/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ class Arguments(dict):
# This list would be converted to the following dict and merged
# into the parameters passed to the worker configurations:
{'arg1': 'value1', 'arg2': 'value2'}

"""

def __init__(
Expand Down Expand Up @@ -203,6 +204,7 @@ class Client(object):
Keyword Arguments:
arguments: (:obj:`Arguments`)
A dictionary of arguments. See :class:`watchmaker.Arguments`.

"""

def __init__(self, arguments):
Expand Down
2 changes: 2 additions & 0 deletions src/watchmaker/logger/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ def make_log_dir(log_dir):
Args:
log_dir: (:obj:`str`)
Path to a directory.

"""
if not os.path.exists(log_dir):
os.makedirs(log_dir)
Expand Down Expand Up @@ -123,6 +124,7 @@ def prepare_logging(log_dir, log_level):
- ``warning``
- ``info``
- ``debug``

"""
logformat = (
'%(asctime)s [%(name)s][%(levelname)-5s][%(process)s]: %(message)s'
Expand Down
2 changes: 2 additions & 0 deletions src/watchmaker/managers/platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ def retrieve_file(self, url, filename):

filename: (:obj:`str`)
Path where the file will be saved.

"""
# Convert a local path to a URI
url = watchmaker.utils.uri_from_filepath(url)
Expand Down Expand Up @@ -268,6 +269,7 @@ def extract_contents(self, filepath, to_directory, create_dir=False):
Switch to control the creation of a subdirectory within
``to_directory`` named for the filename of the compressed file.
(*Default*: ``False``)

"""
if filepath.endswith('.zip'):
self.log.debug('File Type: zip')
Expand Down
2 changes: 1 addition & 1 deletion src/watchmaker/static/salt/content
2 changes: 1 addition & 1 deletion src/watchmaker/static/salt/formulas/dotnet4-formula
1 change: 1 addition & 0 deletions src/watchmaker/static/salt/formulas/fup-formula
Submodule fup-formula added at b8bf2e
2 changes: 1 addition & 1 deletion src/watchmaker/static/salt/formulas/scap-formula
Submodule scap-formula updated 1 files
+13 −0 scap/scc/init.sls
1 change: 1 addition & 0 deletions src/watchmaker/utils/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ def copytree(src, dst, force=False, **kwargs):
force: (:obj:`bool`)
Whether to delete destination prior to copy.
(*Default*: ``False``)

"""
if force and os.path.exists(dst):
shutil.rmtree(dst)
Expand Down
4 changes: 4 additions & 0 deletions src/watchmaker/workers/salt.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ class SaltBase(WorkerBase, PlatformManagerBase):
computer account will be created when joining a domain.
E.g. ``"OU=SuperCoolApp,DC=example,DC=com"``
(*Default*: ``''``)

"""

def __init__(self, *args, **kwargs):
Expand Down Expand Up @@ -319,6 +320,7 @@ def run_salt(self, command, **kwargs):
Watchmaker will always begin the command with the options
``--local``, ``--retcode-passthrough``, and ``--no-color``, so
do not specify those options in the command.

"""
cmd = [
self.salt_call,
Expand Down Expand Up @@ -551,6 +553,7 @@ class SaltLinux(SaltBase, LinuxPlatformManager):
A git reference present in ``git_repo``, such as a commit or a tag.
If not specified, the HEAD of the default branch is used.
(*Default*: ``''``)

"""

def __init__(self, *args, **kwargs):
Expand Down Expand Up @@ -706,6 +709,7 @@ class SaltWindows(SaltBase, WindowsPlatformManager):
salt formula. E.g. ``"MemberServer"``, ``"DomainController"``, or
``"Workstation"``
(*Default*: ``''``)

"""

def __init__(self, *args, **kwargs):
Expand Down
1 change: 1 addition & 0 deletions src/watchmaker/workers/yum.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ class Yum(WorkerBase, LinuxPlatformManager):
repo_map: (:obj:`list`)
List of dictionaries containing a map of yum repo files to systems.
(*Default*: ``[]``)

"""

SUPPORTED_DISTS = ('amazon', 'centos', 'red hat')
Expand Down
3 changes: 3 additions & 0 deletions tests/test_saltworker.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ def test_default_valid_environments(saltworker_client):

Args:
saltworker_client: (:obj:`src.workers.SaltBase`)

"""
# test that the defaults work
assert saltworker_client.before_install() is None
Expand All @@ -43,6 +44,7 @@ def test_bogus_environment(saltworker_client):

Args:
saltworker_client: (:obj:`src.workers.SaltBase`)

"""
# ensure InvalidValue is raised when a bogus environment type is selected
with pytest.raises(InvalidValue):
Expand All @@ -57,6 +59,7 @@ def test_valid_environment(saltworker_client):

Args:
saltworker_client: (:obj:`src.workers.SaltBase`)

"""
saltworker_client.ent_env = 'dev'
saltworker_client.valid_envs = [None, 'dev', 'test', 'prod']
Expand Down