mirror of
https://github.com/saltstack-formulas/bind-formula.git
synced 2025-04-15 17:20:21 +00:00
Compare commits
162 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c3b1fb43e7 | ||
![]() |
2b3ad8526a | ||
![]() |
7d1abc1591 | ||
![]() |
9c8c24fc3c | ||
![]() |
62710b1704 | ||
![]() |
313f398b14 | ||
![]() |
3e38334d7f | ||
![]() |
e4a8cc14b4 | ||
![]() |
605523b0ad | ||
![]() |
170642970c | ||
![]() |
65c7df4fe6 | ||
![]() |
cd8b4db66e | ||
![]() |
7fcc28d2f8 | ||
![]() |
3607cfceff | ||
![]() |
c86cb30386 | ||
![]() |
6ac5a96627 | ||
![]() |
51847272b8 | ||
![]() |
e0305fa365 | ||
![]() |
f8db7ee0ca | ||
![]() |
6d38ba7ab3 | ||
![]() |
4b48e5f5a0 | ||
![]() |
e583d89479 | ||
![]() |
2b7528100b | ||
![]() |
1d7ff1dd39 | ||
![]() |
116f03e73d | ||
![]() |
67d1375837 | ||
![]() |
982a53df94 | ||
![]() |
4273a4282d | ||
![]() |
09e1b977f9 | ||
![]() |
e3806c2a2e | ||
![]() |
9afa7b7bc1 | ||
![]() |
d5c6a81656 | ||
![]() |
67421958b4 | ||
![]() |
b7811aad97 | ||
![]() |
a85e06ba3c | ||
![]() |
98f961bc97 | ||
![]() |
75cc1cffbe | ||
![]() |
2f76a3f8a4 | ||
![]() |
8e73cb7295 | ||
![]() |
df1f9dc18e | ||
![]() |
c7743b186b | ||
![]() |
3c62b94bf0 | ||
![]() |
b67fe4b373 | ||
![]() |
221fd3689b | ||
![]() |
29991be470 | ||
![]() |
57157d7abb | ||
![]() |
a73e91a9e7 | ||
![]() |
ec54bb1f24 | ||
![]() |
f6074b5f61 | ||
![]() |
2d069544f6 | ||
![]() |
af5333bd21 | ||
![]() |
93e95b3ac5 | ||
![]() |
73efbb5954 | ||
![]() |
8c1a04cfbf | ||
![]() |
f442306e1a | ||
![]() |
52d3221f03 | ||
![]() |
d46d646fdc | ||
![]() |
79e374f723 | ||
![]() |
79d30aeaa4 | ||
![]() |
3eb7ea65f5 | ||
![]() |
aa69b550eb | ||
![]() |
0128f48b0b | ||
![]() |
8792640a43 | ||
![]() |
c754606a46 | ||
![]() |
8082c7e6d4 | ||
![]() |
a3556b4cc4 | ||
![]() |
5e3c319931 | ||
![]() |
73ee1c9b9f | ||
![]() |
292b0232c1 | ||
![]() |
9833cb616c | ||
![]() |
929dd8f4ac | ||
![]() |
3cb26c0a71 | ||
![]() |
9de203a5e9 | ||
![]() |
be2be9c58f | ||
![]() |
9f2687fb26 | ||
![]() |
a994865bce | ||
![]() |
0cdaad33b9 | ||
![]() |
df1f58377c | ||
![]() |
0b4432f2ec | ||
![]() |
182622d9e8 | ||
![]() |
19d42a9776 | ||
![]() |
db90981eed | ||
![]() |
c642234159 | ||
![]() |
c21f3258af | ||
![]() |
f2ec3cee07 | ||
![]() |
800a5e10db | ||
![]() |
96ff9a2faf | ||
![]() |
e479acaebf | ||
![]() |
ffc60d2e1f | ||
![]() |
1b248596e5 | ||
![]() |
c2ad4ab8d4 | ||
![]() |
54c5f37869 | ||
![]() |
be13649d76 | ||
![]() |
1b4cfcd1e6 | ||
![]() |
468616a79e | ||
![]() |
5af1255f01 | ||
![]() |
e398d7cbd5 | ||
![]() |
51f0a8e06e | ||
![]() |
67fd729f65 | ||
![]() |
2606946177 | ||
![]() |
b202791a7c | ||
![]() |
f1b306dbef | ||
![]() |
c15db2bd0c | ||
![]() |
7515651a09 | ||
![]() |
a16f0b373b | ||
![]() |
f9a1339efe | ||
![]() |
b5efc0b9bd | ||
![]() |
7cad5ea5c2 | ||
![]() |
fa1374f072 | ||
![]() |
292e495d01 | ||
![]() |
398691bb34 | ||
![]() |
c814779774 | ||
![]() |
75810c07a7 | ||
![]() |
9d2966fd32 | ||
![]() |
0dd9bd3b6a | ||
![]() |
66c4d9fe7d | ||
![]() |
5989bb9a0b | ||
![]() |
7415a9b0ce | ||
![]() |
b7b0d655e1 | ||
![]() |
88f9ff128f | ||
![]() |
37c65de548 | ||
![]() |
577ad6db1e | ||
![]() |
18381748c7 | ||
![]() |
681c345e8b | ||
![]() |
5afc27ec26 | ||
![]() |
b63490c23d | ||
![]() |
adcdbb12b8 | ||
![]() |
6ba1dd5262 | ||
![]() |
c91fe2a96b | ||
![]() |
4c6a88243e | ||
![]() |
9c11845a09 | ||
![]() |
ab6ea391d8 | ||
![]() |
792b5ab0de | ||
![]() |
7621375349 | ||
![]() |
87fdba0e0d | ||
![]() |
5883c0969f | ||
![]() |
f220886584 | ||
![]() |
67736a2fed | ||
![]() |
920615a067 | ||
![]() |
7b23dbbae0 | ||
![]() |
7a356e3db8 | ||
![]() |
426e212b4d | ||
![]() |
eb29e00d25 | ||
![]() |
004b1a86db | ||
![]() |
a26517b7c6 | ||
![]() |
a5ad4c68ab | ||
![]() |
0d02016a38 | ||
![]() |
c091c74fd7 | ||
![]() |
2ae4baa809 | ||
![]() |
e0be98a6e2 | ||
![]() |
c7d5555a21 | ||
![]() |
9163726873 | ||
![]() |
d498d1985e | ||
![]() |
90abafaa90 | ||
![]() |
44e1521280 | ||
![]() |
aaaa7904b2 | ||
![]() |
3a4d4e8d04 | ||
![]() |
59684c6f8a | ||
![]() |
1b0d03243b | ||
![]() |
c00b054ff1 | ||
![]() |
4a6ac4ebe1 | ||
![]() |
74bbc5b8de |
44 changed files with 2678 additions and 685 deletions
16
.github/workflows/commitlint.yml
vendored
Normal file
16
.github/workflows/commitlint.yml
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
name: Commitlint
|
||||
'on': [pull_request]
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: wagoid/commitlint-github-action@v1
|
14
.gitignore
vendored
14
.gitignore
vendored
|
@ -91,6 +91,9 @@ celerybeat-schedule
|
|||
venv/
|
||||
ENV/
|
||||
|
||||
# visual studio
|
||||
.vs/
|
||||
|
||||
# Spyder project settings
|
||||
.spyderproject
|
||||
.spyproject
|
||||
|
@ -105,7 +108,7 @@ ENV/
|
|||
.mypy_cache/
|
||||
|
||||
# Bundler
|
||||
Gemfile.lock
|
||||
.bundle/
|
||||
|
||||
# copied `.md` files used for conversion to `.rst` using `m2r`
|
||||
docs/*.md
|
||||
|
@ -120,3 +123,12 @@ docs/*.md
|
|||
Dockerfile.*_*
|
||||
ignore/
|
||||
tmp/
|
||||
|
||||
# `salt-formula` -- Vagrant Specific files
|
||||
.vagrant
|
||||
top.sls
|
||||
!test/salt/pillar/top.sls
|
||||
|
||||
# `suricata-formula` -- Platform binaries
|
||||
*.rpm
|
||||
*.deb
|
||||
|
|
212
.gitlab-ci.yml
Normal file
212
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,212 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
###############################################################################
|
||||
# Define all YAML node anchors
|
||||
###############################################################################
|
||||
.node_anchors:
|
||||
# `only` (also used for `except` where applicable)
|
||||
only_branch_master_parent_repo: &only_branch_master_parent_repo
|
||||
- 'master@saltstack-formulas/bind-formula'
|
||||
# `stage`
|
||||
stage_lint: &stage_lint 'lint'
|
||||
stage_release: &stage_release 'release'
|
||||
stage_test: &stage_test 'test'
|
||||
# `image`
|
||||
image_commitlint: &image_commitlint 'myii/ssf-commitlint:11'
|
||||
image_dindruby: &image_dindruby 'myii/ssf-dind-ruby:2.7.1-r3'
|
||||
image_precommit: &image_precommit
|
||||
name: 'myii/ssf-pre-commit:2.9.2'
|
||||
entrypoint: ['/bin/bash', '-c']
|
||||
image_rubocop: &image_rubocop 'pipelinecomponents/rubocop:latest'
|
||||
image_semantic-release: &image_semanticrelease 'myii/ssf-semantic-release:15.14'
|
||||
# `services`
|
||||
services_docker_dind: &services_docker_dind
|
||||
- 'docker:dind'
|
||||
# `variables`
|
||||
# https://forum.gitlab.com/t/gitlab-com-ci-caching-rubygems/5627/3
|
||||
# https://bundler.io/v1.16/bundle_config.html
|
||||
variables_bundler: &variables_bundler
|
||||
BUNDLE_CACHE_PATH: '${CI_PROJECT_DIR}/.cache/bundler'
|
||||
BUNDLE_WITHOUT: 'production'
|
||||
# `cache`
|
||||
cache_bundler: &cache_bundler
|
||||
key: '${CI_JOB_STAGE}'
|
||||
paths:
|
||||
- '${BUNDLE_CACHE_PATH}'
|
||||
|
||||
###############################################################################
|
||||
# Define stages and global variables
|
||||
###############################################################################
|
||||
stages:
|
||||
- *stage_lint
|
||||
- *stage_test
|
||||
- *stage_release
|
||||
variables:
|
||||
DOCKER_DRIVER: 'overlay2'
|
||||
|
||||
###############################################################################
|
||||
# `lint` stage: `commitlint`, `pre-commit` & `rubocop` (latest, failure allowed)
|
||||
###############################################################################
|
||||
commitlint:
|
||||
stage: *stage_lint
|
||||
image: *image_commitlint
|
||||
script:
|
||||
# Add `upstream` remote to get access to `upstream/master`
|
||||
- 'git remote add upstream
|
||||
https://gitlab.com/saltstack-formulas/bind-formula.git'
|
||||
- 'git fetch --all'
|
||||
# Set default commit hashes for `--from` and `--to`
|
||||
- 'export COMMITLINT_FROM="$(git merge-base upstream/master HEAD)"'
|
||||
- 'export COMMITLINT_TO="${CI_COMMIT_SHA}"'
|
||||
# `coqbot` adds a merge commit to test PRs on top of the latest commit in
|
||||
# the repo; amend this merge commit message to avoid failure
|
||||
- |
|
||||
if [ "${GITLAB_USER_LOGIN}" = "coqbot" ] \
|
||||
&& [ "${CI_COMMIT_BRANCH}" != "master" ]; then
|
||||
git commit --amend -m \
|
||||
'chore: reword coqbot merge commit message for commitlint'
|
||||
export COMMITLINT_TO=HEAD
|
||||
fi
|
||||
# Run `commitlint`
|
||||
- 'commitlint --from "${COMMITLINT_FROM}"
|
||||
--to "${COMMITLINT_TO}"
|
||||
--verbose'
|
||||
|
||||
pre-commit:
|
||||
stage: *stage_lint
|
||||
image: *image_precommit
|
||||
# https://pre-commit.com/#gitlab-ci-example
|
||||
variables:
|
||||
PRE_COMMIT_HOME: '${CI_PROJECT_DIR}/.cache/pre-commit'
|
||||
cache:
|
||||
key: '${CI_JOB_NAME}'
|
||||
paths:
|
||||
- '${PRE_COMMIT_HOME}'
|
||||
script:
|
||||
- 'pre-commit run --all-files --color always --verbose'
|
||||
|
||||
# Use a separate job for `rubocop` other than the one potentially run by `pre-commit`
|
||||
# - The `pre-commit` check will only be available for formulas that pass the default
|
||||
# `rubocop` check -- and must continue to do so
|
||||
# - This job is allowed to fail, so can be used for all formulas
|
||||
# - Furthermore, this job uses all of the latest `rubocop` features & cops,
|
||||
# which will help when upgrading the `rubocop` linter used in `pre-commit`
|
||||
rubocop:
|
||||
allow_failure: true
|
||||
stage: *stage_lint
|
||||
image: *image_rubocop
|
||||
script:
|
||||
- 'rubocop -d -P -S --enable-pending-cops'
|
||||
|
||||
###############################################################################
|
||||
# Define `test` template
|
||||
###############################################################################
|
||||
.test_instance: &test_instance
|
||||
stage: *stage_test
|
||||
image: *image_dindruby
|
||||
services: *services_docker_dind
|
||||
variables: *variables_bundler
|
||||
cache: *cache_bundler
|
||||
before_script:
|
||||
# TODO: This should work from the env vars above automatically
|
||||
- 'bundle config set path "${BUNDLE_CACHE_PATH}"'
|
||||
- 'bundle config set without "${BUNDLE_WITHOUT}"'
|
||||
- 'bundle install'
|
||||
script:
|
||||
# Alternative value to consider: `${CI_JOB_NAME}`
|
||||
- 'bin/kitchen verify "${DOCKER_ENV_CI_JOB_NAME}"'
|
||||
|
||||
###############################################################################
|
||||
# Define `test` template (`allow_failure: true`)
|
||||
###############################################################################
|
||||
.test_instance_failure_permitted:
|
||||
<<: *test_instance
|
||||
allow_failure: true
|
||||
|
||||
###############################################################################
|
||||
# `test` stage: each instance below uses the `test` template above
|
||||
###############################################################################
|
||||
## Define the rest of the matrix based on Kitchen testing
|
||||
# Make sure the instances listed below match up with
|
||||
# the `platforms` defined in `kitchen.yml`
|
||||
# yamllint disable rule:line-length
|
||||
# default-debian-11-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2204-tiamat-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-ubuntu-2004-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-centos-stream8-tiamat-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-centos-7-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-almalinux-8-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-rockylinux-8-tiamat-py3: {extends: '.test_instance'}
|
||||
default-debian-11-master-py3: {extends: '.test_instance'}
|
||||
default-debian-10-master-py3: {extends: '.test_instance'}
|
||||
default-debian-9-master-py3: {extends: '.test_instance'}
|
||||
default-ubuntu-2204-master-py3: {extends: '.test_instance_failure_permitted'}
|
||||
default-ubuntu-2004-master-py3: {extends: '.test_instance'}
|
||||
default-ubuntu-1804-master-py3: {extends: '.test_instance'}
|
||||
# default-centos-stream8-master-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-centos-7-master-py3: {extends: '.test_instance'}
|
||||
default-fedora-36-master-py3: {extends: '.test_instance_failure_permitted'}
|
||||
default-fedora-35-master-py3: {extends: '.test_instance'}
|
||||
default-opensuse-leap-153-master-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-tmbl-latest-master-py3: {extends: '.test_instance_failure_permitted'}
|
||||
default-amazonlinux-2-master-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-master-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-master-py3: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-master-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-master-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-master-py3: {extends: '.test_instance'}
|
||||
# default-almalinux-8-master-py3: {extends: '.test_instance'}
|
||||
# default-rockylinux-8-master-py3: {extends: '.test_instance'}
|
||||
# default-debian-11-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2204-3004-1-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-ubuntu-2004-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-centos-stream8-3004-1-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-centos-7-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-fedora-36-3004-1-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-fedora-35-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-almalinux-8-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-rockylinux-8-3004-1-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-153-3004-0-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-tmbl-latest-3004-0-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-debian-10-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-centos-stream8-3003-4-py3: {extends: '.test_instance_failure_permitted'}
|
||||
# default-centos-7-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3003-4-py3: {extends: '.test_instance'}
|
||||
# default-almalinux-8-3003-4-py3: {extends: '.test_instance'}
|
||||
# yamllint enable rule:line-length
|
||||
|
||||
###############################################################################
|
||||
# `release` stage: `semantic-release`
|
||||
###############################################################################
|
||||
semantic-release:
|
||||
only: *only_branch_master_parent_repo
|
||||
stage: *stage_release
|
||||
image: *image_semanticrelease
|
||||
variables:
|
||||
MAINTAINER_TOKEN: '${GH_TOKEN}'
|
||||
script:
|
||||
# Update `AUTHORS.md`
|
||||
- '${HOME}/go/bin/maintainer contributor'
|
||||
# Run `semantic-release`
|
||||
- 'semantic-release'
|
69
.pre-commit-config.yaml
Normal file
69
.pre-commit-config.yaml
Normal file
|
@ -0,0 +1,69 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
# See https://pre-commit.com for more information
|
||||
# See https://pre-commit.com/hooks.html for more hooks
|
||||
ci:
|
||||
autofix_commit_msg: |
|
||||
ci(pre-commit.ci): apply auto fixes from pre-commit.com hooks
|
||||
|
||||
For more information, see https://pre-commit.ci
|
||||
autofix_prs: true
|
||||
autoupdate_branch: ''
|
||||
autoupdate_commit_msg: |
|
||||
ci(pre-commit.ci): perform `pre-commit` autoupdate
|
||||
autoupdate_schedule: quarterly
|
||||
skip: []
|
||||
submodules: false
|
||||
default_stages: [commit]
|
||||
repos:
|
||||
- repo: https://github.com/dafyddj/commitlint-pre-commit-hook
|
||||
rev: v2.3.0
|
||||
hooks:
|
||||
- id: commitlint
|
||||
name: Check commit message using commitlint
|
||||
description: Lint commit message against @commitlint/config-conventional rules
|
||||
stages: [commit-msg]
|
||||
additional_dependencies: ['@commitlint/config-conventional@8.3.4']
|
||||
- id: commitlint-travis
|
||||
stages: [manual]
|
||||
additional_dependencies: ['@commitlint/config-conventional@8.3.4']
|
||||
always_run: true
|
||||
- repo: https://github.com/shellcheck-py/shellcheck-py
|
||||
rev: v0.8.0.4
|
||||
hooks:
|
||||
- id: shellcheck
|
||||
name: Check shell scripts with shellcheck
|
||||
files: ^.*\.(sh|bash|ksh)$
|
||||
types: []
|
||||
- repo: https://github.com/adrienverge/yamllint
|
||||
rev: v1.26.3
|
||||
hooks:
|
||||
- id: yamllint
|
||||
name: Check YAML syntax with yamllint
|
||||
args: [--strict, '.']
|
||||
always_run: true
|
||||
pass_filenames: false
|
||||
- repo: https://github.com/warpnet/salt-lint
|
||||
rev: v0.8.0
|
||||
hooks:
|
||||
- id: salt-lint
|
||||
name: Check Salt files using salt-lint
|
||||
files: ^.*\.(sls|jinja|j2|tmpl|tst)$
|
||||
- repo: https://github.com/myint/rstcheck
|
||||
rev: 3f929574
|
||||
hooks:
|
||||
- id: rstcheck
|
||||
name: Check reST files using rstcheck
|
||||
exclude: 'docs/CHANGELOG.rst'
|
||||
- repo: https://github.com/saltstack-formulas/mirrors-rst-lint
|
||||
rev: v1.3.2
|
||||
hooks:
|
||||
- id: rst-lint
|
||||
name: Check reST files using rst-lint
|
||||
exclude: |
|
||||
(?x)^(
|
||||
docs/CHANGELOG.rst|
|
||||
docs/TOFS_pattern.rst|
|
||||
)$
|
||||
additional_dependencies: [pygments==2.9.0]
|
4
.rstcheck.cfg
Normal file
4
.rstcheck.cfg
Normal file
|
@ -0,0 +1,4 @@
|
|||
[rstcheck]
|
||||
report=info
|
||||
ignore_language=rst
|
||||
ignore_messages=(Duplicate (ex|im)plicit target.*|Hyperlink target ".*" is not referenced\.$)
|
23
.rubocop.yml
Normal file
23
.rubocop.yml
Normal file
|
@ -0,0 +1,23 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
# General overrides used across formulas in the org
|
||||
Layout/LineLength:
|
||||
# Increase from default of `80`
|
||||
# Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`)
|
||||
Max: 88
|
||||
Metrics/BlockLength:
|
||||
IgnoredMethods:
|
||||
- control
|
||||
- describe
|
||||
# Increase from default of `25`
|
||||
Max: 30
|
||||
Security/YAMLLoad:
|
||||
Exclude:
|
||||
- test/integration/**/_mapdata.rb
|
||||
|
||||
# General settings across all cops in this formula
|
||||
AllCops:
|
||||
NewCops: enable
|
||||
|
||||
# Any offenses that should be fixed, e.g. collected via. `rubocop --auto-gen-config`
|
14
.salt-lint
Normal file
14
.salt-lint
Normal file
|
@ -0,0 +1,14 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
exclude_paths: []
|
||||
rules: {}
|
||||
skip_list:
|
||||
# Using `salt-lint` for linting other files as well, such as Jinja macros/templates
|
||||
- 205 # Use ".sls" as a Salt State file extension
|
||||
# Skipping `207` and `208` because `210` is sufficient, at least for the time-being
|
||||
# I.e. Allows 3-digit unquoted codes to still be used, such as `644` and `755`
|
||||
- 207 # File modes should always be encapsulated in quotation marks
|
||||
- 208 # File modes should always contain a leading zero
|
||||
tags: []
|
||||
verbosity: 1
|
233
.travis.yml
233
.travis.yml
|
@ -1,69 +1,170 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
stages:
|
||||
- test
|
||||
- lint
|
||||
- name: release
|
||||
if: branch = master AND type != pull_request
|
||||
################################################################################
|
||||
# NOTE: This file is UNMAINTAINED; it is provided for references purposes only.
|
||||
# No guarantees are tendered that this structure will work after 2020.
|
||||
################################################################################
|
||||
# * https://en.wikipedia.org/wiki/Travis_CI:
|
||||
# - "... free open-source plans were removed in [sic] the end of 2020"
|
||||
# - https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing
|
||||
# - https://ropensci.org/technotes/2020/11/19/moving-away-travis/
|
||||
################################################################################
|
||||
## Machine config
|
||||
os: 'linux'
|
||||
arch: 'amd64'
|
||||
dist: 'bionic'
|
||||
version: '~> 1.0'
|
||||
|
||||
sudo: required
|
||||
cache: bundler
|
||||
language: ruby
|
||||
dist: xenial
|
||||
## Language and cache config
|
||||
language: 'ruby'
|
||||
cache: 'bundler'
|
||||
|
||||
## Services config
|
||||
services:
|
||||
- docker
|
||||
|
||||
# Make sure the instances listed below match up with
|
||||
# the `platforms` defined in `kitchen.yml`
|
||||
env:
|
||||
matrix:
|
||||
- INSTANCE: default-debian-9-develop-py3
|
||||
# - INSTANCE: default-ubuntu-1804-develop-py3
|
||||
# - INSTANCE: default-centos-7-develop-py3
|
||||
# - INSTANCE: default-fedora-29-develop-py3
|
||||
# - INSTANCE: default-opensuse-leap-15-develop-py3
|
||||
# - INSTANCE: default-debian-9-2019-2-py3
|
||||
- INSTANCE: default-ubuntu-1804-2019-2-py3
|
||||
- INSTANCE: default-centos-7-2019-2-py3
|
||||
# - INSTANCE: default-fedora-29-2019-2-py3
|
||||
# - INSTANCE: default-opensuse-leap-15-2019-2-py3
|
||||
# - INSTANCE: default-debian-9-2018-3-py2
|
||||
# - INSTANCE: default-ubuntu-1604-2018-3-py2
|
||||
# - INSTANCE: default-centos-7-2018-3-py2
|
||||
# - INSTANCE: default-fedora-29-2018-3-py2
|
||||
- INSTANCE: default-opensuse-leap-42-2018-3-py2
|
||||
# - INSTANCE: default-debian-8-2017-7-py2
|
||||
# - INSTANCE: default-ubuntu-1604-2017-7-py2
|
||||
- INSTANCE: default-centos-6-2017-7-py2
|
||||
# - INSTANCE: default-fedora-28-2017-7-py2
|
||||
# - INSTANCE: default-opensuse-leap-42-2017-7-py2
|
||||
|
||||
## Script to run for the test stage
|
||||
script:
|
||||
- bin/kitchen verify ${INSTANCE}
|
||||
- bin/kitchen verify "${INSTANCE}"
|
||||
|
||||
## Stages and jobs matrix
|
||||
stages:
|
||||
- test
|
||||
# # As part of the switch away from Travis CI, ensure that the `release` stage
|
||||
# # is not run inadvertently
|
||||
# - name: 'release'
|
||||
# if: 'branch = master AND type != pull_request'
|
||||
jobs:
|
||||
allow_failures:
|
||||
- env: Lint_rubocop
|
||||
fast_finish: true
|
||||
include:
|
||||
# Define the `lint` stage (runs `yamllint` and `commitlint`)
|
||||
- stage: lint
|
||||
language: node_js
|
||||
## Define the test stage that runs the linters (and testing matrix, if applicable)
|
||||
|
||||
# Run all of the linters in a single job (except `rubocop`)
|
||||
- language: 'node_js'
|
||||
node_js: 'lts/*'
|
||||
env: 'Lint'
|
||||
name: 'Lint: salt-lint, yamllint, shellcheck & commitlint'
|
||||
before_install: 'skip'
|
||||
script:
|
||||
# Install and run `salt-lint`
|
||||
- pip install --user salt-lint
|
||||
- git ls-files -- '*.sls' '*.jinja' '*.j2' '*.tmpl' '*.tst'
|
||||
| xargs salt-lint
|
||||
# Install and run `yamllint`
|
||||
# Need at least `v1.17.0` for the `yaml-files` setting
|
||||
- pip install --user yamllint>=1.17.0
|
||||
- yamllint -s .
|
||||
# Run `shellcheck` (already pre-installed in Travis)
|
||||
- shellcheck --version
|
||||
- git ls-files -- '*.sh' '*.bash' '*.ksh'
|
||||
| xargs shellcheck
|
||||
# Install and run `commitlint`
|
||||
- npm i -D @commitlint/config-conventional
|
||||
@commitlint/travis-cli
|
||||
- commitlint-travis
|
||||
# Run the `rubocop` linter in a separate job that is allowed to fail
|
||||
# Once these lint errors are fixed, this can be merged into a single job
|
||||
- language: node_js
|
||||
node_js: lts/*
|
||||
env: Lint_rubocop
|
||||
name: 'Lint: rubocop'
|
||||
before_install: skip
|
||||
script:
|
||||
# Install and run `yamllint`
|
||||
- pip install --user yamllint
|
||||
# yamllint disable-line rule:line-length
|
||||
- yamllint -s . .yamllint pillar.example test/salt/pillar/default.sls
|
||||
# Install and run `commitlint`
|
||||
- npm install @commitlint/config-conventional -D
|
||||
- npm install @commitlint/travis-cli -D
|
||||
- commitlint-travis
|
||||
# Define the release stage that runs `semantic-release`
|
||||
- stage: release
|
||||
language: node_js
|
||||
node_js: lts/*
|
||||
before_install: skip
|
||||
# Install and run `rubocop`
|
||||
- gem install rubocop
|
||||
- rubocop -d
|
||||
|
||||
# Run `pre-commit` linters in a single job
|
||||
- language: 'python'
|
||||
env: 'Lint_pre-commit'
|
||||
name: 'Lint: pre-commit'
|
||||
before_install: 'skip'
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.cache/pre-commit
|
||||
script:
|
||||
# Install and run `pre-commit`
|
||||
- pip install pre-commit==2.7.1
|
||||
- pre-commit run --all-files --color always --verbose
|
||||
- pre-commit run --color always --hook-stage manual --verbose commitlint-travis
|
||||
|
||||
## Define the rest of the matrix based on Kitchen testing
|
||||
# Make sure the instances listed below match up with
|
||||
# the `platforms` defined in `kitchen.yml`
|
||||
# - env: INSTANCE=default-debian-11-tiamat-py3
|
||||
# - env: INSTANCE=default-debian-10-tiamat-py3
|
||||
# - env: INSTANCE=default-debian-9-tiamat-py3
|
||||
# - env: INSTANCE=default-ubuntu-2204-tiamat-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-tiamat-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-tiamat-py3
|
||||
# - env: INSTANCE=default-centos-stream8-tiamat-py3
|
||||
# - env: INSTANCE=default-centos-7-tiamat-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-tiamat-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-tiamat-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-tiamat-py3
|
||||
# - env: INSTANCE=default-almalinux-8-tiamat-py3
|
||||
# - env: INSTANCE=default-rockylinux-8-tiamat-py3
|
||||
- env: INSTANCE=default-debian-11-master-py3
|
||||
- env: INSTANCE=default-debian-10-master-py3
|
||||
- env: INSTANCE=default-debian-9-master-py3
|
||||
- env: INSTANCE=default-ubuntu-2204-master-py3
|
||||
- env: INSTANCE=default-ubuntu-2004-master-py3
|
||||
- env: INSTANCE=default-ubuntu-1804-master-py3
|
||||
# - env: INSTANCE=default-centos-stream8-master-py3
|
||||
# - env: INSTANCE=default-centos-7-master-py3
|
||||
- env: INSTANCE=default-fedora-36-master-py3
|
||||
- env: INSTANCE=default-fedora-35-master-py3
|
||||
- env: INSTANCE=default-opensuse-leap-153-master-py3
|
||||
# - env: INSTANCE=default-opensuse-tmbl-latest-master-py3
|
||||
- env: INSTANCE=default-amazonlinux-2-master-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-master-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-master-py3
|
||||
# - env: INSTANCE=default-arch-base-latest-master-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-master-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-master-py3
|
||||
# - env: INSTANCE=default-almalinux-8-master-py3
|
||||
# - env: INSTANCE=default-rockylinux-8-master-py3
|
||||
# - env: INSTANCE=default-debian-11-3004-1-py3
|
||||
# - env: INSTANCE=default-debian-10-3004-1-py3
|
||||
# - env: INSTANCE=default-debian-9-3004-1-py3
|
||||
# - env: INSTANCE=default-ubuntu-2204-3004-1-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-3004-1-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3004-1-py3
|
||||
# - env: INSTANCE=default-centos-stream8-3004-1-py3
|
||||
# - env: INSTANCE=default-centos-7-3004-1-py3
|
||||
# - env: INSTANCE=default-fedora-36-3004-1-py3
|
||||
# - env: INSTANCE=default-fedora-35-3004-1-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3004-1-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3004-1-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3004-1-py3
|
||||
# - env: INSTANCE=default-arch-base-latest-3004-1-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-3004-1-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-3004-1-py3
|
||||
# - env: INSTANCE=default-almalinux-8-3004-1-py3
|
||||
# - env: INSTANCE=default-rockylinux-8-3004-1-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-153-3004-0-py3
|
||||
# - env: INSTANCE=default-opensuse-tmbl-latest-3004-0-py3
|
||||
# - env: INSTANCE=default-debian-10-3003-4-py3
|
||||
# - env: INSTANCE=default-debian-9-3003-4-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-3003-4-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3003-4-py3
|
||||
# - env: INSTANCE=default-centos-stream8-3003-4-py3
|
||||
# - env: INSTANCE=default-centos-7-3003-4-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3003-4-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3003-4-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3003-4-py3
|
||||
# - env: INSTANCE=default-almalinux-8-3003-4-py3
|
||||
|
||||
## Define the release stage that runs `semantic-release`
|
||||
- stage: 'release'
|
||||
language: 'node_js'
|
||||
node_js: 'lts/*'
|
||||
env: 'Release'
|
||||
name: 'Run semantic-release inc. file updates to AUTHORS, CHANGELOG & FORMULA'
|
||||
before_install: 'skip'
|
||||
script:
|
||||
# Update `AUTHORS.md`
|
||||
- export MAINTAINER_TOKEN=${GH_TOKEN}
|
||||
|
@ -71,12 +172,26 @@ jobs:
|
|||
- maintainer contributor
|
||||
|
||||
# Install all dependencies required for `semantic-release`
|
||||
- npm install @semantic-release/changelog@3 -D
|
||||
- npm install @semantic-release/exec@3 -D
|
||||
- npm install @semantic-release/git@7 -D
|
||||
- npm i -D @semantic-release/changelog@3
|
||||
@semantic-release/exec@3
|
||||
@semantic-release/git@7
|
||||
deploy:
|
||||
provider: script
|
||||
skip_cleanup: true
|
||||
script:
|
||||
# Run `semantic-release`
|
||||
- npx semantic-release@15
|
||||
provider: 'script'
|
||||
# Opt-in to `dpl v2` to complete the Travis build config validation (beta)
|
||||
# * https://docs.travis-ci.com/user/build-config-validation
|
||||
# Deprecated `skip_cleanup` can now be avoided, `cleanup: false` is by default
|
||||
edge: true
|
||||
# Run `semantic-release`
|
||||
script: 'npx semantic-release@15.14'
|
||||
|
||||
# Notification options: `always`, `never` or `change`
|
||||
notifications:
|
||||
webhooks:
|
||||
if: 'repo = saltstack-formulas/bind-formula'
|
||||
urls:
|
||||
- https://saltstack-formulas.zulipchat.com/api/v1/external/travis?api_key=HsIq3o5QmLxdnVCKF9is0FUIpkpAY79P&stream=CI&topic=saltstack-formulas%2Fbind-formula&ignore_pull_requests=true
|
||||
on_success: always # default: always
|
||||
on_failure: always # default: always
|
||||
on_start: always # default: never
|
||||
on_cancel: always # default: always
|
||||
on_error: always # default: always
|
||||
|
|
34
.yamllint
34
.yamllint
|
@ -2,23 +2,53 @@
|
|||
# vim: ft=yaml
|
||||
---
|
||||
# Extend the `default` configuration provided by `yamllint`
|
||||
extends: default
|
||||
extends: 'default'
|
||||
|
||||
# Files to ignore completely
|
||||
# 1. All YAML files under directory `node_modules/`, introduced during the Travis run
|
||||
# 1. All YAML files under directory `.bundle/`, introduced if gems are installed locally
|
||||
# 2. All YAML files under directory `.cache/`, introduced during the CI run
|
||||
# 3. All YAML files under directory `.git/`
|
||||
# 4. All YAML files under directory `node_modules/`, introduced during the CI run
|
||||
# 5. Any SLS files under directory `test/`, which are actually state files
|
||||
# 6. Any YAML files under directory `.kitchen/`, introduced during local testing
|
||||
# 7. `kitchen.vagrant.yml`, which contains Embedded Ruby (ERB) template syntax
|
||||
ignore: |
|
||||
.bundle/
|
||||
.cache/
|
||||
.git/
|
||||
node_modules/
|
||||
test/**/states/**/*.sls
|
||||
.kitchen/
|
||||
kitchen.vagrant.yml
|
||||
|
||||
yaml-files:
|
||||
# Default settings
|
||||
- '*.yaml'
|
||||
- '*.yml'
|
||||
- .salt-lint
|
||||
- .yamllint
|
||||
# SaltStack Formulas additional settings
|
||||
- '*.example'
|
||||
- test/**/*.sls
|
||||
|
||||
rules:
|
||||
comments-indentation:
|
||||
ignore: |
|
||||
pillar.example
|
||||
pillar-with-views.example
|
||||
empty-values:
|
||||
forbid-in-block-mappings: true
|
||||
forbid-in-flow-mappings: true
|
||||
key-duplicates:
|
||||
ignore: |
|
||||
pillar.example
|
||||
line-length:
|
||||
ignore: |
|
||||
pillar.example
|
||||
pillar-with-views.example
|
||||
# Increase from default of `80`
|
||||
# Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`)
|
||||
max: 88
|
||||
octal-values:
|
||||
forbid-implicit-octal: true
|
||||
forbid-explicit-octal: true
|
||||
|
|
100
AUTHORS.md
100
AUTHORS.md
|
@ -4,55 +4,57 @@ This list is sorted by the number of commits per contributor in _descending_ ord
|
|||
|
||||
Avatar|Contributor|Contributions
|
||||
:-:|---|:-:
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/242396?v=4' width='36' height='36' alt='@javierbertoli'>|[@javierbertoli](https://github.com/javierbertoli)|32
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1396878?v=4' width='36' height='36' alt='@gravyboat'>|[@gravyboat](https://github.com/gravyboat)|21
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/18069703?v=4' width='36' height='36' alt='@crux-capacitor'>|[@crux-capacitor](https://github.com/crux-capacitor)|14
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/10231489?v=4' width='36' height='36' alt='@myii'>|[@myii](https://github.com/myii)|12
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/3374962?v=4' width='36' height='36' alt='@nmadhok'>|[@nmadhok](https://github.com/nmadhok)|11
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1920805?v=4' width='36' height='36' alt='@alxwr'>|[@alxwr](https://github.com/alxwr)|11
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/2995329?v=4' width='36' height='36' alt='@t0fik'>|[@t0fik](https://github.com/t0fik)|10
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/8395913?v=4' width='36' height='36' alt='@aanriot'>|[@aanriot](https://github.com/aanriot)|9
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1800660?v=4' width='36' height='36' alt='@aboe76'>|[@aboe76](https://github.com/aboe76)|9
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/5682028?v=4' width='36' height='36' alt='@nadvornik'>|[@nadvornik](https://github.com/nadvornik)|9
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/2094680?v=4' width='36' height='36' alt='@daschatten'>|[@daschatten](https://github.com/daschatten)|9
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/4323424?v=4' width='36' height='36' alt='@joe-bowman'>|[@joe-bowman](https://github.com/joe-bowman)|7
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/637990?v=4' width='36' height='36' alt='@bmwiedemann'>|[@bmwiedemann](https://github.com/bmwiedemann)|6
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/6322354?v=4' width='36' height='36' alt='@ppieprzycki'>|[@ppieprzycki](https://github.com/ppieprzycki)|5
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/507599?v=4' width='36' height='36' alt='@thatch45'>|[@thatch45](https://github.com/thatch45)|5
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/528061?v=4' width='36' height='36' alt='@puneetk'>|[@puneetk](https://github.com/puneetk)|5
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/52996?v=4' width='36' height='36' alt='@daks'>|[@daks](https://github.com/daks)|5
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/287147?v=4' width='36' height='36' alt='@techhat'>|[@techhat](https://github.com/techhat)|4
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/10901150?v=4' width='36' height='36' alt='@ryanwalder'>|[@ryanwalder](https://github.com/ryanwalder)|4
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/6639666?v=4' width='36' height='36' alt='@ukretschmer'>|[@ukretschmer](https://github.com/ukretschmer)|4
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen5'>|[@babilen5](https://github.com/babilen5)|4
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/18299?v=4' width='36' height='36' alt='@davidkarlsen'>|[@davidkarlsen](https://github.com/davidkarlsen)|4
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/811611?v=4' width='36' height='36' alt='@cosu'>|[@cosu](https://github.com/cosu)|3
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/718525?v=4' width='36' height='36' alt='@garethgreenaway'>|[@garethgreenaway](https://github.com/garethgreenaway)|3
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/4156131?v=4' width='36' height='36' alt='@skylerberg'>|[@skylerberg](https://github.com/skylerberg)|3
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/6215293?v=4' width='36' height='36' alt='@0xf10e'>|[@0xf10e](https://github.com/0xf10e)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/5789536?v=4' width='36' height='36' alt='@ogabrielsantos'>|[@ogabrielsantos](https://github.com/ogabrielsantos)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3768412?v=4' width='36' height='36' alt='@stp-ip'>|[@stp-ip](https://github.com/stp-ip)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/91293?v=4' width='36' height='36' alt='@whiteinge'>|[@whiteinge](https://github.com/whiteinge)|2
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1806188?v=4' width='36' height='36' alt='@tedski'>|[@tedski](https://github.com/tedski)|2
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/1622925?v=4' width='36' height='36' alt='@alexeiswirth'>|[@alexeiswirth](https://github.com/alexeiswirth)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3122114?v=4' width='36' height='36' alt='@kiwiz'>|[@kiwiz](https://github.com/kiwiz)|2
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/976976?v=4' width='36' height='36' alt='@Aloz1'>|[@Aloz1](https://github.com/Aloz1)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1079875?v=4' width='36' height='36' alt='@bogdanr'>|[@bogdanr](https://github.com/bogdanr)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5575236?v=4' width='36' height='36' alt='@BrianSidebotham'>|[@BrianSidebotham](https://github.com/BrianSidebotham)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/776662?v=4' width='36' height='36' alt='@carlosperello'>|[@carlosperello](https://github.com/carlosperello)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/306240?v=4' width='36' height='36' alt='@UtahDave'>|[@UtahDave](https://github.com/UtahDave)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/94157?v=4' width='36' height='36' alt='@imran1008'>|[@imran1008](https://github.com/imran1008)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/7613500?v=4' width='36' height='36' alt='@levlozhkin'>|[@levlozhkin](https://github.com/levlozhkin)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/7139195?v=4' width='36' height='36' alt='@xenophonf'>|[@xenophonf](https://github.com/xenophonf)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2004149?v=4' width='36' height='36' alt='@barroco'>|[@barroco](https://github.com/barroco)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/2321403?v=4' width='36' height='36' alt='@nickbooties'>|[@nickbooties](https://github.com/nickbooties)|1
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/949989?v=4' width='36' height='36' alt='@attiasr'>|[@attiasr](https://github.com/attiasr)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/434444?v=4' width='36' height='36' alt='@tiefpunkt'>|[@tiefpunkt](https://github.com/tiefpunkt)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/13481669?v=4' width='36' height='36' alt='@vmagistro'>|[@vmagistro](https://github.com/vmagistro)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/753483?v=4' width='36' height='36' alt='@AdrienR'>|[@AdrienR](https://github.com/AdrienR)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/10585477?v=4' width='36' height='36' alt='@blacksmith77'>|[@blacksmith77](https://github.com/blacksmith77)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2061751?v=4' width='36' height='36' alt='@matthew-parlette'>|[@matthew-parlette](https://github.com/matthew-parlette)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10231489?v=4' width='36' height='36' alt='@myii'>|[@myii](https://github.com/myii)|107
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/242396?v=4' width='36' height='36' alt='@javierbertoli'>|[@javierbertoli](https://github.com/javierbertoli)|34
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1396878?v=4' width='36' height='36' alt='@gravyboat'>|[@gravyboat](https://github.com/gravyboat)|21
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/18069703?v=4' width='36' height='36' alt='@crux-capacitor'>|[@crux-capacitor](https://github.com/crux-capacitor)|14
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3374962?v=4' width='36' height='36' alt='@nmadhok'>|[@nmadhok](https://github.com/nmadhok)|11
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1920805?v=4' width='36' height='36' alt='@alxwr'>|[@alxwr](https://github.com/alxwr)|11
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2995329?v=4' width='36' height='36' alt='@t0fik'>|[@t0fik](https://github.com/t0fik)|10
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1800660?v=4' width='36' height='36' alt='@aboe76'>|[@aboe76](https://github.com/aboe76)|10
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/8395913?v=4' width='36' height='36' alt='@aanriot'>|[@aanriot](https://github.com/aanriot)|9
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5682028?v=4' width='36' height='36' alt='@nadvornik'>|[@nadvornik](https://github.com/nadvornik)|9
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2094680?v=4' width='36' height='36' alt='@daschatten'>|[@daschatten](https://github.com/daschatten)|9
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4323424?v=4' width='36' height='36' alt='@joe-bowman'>|[@joe-bowman](https://github.com/joe-bowman)|7
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/637990?v=4' width='36' height='36' alt='@bmwiedemann'>|[@bmwiedemann](https://github.com/bmwiedemann)|6
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/52996?v=4' width='36' height='36' alt='@daks'>|[@daks](https://github.com/daks)|6
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6322354?v=4' width='36' height='36' alt='@ppieprzycki'>|[@ppieprzycki](https://github.com/ppieprzycki)|5
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/507599?v=4' width='36' height='36' alt='@thatch45'>|[@thatch45](https://github.com/thatch45)|5
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/528061?v=4' width='36' height='36' alt='@puneetk'>|[@puneetk](https://github.com/puneetk)|5
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/287147?v=4' width='36' height='36' alt='@techhat'>|[@techhat](https://github.com/techhat)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6639666?v=4' width='36' height='36' alt='@ukretschmer'>|[@ukretschmer](https://github.com/ukretschmer)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen'>|[@babilen](https://github.com/babilen)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/18299?v=4' width='36' height='36' alt='@davidkarlsen'>|[@davidkarlsen](https://github.com/davidkarlsen)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/811611?v=4' width='36' height='36' alt='@cosu'>|[@cosu](https://github.com/cosu)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4195158?v=4' width='36' height='36' alt='@dafyddj'>|[@dafyddj](https://github.com/dafyddj)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/718525?v=4' width='36' height='36' alt='@garethgreenaway'>|[@garethgreenaway](https://github.com/garethgreenaway)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4156131?v=4' width='36' height='36' alt='@skylerberg'>|[@skylerberg](https://github.com/skylerberg)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1806188?v=4' width='36' height='36' alt='@tedski'>|[@tedski](https://github.com/tedski)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6215293?v=4' width='36' height='36' alt='@0xf10e'>|[@0xf10e](https://github.com/0xf10e)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5789536?v=4' width='36' height='36' alt='@ogabrielsantos'>|[@ogabrielsantos](https://github.com/ogabrielsantos)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3768412?v=4' width='36' height='36' alt='@stp-ip'>|[@stp-ip](https://github.com/stp-ip)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/91293?v=4' width='36' height='36' alt='@whiteinge'>|[@whiteinge](https://github.com/whiteinge)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1622925?v=4' width='36' height='36' alt='@alexeiswirth'>|[@alexeiswirth](https://github.com/alexeiswirth)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3122114?v=4' width='36' height='36' alt='@kiwiz'>|[@kiwiz](https://github.com/kiwiz)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/976976?v=4' width='36' height='36' alt='@Aloz1'>|[@Aloz1](https://github.com/Aloz1)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1079875?v=4' width='36' height='36' alt='@bogdanr'>|[@bogdanr](https://github.com/bogdanr)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5575236?v=4' width='36' height='36' alt='@BrianSidebotham'>|[@BrianSidebotham](https://github.com/BrianSidebotham)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/776662?v=4' width='36' height='36' alt='@carlosperello'>|[@carlosperello](https://github.com/carlosperello)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1233212?v=4' width='36' height='36' alt='@baby-gnu'>|[@baby-gnu](https://github.com/baby-gnu)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/306240?v=4' width='36' height='36' alt='@UtahDave'>|[@UtahDave](https://github.com/UtahDave)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/94157?v=4' width='36' height='36' alt='@imran1008'>|[@imran1008](https://github.com/imran1008)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7613500?v=4' width='36' height='36' alt='@levlozhkin'>|[@levlozhkin](https://github.com/levlozhkin)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6086064?v=4' width='36' height='36' alt='@mgomersbach'>|[@mgomersbach](https://github.com/mgomersbach)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7139195?v=4' width='36' height='36' alt='@xenophonf'>|[@xenophonf](https://github.com/xenophonf)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2321403?v=4' width='36' height='36' alt='@nickbooties'>|[@nickbooties](https://github.com/nickbooties)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/949989?v=4' width='36' height='36' alt='@attiasr'>|[@attiasr](https://github.com/attiasr)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/434444?v=4' width='36' height='36' alt='@tiefpunkt'>|[@tiefpunkt](https://github.com/tiefpunkt)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/13481669?v=4' width='36' height='36' alt='@vmagistro'>|[@vmagistro](https://github.com/vmagistro)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/753483?v=4' width='36' height='36' alt='@AdrienR'>|[@AdrienR](https://github.com/AdrienR)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10585477?v=4' width='36' height='36' alt='@blacksmith77'>|[@blacksmith77](https://github.com/blacksmith77)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2061751?v=4' width='36' height='36' alt='@matthew-parlette'>|[@matthew-parlette](https://github.com/matthew-parlette)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10833722?v=4' width='36' height='36' alt='@sylvainfaivre'>|[@sylvainfaivre](https://github.com/sylvainfaivre)|1
|
||||
|
||||
---
|
||||
|
||||
Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2019-08-17.
|
||||
Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2021-09-13.
|
||||
|
|
164
CHANGELOG.md
164
CHANGELOG.md
|
@ -1,5 +1,169 @@
|
|||
# Changelog
|
||||
|
||||
# [0.20.0](https://github.com/saltstack-formulas/bind-formula/compare/v0.19.2...v0.20.0) (2021-09-13)
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **3003.1:** update inc. AlmaLinux, Rocky & `rst-lint` [skip ci] ([8082c7e](https://github.com/saltstack-formulas/bind-formula/commit/8082c7e6d48ccf4e5e66ee821fad4f57183d7524))
|
||||
* **commitlint:** ensure `upstream/master` uses main repo URL [skip ci] ([19d42a9](https://github.com/saltstack-formulas/bind-formula/commit/19d42a9776198e802215bbb38716b2295f6d18b3))
|
||||
* **gemfile.lock:** add to repo with updated `Gemfile` [skip ci] ([c15db2b](https://github.com/saltstack-formulas/bind-formula/commit/c15db2bd0cbb5b303b98a9ed7102b2b26aff9057))
|
||||
* **gemfile+lock:** use `ssf` customised `inspec` repo [skip ci] ([d46d646](https://github.com/saltstack-formulas/bind-formula/commit/d46d646fdc9a944a4dcecff245088b5b268da0ec))
|
||||
* **gitlab-ci:** use GitLab CI as Travis CI replacement ([c642234](https://github.com/saltstack-formulas/bind-formula/commit/c64223415906f733d7db1405468a43050d9b15ad))
|
||||
* **kitchen:** move `provisioner` block & update `run_command` [skip ci] ([0128f48](https://github.com/saltstack-formulas/bind-formula/commit/0128f48b0b468541db8359c98bcbcf9f52481ea2))
|
||||
* **kitchen+ci:** update with latest `3003.2` pre-salted images [skip ci] ([8c1a04c](https://github.com/saltstack-formulas/bind-formula/commit/8c1a04cfbf2ee683981cacf03e89d5e0b6926d4a))
|
||||
* add Debian 11 Bullseye & update `yamllint` configuration [skip ci] ([aa69b55](https://github.com/saltstack-formulas/bind-formula/commit/aa69b550eb6a6ec16e53bf7c28312cec1b6f28f8))
|
||||
* **gemfile+lock:** use `ssf` customised `kitchen-docker` repo [skip ci] ([0cdaad3](https://github.com/saltstack-formulas/bind-formula/commit/0cdaad33b9b8ca1fea0ab8210182d6ccbe5a6c75))
|
||||
* **kitchen:** use `saltimages` Docker Hub where available [skip ci] ([1b4cfcd](https://github.com/saltstack-formulas/bind-formula/commit/1b4cfcd1e6d19312f3e0802bc5c567ad6ea15013))
|
||||
* **kitchen+ci:** use latest pre-salted images (after CVE) [skip ci] ([9de203a](https://github.com/saltstack-formulas/bind-formula/commit/9de203a5e947b282c2c99e5c66161f553b8379f6))
|
||||
* **kitchen+gitlab:** adjust matrix to add `3003` [skip ci] ([9833cb6](https://github.com/saltstack-formulas/bind-formula/commit/9833cb616c026abce0b0eb11ea5620a060b0af32))
|
||||
* **kitchen+gitlab:** remove Ubuntu 16.04 & Fedora 32 (EOL) [skip ci] ([a3556b4](https://github.com/saltstack-formulas/bind-formula/commit/a3556b4cc4931a0062c89019bb22a11885328c57))
|
||||
* add `arch-master` to matrix and update `.travis.yml` [skip ci] ([73ee1c9](https://github.com/saltstack-formulas/bind-formula/commit/73ee1c9b9f7987c41d7f427e0a7decd8c42eaab8))
|
||||
* **gitlab-ci:** add `rubocop` linter (with `allow_failure`) [skip ci] ([db90981](https://github.com/saltstack-formulas/bind-formula/commit/db90981eed9fcc4511268c2cf7dd3e0be4241216))
|
||||
* **kitchen+gitlab-ci:** use latest pre-salted images [skip ci] ([df1f583](https://github.com/saltstack-formulas/bind-formula/commit/df1f58377c0497b7a5ef973df4596e4deb201a4a))
|
||||
* **kitchen+travis:** remove `master-py2-arch-base-latest` [skip ci] ([f1b306d](https://github.com/saltstack-formulas/bind-formula/commit/f1b306dbef9e4f6a83a789851d1230639226ec1c))
|
||||
* **pre-commit:** add to formula [skip ci] ([1b24859](https://github.com/saltstack-formulas/bind-formula/commit/1b248596e594fcfd6e0efbe08f73971fe141d879))
|
||||
* **pre-commit:** enable/disable `rstcheck` as relevant [skip ci] ([ffc60d2](https://github.com/saltstack-formulas/bind-formula/commit/ffc60d2e1f5ff7b34fecb443a1f8203cdca4b988))
|
||||
* **pre-commit:** finalise `rstcheck` configuration [skip ci] ([800a5e1](https://github.com/saltstack-formulas/bind-formula/commit/800a5e10db8576b5d058a63391e51c2bf1ae11c8))
|
||||
* **pre-commit:** update hook for `rubocop` [skip ci] ([182622d](https://github.com/saltstack-formulas/bind-formula/commit/182622d9e811f2bcdb1019da38c8863a66307c4a))
|
||||
* **travis:** add notifications => zulip [skip ci] ([51f0a8e](https://github.com/saltstack-formulas/bind-formula/commit/51f0a8e06e144054ecd5b76f8512dd080768e7d7))
|
||||
* **workflows/commitlint:** add to repo [skip ci] ([b202791](https://github.com/saltstack-formulas/bind-formula/commit/b202791a7cc78370a0a610193abf39cd544e67cd))
|
||||
|
||||
|
||||
### Documentation
|
||||
|
||||
* **readme:** fix headings [skip ci] ([292b023](https://github.com/saltstack-formulas/bind-formula/commit/292b0232c1c544c4fc7b3a2bad07bdc026b0a1f0))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **config.sls:** allow to not manage zone file ([2d06954](https://github.com/saltstack-formulas/bind-formula/commit/2d069544f6e5d8cbf5a6bee23d0e9618e09cd025))
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* standardise use of `share` suite & `_mapdata` state [skip ci] ([3cb26c0](https://github.com/saltstack-formulas/bind-formula/commit/3cb26c0a71cb99b88ef1ce00747c4fe57d4a322f))
|
||||
|
||||
## [0.19.2](https://github.com/saltstack-formulas/bind-formula/compare/v0.19.1...v0.19.2) (2020-03-23)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **debian:** align Debian log directory with apparmor profile ([b5efc0b](https://github.com/saltstack-formulas/bind-formula/commit/b5efc0b9bdc24bad145c2e511a09dd976ef0a3ed))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **kitchen:** avoid using bootstrap for `master` instances [skip ci] ([292e495](https://github.com/saltstack-formulas/bind-formula/commit/292e495d0149599b53b588f9914f18366deac20f))
|
||||
|
||||
## [0.19.1](https://github.com/saltstack-formulas/bind-formula/compare/v0.19.0...v0.19.1) (2020-01-27)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **default.sls:** fix subnet declaration ([c814779](https://github.com/saltstack-formulas/bind-formula/commit/c8147797747f4c9b8d07d6310df750521f01ac82)), closes [#144](https://github.com/saltstack-formulas/bind-formula/issues/144)
|
||||
* **rubocop:** add fixes using `rubocop -a --safe` [skip ci] ([9d2966f](https://github.com/saltstack-formulas/bind-formula/commit/9d2966fd3226828614a9b551202fa076f048ce49))
|
||||
|
||||
|
||||
### Reverts
|
||||
|
||||
* **config_spec.rb:** do partial revert of `rubocop -a --safe` ([75810c0](https://github.com/saltstack-formulas/bind-formula/commit/75810c07a71aa4b4ba74ed3c3facb1c5ee0ea6f8))
|
||||
|
||||
# [0.19.0](https://github.com/saltstack-formulas/bind-formula/compare/v0.18.4...v0.19.0) (2019-12-21)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **release.config.js:** use full commit hash in commit link [skip ci] ([adcdbb1](https://github.com/saltstack-formulas/bind-formula/commit/adcdbb12b83c5f2b2eeb1dd7197783107d9f3ae1))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **gemfile:** restrict `train` gem version until upstream fix [skip ci] ([b7b0d65](https://github.com/saltstack-formulas/bind-formula/commit/b7b0d655e1166a54ad5a182cf33f40df12afb2bc))
|
||||
* **kitchen:** use `debian-10-master-py3` instead of `develop` [skip ci] ([c91fe2a](https://github.com/saltstack-formulas/bind-formula/commit/c91fe2a96b2c4f3d91d4d1a4996e37358cbe04ea))
|
||||
* **kitchen:** use `develop` image until `master` is ready (`amazonlinux`) [skip ci] ([5afc27e](https://github.com/saltstack-formulas/bind-formula/commit/5afc27ec26fe676d99113958834398ab70f3a0dd))
|
||||
* **kitchen+travis:** upgrade matrix after `2019.2.2` release [skip ci] ([6ba1dd5](https://github.com/saltstack-formulas/bind-formula/commit/6ba1dd5262b567aad0b558fdcf81c566e2232c0f))
|
||||
* **travis:** apply changes from build config validation [skip ci] ([1838174](https://github.com/saltstack-formulas/bind-formula/commit/18381748c74eb54b6b7630e48ea1a9291e419889))
|
||||
* **travis:** opt-in to `dpl v2` to complete build config validation [skip ci] ([577ad6d](https://github.com/saltstack-formulas/bind-formula/commit/577ad6db1ec2f5236dcf147011c67dfc567f448c))
|
||||
* **travis:** quote pathspecs used with `git ls-files` [skip ci] ([88f9ff1](https://github.com/saltstack-formulas/bind-formula/commit/88f9ff128f789b6ad9c5292681f1f8f70f725e69))
|
||||
* **travis:** restrict `semantic-release` version until upstream fix ([5989bb9](https://github.com/saltstack-formulas/bind-formula/commit/5989bb9a0b9112aa1fdc21ed3ec273a6a6976af9))
|
||||
* **travis:** run `shellcheck` during lint job [skip ci] ([37c65de](https://github.com/saltstack-formulas/bind-formula/commit/37c65de5484c94ae031734663ac03d50c386066f))
|
||||
* **travis:** update `salt-lint` config for `v0.0.10` [skip ci] ([4c6a882](https://github.com/saltstack-formulas/bind-formula/commit/4c6a88243edb1fef2e5fba0ff16fd90e8514b88e))
|
||||
* **travis:** use `major.minor` for `semantic-release` version ([66c4d9f](https://github.com/saltstack-formulas/bind-formula/commit/66c4d9fe7d3c56f214f6951efcdd9cb5faa88911)), closes [/github.com/saltstack-formulas/bind-formula/issues/143#issuecomment-568197176](https://github.com//github.com/saltstack-formulas/bind-formula/issues/143/issues/issuecomment-568197176)
|
||||
* **travis:** use build config validation (beta) [skip ci] ([681c345](https://github.com/saltstack-formulas/bind-formula/commit/681c345e8b78e2d3115adde39cb2202c28dc230d))
|
||||
* merge travis matrix, add `salt-lint` & `rubocop` to `lint` job ([7b23dbb](https://github.com/saltstack-formulas/bind-formula/commit/7b23dbbae026b0a8cc779f5ce84de92325454e8b))
|
||||
|
||||
|
||||
### Documentation
|
||||
|
||||
* **contributing:** remove to use org-level file instead [skip ci] ([9c11845](https://github.com/saltstack-formulas/bind-formula/commit/9c11845a0997f7bdd6fbcae97e23262de78132a4))
|
||||
* **readme:** update link to `CONTRIBUTING` [skip ci] ([ab6ea39](https://github.com/saltstack-formulas/bind-formula/commit/ab6ea391d885fc2246db94219b59662c250c0854))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **map.jinja:** add Gentoo support ([7415a9b](https://github.com/saltstack-formulas/bind-formula/commit/7415a9b0ce788d978c583499452fdcfc22328c42))
|
||||
|
||||
|
||||
### Performance Improvements
|
||||
|
||||
* **travis:** improve `salt-lint` invocation [skip ci] ([b63490c](https://github.com/saltstack-formulas/bind-formula/commit/b63490c23ddb9ccbdcfe02e85444f178441d02ad))
|
||||
|
||||
## [0.18.4](https://github.com/saltstack-formulas/bind-formula/compare/v0.18.3...v0.18.4) (2019-10-10)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **config.sls:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/bind-formula/commit/920615a))
|
||||
* **named.conf.local.jinja:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/bind-formula/commit/67736a2))
|
||||
* **named.conf.logging.jinja:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/bind-formula/commit/f220886))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* merge travis matrix, add `salt-lint` & `rubocop` to `lint` job ([](https://github.com/saltstack-formulas/bind-formula/commit/5883c09))
|
||||
|
||||
## [0.18.3](https://github.com/saltstack-formulas/bind-formula/compare/v0.18.2...v0.18.3) (2019-10-07)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **pillar.example:** fix `yamllint` error ([eb29e00](https://github.com/saltstack-formulas/bind-formula/commit/eb29e00)), closes [/travis-ci.org/myii/bind-formula/builds/594704904#L211-L213](https://github.com//travis-ci.org/myii/bind-formula/builds/594704904/issues/L211-L213)
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* use `dist: bionic` & apply `opensuse-leap-15` SCP error workaround ([90abafa](https://github.com/saltstack-formulas/bind-formula/commit/90abafa))
|
||||
* **kitchen:** change `log_level` to `debug` instead of `info` ([e0be98a](https://github.com/saltstack-formulas/bind-formula/commit/e0be98a))
|
||||
* **kitchen:** install required packages to bootstrapped `opensuse` [skip ci] ([a5ad4c6](https://github.com/saltstack-formulas/bind-formula/commit/a5ad4c6))
|
||||
* **kitchen:** use bootstrapped `opensuse` images until `2019.2.2` [skip ci] ([0d02016](https://github.com/saltstack-formulas/bind-formula/commit/0d02016))
|
||||
* **platform:** add `arch-base-latest` (commented out for now) [skip ci] ([c091c74](https://github.com/saltstack-formulas/bind-formula/commit/c091c74))
|
||||
* **yamllint:** add rule `empty-values` & use new `yaml-files` setting ([9163726](https://github.com/saltstack-formulas/bind-formula/commit/9163726))
|
||||
|
||||
## [0.18.2](https://github.com/saltstack-formulas/bind-formula/compare/v0.18.1...v0.18.2) (2019-09-05)
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **kitchen+travis:** replace EOL pre-salted images ([3a4d4e8](https://github.com/saltstack-formulas/bind-formula/commit/3a4d4e8))
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* **inspec:** improve to work on `amazon` as well ([59684c6](https://github.com/saltstack-formulas/bind-formula/commit/59684c6))
|
||||
|
||||
## [0.18.1](https://github.com/saltstack-formulas/bind-formula/compare/v0.18.0...v0.18.1) (2019-08-18)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **tests:** move to controls sub-directory ([74bbc5b](https://github.com/saltstack-formulas/bind-formula/commit/74bbc5b))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **travis:** re-enable `fedora` ([4a6ac4e](https://github.com/saltstack-formulas/bind-formula/commit/4a6ac4e))
|
||||
|
||||
# [0.18.0](https://github.com/saltstack-formulas/bind-formula/compare/v0.17.0...v0.18.0) (2019-08-17)
|
||||
|
||||
|
||||
|
|
50
CODEOWNERS
Normal file
50
CODEOWNERS
Normal file
|
@ -0,0 +1,50 @@
|
|||
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
|
||||
|
||||
# SECTION: Owner(s) for everything in the repo, unless a later match takes precedence
|
||||
# FILE PATTERN OWNER(S)
|
||||
* @javierbertoli
|
||||
|
||||
# SECTION: Owner(s) for specific directories
|
||||
# FILE PATTERN OWNER(S)
|
||||
|
||||
# SECTION: Owner(s) for files/directories related to `semantic-release`
|
||||
# FILE PATTERN OWNER(S)
|
||||
/.github/workflows/ @saltstack-formulas/ssf
|
||||
/bin/install-hooks @saltstack-formulas/ssf
|
||||
/bin/kitchen @saltstack-formulas/ssf
|
||||
/docs/AUTHORS.rst @saltstack-formulas/ssf
|
||||
/docs/CHANGELOG.rst @saltstack-formulas/ssf
|
||||
/docs/TOFS_pattern.rst @saltstack-formulas/ssf
|
||||
/*/_mapdata/ @saltstack-formulas/ssf
|
||||
/*/libsaltcli.jinja @saltstack-formulas/ssf
|
||||
/*/libtofs.jinja @saltstack-formulas/ssf
|
||||
/test/integration/**/_mapdata.rb @saltstack-formulas/ssf
|
||||
/test/integration/**/libraries/system.rb @saltstack-formulas/ssf
|
||||
/test/integration/**/inspec.yml @saltstack-formulas/ssf
|
||||
/test/integration/**/README.md @saltstack-formulas/ssf
|
||||
/test/salt/pillar/top.sls @saltstack-formulas/ssf
|
||||
/.gitignore @saltstack-formulas/ssf
|
||||
/.cirrus.yml @saltstack-formulas/ssf
|
||||
/.gitlab-ci.yml @saltstack-formulas/ssf
|
||||
/.pre-commit-config.yaml @saltstack-formulas/ssf
|
||||
/.rstcheck.cfg @saltstack-formulas/ssf
|
||||
/.rubocop.yml @saltstack-formulas/ssf
|
||||
/.salt-lint @saltstack-formulas/ssf
|
||||
/.travis.yml @saltstack-formulas/ssf
|
||||
/.yamllint @saltstack-formulas/ssf
|
||||
/AUTHORS.md @saltstack-formulas/ssf
|
||||
/CHANGELOG.md @saltstack-formulas/ssf
|
||||
/CODEOWNERS @saltstack-formulas/ssf
|
||||
/commitlint.config.js @saltstack-formulas/ssf
|
||||
/FORMULA @saltstack-formulas/ssf
|
||||
/Gemfile @saltstack-formulas/ssf
|
||||
/Gemfile.lock @saltstack-formulas/ssf
|
||||
/kitchen.yml @saltstack-formulas/ssf
|
||||
/kitchen.vagrant.yml @saltstack-formulas/ssf
|
||||
/kitchen.windows.yml @saltstack-formulas/ssf
|
||||
/pre-commit_semantic-release.sh @saltstack-formulas/ssf
|
||||
/release-rules.js @saltstack-formulas/ssf
|
||||
/release.config.js @saltstack-formulas/ssf
|
||||
|
||||
# SECTION: Owner(s) for specific files
|
||||
# FILE PATTERN OWNER(S)
|
2
FORMULA
2
FORMULA
|
@ -1,7 +1,7 @@
|
|||
name: bind
|
||||
os: Debian, Ubuntu, Raspbian, RedHat, Fedora, CentOS, Suse, openSUSE
|
||||
os_family: Debian, RedHat, Suse
|
||||
version: 0.18.0
|
||||
version: 0.20.0
|
||||
release: 1
|
||||
minimum_version: 2016.11
|
||||
summary: Bind formula
|
||||
|
|
21
Gemfile
21
Gemfile
|
@ -1,6 +1,19 @@
|
|||
source "https://rubygems.org"
|
||||
# frozen_string_literal: true
|
||||
|
||||
gem 'kitchen-docker', '>= 2.9'
|
||||
gem 'kitchen-salt', '>= 0.6.0'
|
||||
gem 'kitchen-inspec', '>= 1.1'
|
||||
source ENV.fetch('PROXY_RUBYGEMSORG', 'https://rubygems.org')
|
||||
|
||||
# Install the `inspec` gem using `git` because versions after `4.22.22`
|
||||
# suppress diff output; this version fixes this for our uses.
|
||||
# rubocop:disable Layout/LineLength
|
||||
gem 'inspec', git: 'https://gitlab.com/saltstack-formulas/infrastructure/inspec', branch: 'ssf'
|
||||
# rubocop:enable Layout/LineLength
|
||||
|
||||
# Install the `kitchen-docker` gem using `git` in order to gain a performance
|
||||
# improvement: avoid package installations which are already covered by the
|
||||
# `salt-image-builder` (i.e. the pre-salted images that we're using)
|
||||
# rubocop:disable Layout/LineLength
|
||||
gem 'kitchen-docker', git: 'https://gitlab.com/saltstack-formulas/infrastructure/kitchen-docker', branch: 'ssf'
|
||||
# rubocop:enable Layout/LineLength
|
||||
|
||||
gem 'kitchen-inspec', '>= 2.5.0'
|
||||
gem 'kitchen-salt', '>= 0.7.2'
|
||||
|
|
675
Gemfile.lock
Normal file
675
Gemfile.lock
Normal file
|
@ -0,0 +1,675 @@
|
|||
GIT
|
||||
remote: https://gitlab.com/saltstack-formulas/infrastructure/inspec
|
||||
revision: aaef842906a5666f0fc0b4f186b4dd3498f5b28c
|
||||
branch: ssf
|
||||
specs:
|
||||
inspec (5.18.15)
|
||||
cookstyle
|
||||
faraday_middleware (>= 0.12.2, < 1.1)
|
||||
inspec-core (= 5.18.15)
|
||||
mongo (= 2.13.2)
|
||||
progress_bar (~> 1.3.3)
|
||||
rake
|
||||
train (~> 3.10)
|
||||
train-aws (~> 0.2)
|
||||
train-habitat (~> 0.1)
|
||||
train-winrm (~> 0.2)
|
||||
inspec-core (5.18.15)
|
||||
addressable (~> 2.4)
|
||||
chef-telemetry (~> 1.0, >= 1.0.8)
|
||||
faraday (>= 0.9.0, < 1.5)
|
||||
faraday_middleware (~> 1.0)
|
||||
hashie (>= 3.4, < 5.0)
|
||||
license-acceptance (>= 0.2.13, < 3.0)
|
||||
method_source (>= 0.8, < 2.0)
|
||||
mixlib-log (~> 3.0)
|
||||
multipart-post (~> 2.0)
|
||||
parallel (~> 1.9)
|
||||
parslet (>= 1.5, < 2.0)
|
||||
pry (~> 0.13)
|
||||
rspec (>= 3.9, <= 3.11)
|
||||
rspec-its (~> 1.2)
|
||||
rubyzip (>= 1.2.2, < 3.0)
|
||||
semverse (~> 3.0)
|
||||
sslshake (~> 1.2)
|
||||
thor (>= 0.20, < 2.0)
|
||||
tomlrb (>= 1.2, < 2.1)
|
||||
train-core (~> 3.10)
|
||||
tty-prompt (~> 0.17)
|
||||
tty-table (~> 0.10)
|
||||
|
||||
GIT
|
||||
remote: https://gitlab.com/saltstack-formulas/infrastructure/kitchen-docker
|
||||
revision: 9a09bc1e571e25f3ccabf4725ca2048d970fff82
|
||||
branch: ssf
|
||||
specs:
|
||||
kitchen-docker (2.12.0)
|
||||
test-kitchen (>= 1.0.0)
|
||||
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
activesupport (7.0.3.1)
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
i18n (>= 1.6, < 2)
|
||||
minitest (>= 5.1)
|
||||
tzinfo (~> 2.0)
|
||||
addressable (2.8.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
ast (2.4.2)
|
||||
aws-eventstream (1.2.0)
|
||||
aws-partitions (1.607.0)
|
||||
aws-sdk-alexaforbusiness (1.56.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-amplify (1.32.0)
|
||||
aws-sdk-core (~> 3, >= 3.120.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-apigateway (1.78.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-apigatewayv2 (1.42.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-applicationautoscaling (1.51.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-athena (1.55.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-autoscaling (1.63.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-batch (1.47.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-budgets (1.50.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudformation (1.70.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudfront (1.65.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudhsm (1.39.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudhsmv2 (1.42.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudtrail (1.49.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudwatch (1.64.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudwatchevents (1.46.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cloudwatchlogs (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-codecommit (1.51.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-codedeploy (1.49.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-codepipeline (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cognitoidentity (1.31.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-cognitoidentityprovider (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-configservice (1.79.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-core (3.131.2)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
aws-partitions (~> 1, >= 1.525.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-costandusagereportservice (1.40.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-databasemigrationservice (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-dynamodb (1.75.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ec2 (1.322.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ecr (1.56.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ecrpublic (1.12.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ecs (1.100.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-efs (1.54.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-eks (1.75.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-elasticache (1.78.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-elasticbeanstalk (1.51.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-elasticloadbalancing (1.40.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-elasticloadbalancingv2 (1.78.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-elasticsearchservice (1.65.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-emr (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.121.2)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-eventbridge (1.24.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-firehose (1.48.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-glue (1.88.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-guardduty (1.58.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-iam (1.69.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-kafka (1.50.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-kinesis (1.41.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-kms (1.57.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-lambda (1.84.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-mq (1.40.0)
|
||||
aws-sdk-core (~> 3, >= 3.120.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-networkfirewall (1.17.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-networkmanager (1.24.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-organizations (1.59.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ram (1.26.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-rds (1.148.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-redshift (1.84.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-route53 (1.63.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-route53domains (1.40.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-route53resolver (1.37.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.114.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.4)
|
||||
aws-sdk-s3control (1.43.0)
|
||||
aws-sdk-core (~> 3, >= 3.122.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-secretsmanager (1.46.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-securityhub (1.67.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-servicecatalog (1.60.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ses (1.41.0)
|
||||
aws-sdk-core (~> 3, >= 3.120.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-shield (1.48.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-signer (1.32.0)
|
||||
aws-sdk-core (~> 3, >= 3.120.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-simpledb (1.29.0)
|
||||
aws-sdk-core (~> 3, >= 3.120.0)
|
||||
aws-sigv2 (~> 1.0)
|
||||
aws-sdk-sms (1.40.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-sns (1.53.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-sqs (1.51.1)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-ssm (1.137.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-states (1.39.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-synthetics (1.19.0)
|
||||
aws-sdk-core (~> 3, >= 3.121.2)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-transfer (1.34.0)
|
||||
aws-sdk-core (~> 3, >= 3.112.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-waf (1.43.0)
|
||||
aws-sdk-core (~> 3, >= 3.122.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sigv2 (1.1.0)
|
||||
aws-sigv4 (1.5.0)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
azure_graph_rbac (0.17.2)
|
||||
ms_rest_azure (~> 0.12.0)
|
||||
azure_mgmt_key_vault (0.17.7)
|
||||
ms_rest_azure (~> 0.12.0)
|
||||
azure_mgmt_resources (0.18.2)
|
||||
ms_rest_azure (~> 0.12.0)
|
||||
azure_mgmt_security (0.19.0)
|
||||
ms_rest_azure (~> 0.12.0)
|
||||
azure_mgmt_storage (0.23.0)
|
||||
ms_rest_azure (~> 0.12.0)
|
||||
bcrypt_pbkdf (1.1.0)
|
||||
bson (4.15.0)
|
||||
builder (3.2.4)
|
||||
chef-config (17.10.0)
|
||||
addressable
|
||||
chef-utils (= 17.10.0)
|
||||
fuzzyurl
|
||||
mixlib-config (>= 2.2.12, < 4.0)
|
||||
mixlib-shellout (>= 2.0, < 4.0)
|
||||
tomlrb (~> 1.2)
|
||||
chef-telemetry (1.1.1)
|
||||
chef-config
|
||||
concurrent-ruby (~> 1.0)
|
||||
chef-utils (17.10.0)
|
||||
concurrent-ruby
|
||||
coderay (1.1.3)
|
||||
concurrent-ruby (1.1.10)
|
||||
cookstyle (7.32.1)
|
||||
rubocop (= 1.25.1)
|
||||
declarative (0.0.20)
|
||||
diff-lcs (1.5.0)
|
||||
docker-api (2.2.0)
|
||||
excon (>= 0.47.0)
|
||||
multi_json
|
||||
domain_name (0.5.20190701)
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
ed25519 (1.3.0)
|
||||
erubi (1.10.0)
|
||||
excon (0.92.3)
|
||||
faraday (1.4.3)
|
||||
faraday-em_http (~> 1.0)
|
||||
faraday-em_synchrony (~> 1.0)
|
||||
faraday-excon (~> 1.1)
|
||||
faraday-net_http (~> 1.0)
|
||||
faraday-net_http_persistent (~> 1.1)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
ruby2_keywords (>= 0.0.4)
|
||||
faraday-cookie_jar (0.0.7)
|
||||
faraday (>= 0.8.0)
|
||||
http-cookie (~> 1.0.0)
|
||||
faraday-em_http (1.0.0)
|
||||
faraday-em_synchrony (1.0.0)
|
||||
faraday-excon (1.1.0)
|
||||
faraday-net_http (1.0.1)
|
||||
faraday-net_http_persistent (1.2.0)
|
||||
faraday_middleware (1.0.0)
|
||||
faraday (~> 1.0)
|
||||
ffi (1.15.5)
|
||||
fuzzyurl (0.9.0)
|
||||
google-api-client (0.52.0)
|
||||
addressable (~> 2.5, >= 2.5.1)
|
||||
googleauth (~> 0.9)
|
||||
httpclient (>= 2.8.1, < 3.0)
|
||||
mini_mime (~> 1.0)
|
||||
representable (~> 3.0)
|
||||
retriable (>= 2.0, < 4.0)
|
||||
rexml
|
||||
signet (~> 0.12)
|
||||
googleauth (0.14.0)
|
||||
faraday (>= 0.17.3, < 2.0)
|
||||
jwt (>= 1.4, < 3.0)
|
||||
memoist (~> 0.16)
|
||||
multi_json (~> 1.11)
|
||||
os (>= 0.9, < 2.0)
|
||||
signet (~> 0.14)
|
||||
gssapi (1.3.1)
|
||||
ffi (>= 1.0.1)
|
||||
gyoku (1.4.0)
|
||||
builder (>= 2.1.2)
|
||||
rexml (~> 3.0)
|
||||
hashie (4.1.0)
|
||||
highline (2.0.3)
|
||||
http-cookie (1.0.5)
|
||||
domain_name (~> 0.5)
|
||||
httpclient (2.8.3)
|
||||
i18n (1.12.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
inifile (3.0.0)
|
||||
jmespath (1.6.1)
|
||||
json (2.6.2)
|
||||
jwt (2.4.1)
|
||||
kitchen-inspec (2.6.1)
|
||||
hashie (>= 3.4, <= 5.0)
|
||||
inspec (>= 2.2.64, < 7.0)
|
||||
test-kitchen (>= 2.7, < 4)
|
||||
kitchen-salt (0.7.2)
|
||||
hashie (>= 3.5)
|
||||
test-kitchen (>= 1.4)
|
||||
license-acceptance (2.1.13)
|
||||
pastel (~> 0.7)
|
||||
tomlrb (>= 1.2, < 3.0)
|
||||
tty-box (~> 0.6)
|
||||
tty-prompt (~> 0.20)
|
||||
little-plugger (1.1.4)
|
||||
logging (2.3.1)
|
||||
little-plugger (~> 1.1)
|
||||
multi_json (~> 1.14)
|
||||
memoist (0.16.2)
|
||||
method_source (1.0.0)
|
||||
mini_mime (1.1.2)
|
||||
minitest (5.16.2)
|
||||
mixlib-config (3.0.27)
|
||||
tomlrb
|
||||
mixlib-install (3.12.19)
|
||||
mixlib-shellout
|
||||
mixlib-versioning
|
||||
thor
|
||||
mixlib-log (3.0.9)
|
||||
mixlib-shellout (3.2.7)
|
||||
chef-utils
|
||||
mixlib-versioning (1.2.12)
|
||||
mongo (2.13.2)
|
||||
bson (>= 4.8.2, < 5.0.0)
|
||||
ms_rest (0.7.6)
|
||||
concurrent-ruby (~> 1.0)
|
||||
faraday (>= 0.9, < 2.0.0)
|
||||
timeliness (~> 0.3.10)
|
||||
ms_rest_azure (0.12.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
faraday (>= 0.9, < 2.0.0)
|
||||
faraday-cookie_jar (~> 0.0.6)
|
||||
ms_rest (~> 0.7.6)
|
||||
multi_json (1.15.0)
|
||||
multipart-post (2.2.3)
|
||||
net-scp (3.0.0)
|
||||
net-ssh (>= 2.6.5, < 7.0.0)
|
||||
net-ssh (6.1.0)
|
||||
net-ssh-gateway (2.0.0)
|
||||
net-ssh (>= 4.0.0)
|
||||
nori (2.6.0)
|
||||
options (2.3.2)
|
||||
os (1.1.4)
|
||||
parallel (1.22.1)
|
||||
parser (3.1.2.0)
|
||||
ast (~> 2.4.1)
|
||||
parslet (1.8.2)
|
||||
pastel (0.8.0)
|
||||
tty-color (~> 0.5)
|
||||
progress_bar (1.3.3)
|
||||
highline (>= 1.6, < 3)
|
||||
options (~> 2.3.0)
|
||||
pry (0.14.1)
|
||||
coderay (~> 1.1)
|
||||
method_source (~> 1.0)
|
||||
public_suffix (4.0.7)
|
||||
rainbow (3.1.1)
|
||||
rake (13.0.6)
|
||||
regexp_parser (2.5.0)
|
||||
representable (3.2.0)
|
||||
declarative (< 0.1.0)
|
||||
trailblazer-option (>= 0.1.1, < 0.2.0)
|
||||
uber (< 0.2.0)
|
||||
retriable (3.1.2)
|
||||
rexml (3.2.5)
|
||||
rspec (3.11.0)
|
||||
rspec-core (~> 3.11.0)
|
||||
rspec-expectations (~> 3.11.0)
|
||||
rspec-mocks (~> 3.11.0)
|
||||
rspec-core (3.11.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-expectations (3.11.0)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-its (1.3.0)
|
||||
rspec-core (>= 3.0.0)
|
||||
rspec-expectations (>= 3.0.0)
|
||||
rspec-mocks (3.11.1)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.11.0)
|
||||
rspec-support (3.11.0)
|
||||
rubocop (1.25.1)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 3.1.0.0)
|
||||
rainbow (>= 2.2.2, < 4.0)
|
||||
regexp_parser (>= 1.8, < 3.0)
|
||||
rexml
|
||||
rubocop-ast (>= 1.15.1, < 2.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 1.4.0, < 3.0)
|
||||
rubocop-ast (1.19.1)
|
||||
parser (>= 3.1.1.0)
|
||||
ruby-progressbar (1.11.0)
|
||||
ruby2_keywords (0.0.5)
|
||||
rubyntlm (0.6.3)
|
||||
rubyzip (2.3.2)
|
||||
semverse (3.0.2)
|
||||
signet (0.17.0)
|
||||
addressable (~> 2.8)
|
||||
faraday (>= 0.17.5, < 3.a)
|
||||
jwt (>= 1.5, < 3.0)
|
||||
multi_json (~> 1.10)
|
||||
sslshake (1.3.1)
|
||||
strings (0.2.1)
|
||||
strings-ansi (~> 0.2)
|
||||
unicode-display_width (>= 1.5, < 3.0)
|
||||
unicode_utils (~> 1.4)
|
||||
strings-ansi (0.2.0)
|
||||
test-kitchen (3.3.1)
|
||||
bcrypt_pbkdf (~> 1.0)
|
||||
chef-utils (>= 16.4.35)
|
||||
ed25519 (~> 1.2)
|
||||
license-acceptance (>= 1.0.11, < 3.0)
|
||||
mixlib-install (~> 3.6)
|
||||
mixlib-shellout (>= 1.2, < 4.0)
|
||||
net-scp (>= 1.1, < 4.0)
|
||||
net-ssh (>= 2.9, < 7.0)
|
||||
net-ssh-gateway (>= 1.2, < 3.0)
|
||||
thor (>= 0.19, < 2.0)
|
||||
winrm (~> 2.0)
|
||||
winrm-elevated (~> 1.0)
|
||||
winrm-fs (~> 1.1)
|
||||
thor (1.2.1)
|
||||
timeliness (0.3.10)
|
||||
tomlrb (1.3.0)
|
||||
trailblazer-option (0.1.2)
|
||||
train (3.10.1)
|
||||
activesupport (>= 6.0.3.1)
|
||||
azure_graph_rbac (~> 0.16)
|
||||
azure_mgmt_key_vault (~> 0.17)
|
||||
azure_mgmt_resources (~> 0.15)
|
||||
azure_mgmt_security (~> 0.18)
|
||||
azure_mgmt_storage (~> 0.18)
|
||||
docker-api (>= 1.26, < 3.0)
|
||||
google-api-client (>= 0.23.9, <= 0.52.0)
|
||||
googleauth (>= 0.6.6, <= 0.14.0)
|
||||
inifile (~> 3.0)
|
||||
train-core (= 3.10.1)
|
||||
train-winrm (~> 0.2)
|
||||
train-aws (0.2.24)
|
||||
aws-sdk-alexaforbusiness (~> 1.0)
|
||||
aws-sdk-amplify (~> 1.32.0)
|
||||
aws-sdk-apigateway (~> 1.0)
|
||||
aws-sdk-apigatewayv2 (~> 1.0)
|
||||
aws-sdk-applicationautoscaling (>= 1.46, < 1.52)
|
||||
aws-sdk-athena (~> 1.0)
|
||||
aws-sdk-autoscaling (>= 1.22, < 1.64)
|
||||
aws-sdk-batch (>= 1.36, < 1.48)
|
||||
aws-sdk-budgets (~> 1.0)
|
||||
aws-sdk-cloudformation (~> 1.0)
|
||||
aws-sdk-cloudfront (~> 1.0)
|
||||
aws-sdk-cloudhsm (~> 1.0)
|
||||
aws-sdk-cloudhsmv2 (~> 1.0)
|
||||
aws-sdk-cloudtrail (~> 1.8)
|
||||
aws-sdk-cloudwatch (~> 1.13)
|
||||
aws-sdk-cloudwatchevents (>= 1.36, < 1.47)
|
||||
aws-sdk-cloudwatchlogs (~> 1.13)
|
||||
aws-sdk-codecommit (~> 1.0)
|
||||
aws-sdk-codedeploy (~> 1.0)
|
||||
aws-sdk-codepipeline (~> 1.0)
|
||||
aws-sdk-cognitoidentity (>= 1.26, < 1.32)
|
||||
aws-sdk-cognitoidentityprovider (>= 1.46, < 1.54)
|
||||
aws-sdk-configservice (~> 1.21)
|
||||
aws-sdk-core (~> 3.0)
|
||||
aws-sdk-costandusagereportservice (~> 1.6)
|
||||
aws-sdk-databasemigrationservice (>= 1.42, < 1.54)
|
||||
aws-sdk-dynamodb (~> 1.31)
|
||||
aws-sdk-ec2 (~> 1.70)
|
||||
aws-sdk-ecr (~> 1.18)
|
||||
aws-sdk-ecrpublic (~> 1.3)
|
||||
aws-sdk-ecs (~> 1.30)
|
||||
aws-sdk-efs (~> 1.0)
|
||||
aws-sdk-eks (~> 1.9)
|
||||
aws-sdk-elasticache (~> 1.0)
|
||||
aws-sdk-elasticbeanstalk (~> 1.0)
|
||||
aws-sdk-elasticloadbalancing (~> 1.8)
|
||||
aws-sdk-elasticloadbalancingv2 (~> 1.0)
|
||||
aws-sdk-elasticsearchservice (~> 1.0)
|
||||
aws-sdk-emr (~> 1.53.0)
|
||||
aws-sdk-eventbridge (~> 1.24.0)
|
||||
aws-sdk-firehose (~> 1.0)
|
||||
aws-sdk-glue (>= 1.71, < 1.89)
|
||||
aws-sdk-guardduty (~> 1.31)
|
||||
aws-sdk-iam (~> 1.13)
|
||||
aws-sdk-kafka (~> 1.0)
|
||||
aws-sdk-kinesis (~> 1.0)
|
||||
aws-sdk-kms (~> 1.13)
|
||||
aws-sdk-lambda (~> 1.0)
|
||||
aws-sdk-mq (~> 1.40.0)
|
||||
aws-sdk-networkfirewall (>= 1.6.0)
|
||||
aws-sdk-networkmanager (>= 1.13.0)
|
||||
aws-sdk-organizations (>= 1.17, < 1.60)
|
||||
aws-sdk-ram (>= 1.21, < 1.27)
|
||||
aws-sdk-rds (~> 1.43)
|
||||
aws-sdk-redshift (~> 1.0)
|
||||
aws-sdk-route53 (~> 1.0)
|
||||
aws-sdk-route53domains (~> 1.0)
|
||||
aws-sdk-route53resolver (~> 1.0)
|
||||
aws-sdk-s3 (~> 1.30)
|
||||
aws-sdk-s3control (~> 1.43.0)
|
||||
aws-sdk-secretsmanager (>= 1.42, < 1.47)
|
||||
aws-sdk-securityhub (~> 1.0)
|
||||
aws-sdk-servicecatalog (>= 1.48, < 1.61)
|
||||
aws-sdk-ses (~> 1.41.0)
|
||||
aws-sdk-shield (~> 1.30)
|
||||
aws-sdk-signer (~> 1.32.0)
|
||||
aws-sdk-simpledb (~> 1.29.0)
|
||||
aws-sdk-sms (~> 1.0)
|
||||
aws-sdk-sns (~> 1.9)
|
||||
aws-sdk-sqs (~> 1.10)
|
||||
aws-sdk-ssm (~> 1.0)
|
||||
aws-sdk-states (>= 1.35, < 1.40)
|
||||
aws-sdk-synthetics (~> 1.19.0)
|
||||
aws-sdk-transfer (>= 1.26, < 1.35)
|
||||
aws-sdk-waf (~> 1.43.0)
|
||||
train-core (3.10.1)
|
||||
addressable (~> 2.5)
|
||||
ffi (!= 1.13.0)
|
||||
json (>= 1.8, < 3.0)
|
||||
mixlib-shellout (>= 2.0, < 4.0)
|
||||
net-scp (>= 1.2, < 4.0)
|
||||
net-ssh (>= 2.9, < 7.0)
|
||||
train-habitat (0.2.22)
|
||||
train-winrm (0.2.13)
|
||||
winrm (>= 2.3.6, < 3.0)
|
||||
winrm-elevated (~> 1.2.2)
|
||||
winrm-fs (~> 1.0)
|
||||
tty-box (0.7.0)
|
||||
pastel (~> 0.8)
|
||||
strings (~> 0.2.0)
|
||||
tty-cursor (~> 0.7)
|
||||
tty-color (0.6.0)
|
||||
tty-cursor (0.7.1)
|
||||
tty-prompt (0.23.1)
|
||||
pastel (~> 0.8)
|
||||
tty-reader (~> 0.8)
|
||||
tty-reader (0.9.0)
|
||||
tty-cursor (~> 0.7)
|
||||
tty-screen (~> 0.8)
|
||||
wisper (~> 2.0)
|
||||
tty-screen (0.8.1)
|
||||
tty-table (0.12.0)
|
||||
pastel (~> 0.8)
|
||||
strings (~> 0.2.0)
|
||||
tty-screen (~> 0.8)
|
||||
tzinfo (2.0.4)
|
||||
concurrent-ruby (~> 1.0)
|
||||
uber (0.1.0)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.8.2)
|
||||
unicode-display_width (2.2.0)
|
||||
unicode_utils (1.4.0)
|
||||
winrm (2.3.6)
|
||||
builder (>= 2.1.2)
|
||||
erubi (~> 1.8)
|
||||
gssapi (~> 1.2)
|
||||
gyoku (~> 1.0)
|
||||
httpclient (~> 2.2, >= 2.2.0.2)
|
||||
logging (>= 1.6.1, < 3.0)
|
||||
nori (~> 2.0)
|
||||
rubyntlm (~> 0.6.0, >= 0.6.3)
|
||||
winrm-elevated (1.2.3)
|
||||
erubi (~> 1.8)
|
||||
winrm (~> 2.0)
|
||||
winrm-fs (~> 1.0)
|
||||
winrm-fs (1.3.5)
|
||||
erubi (~> 1.8)
|
||||
logging (>= 1.6.1, < 3.0)
|
||||
rubyzip (~> 2.0)
|
||||
winrm (~> 2.0)
|
||||
wisper (2.0.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
inspec!
|
||||
kitchen-docker!
|
||||
kitchen-inspec (>= 2.5.0)
|
||||
kitchen-salt (>= 0.7.2)
|
||||
|
||||
BUNDLED WITH
|
||||
2.1.2
|
16
bin/install-hooks
Executable file
16
bin/install-hooks
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/usr/bin/env sh
|
||||
set -o nounset # Treat unset variables as an error and immediately exit
|
||||
set -o errexit # If a command fails exit the whole script
|
||||
|
||||
if [ "${DEBUG:-false}" = "true" ]; then
|
||||
set -x # Run the entire script in debug mode
|
||||
fi
|
||||
|
||||
if ! command -v pre-commit >/dev/null 2>&1; then
|
||||
echo "pre-commit not found: please install or check your PATH" >&2
|
||||
echo "See https://pre-commit.com/#installation" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
pre-commit install --install-hooks
|
||||
pre-commit install --hook-type commit-msg --install-hooks
|
21
bin/kitchen
21
bin/kitchen
|
@ -8,22 +8,25 @@
|
|||
# this file is here to facilitate running it.
|
||||
#
|
||||
|
||||
require "pathname"
|
||||
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
||||
Pathname.new(__FILE__).realpath)
|
||||
require 'pathname'
|
||||
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
||||
Pathname.new(__FILE__).realpath)
|
||||
|
||||
bundle_binstub = File.expand_path("../bundle", __FILE__)
|
||||
bundle_binstub = File.expand_path('bundle', __dir__)
|
||||
|
||||
if File.file?(bundle_binstub)
|
||||
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
||||
load(bundle_binstub)
|
||||
else
|
||||
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
||||
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
||||
abort(
|
||||
'Your `bin/bundle` was not generated by Bundler, ' \
|
||||
'so this binstub cannot run. Replace `bin/bundle` by running ' \
|
||||
'`bundle binstubs bundler --force`, then run this command again.'
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
require "rubygems"
|
||||
require "bundler/setup"
|
||||
require 'rubygems'
|
||||
require 'bundler/setup'
|
||||
|
||||
load Gem.bin_path("test-kitchen", "kitchen")
|
||||
load Gem.bin_path('test-kitchen', 'kitchen')
|
||||
|
|
13
bind/_mapdata/_mapdata.jinja
Normal file
13
bind/_mapdata/_mapdata.jinja
Normal file
|
@ -0,0 +1,13 @@
|
|||
# yamllint disable rule:indentation rule:line-length
|
||||
# {{ grains.get("osfinger", grains.os) }}
|
||||
---
|
||||
{#- use salt.slsutil.serialize to avoid encoding errors on some platforms #}
|
||||
{{ salt["slsutil.serialize"](
|
||||
"yaml",
|
||||
map,
|
||||
default_flow_style=False,
|
||||
allow_unicode=True,
|
||||
)
|
||||
| regex_replace("^\s+'$", "'", multiline=True)
|
||||
| trim
|
||||
}}
|
22
bind/_mapdata/init.sls
Normal file
22
bind/_mapdata/init.sls
Normal file
|
@ -0,0 +1,22 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=sls
|
||||
---
|
||||
{#- Get the `tplroot` from `tpldir` #}
|
||||
{%- set tplroot = tpldir.split("/")[0] %}
|
||||
{%- from tplroot ~ "/map.jinja" import map with context %}
|
||||
|
||||
{%- set _mapdata = {
|
||||
"values": map,
|
||||
} %}
|
||||
{%- do salt["log.debug"]("### MAP.JINJA DUMP ###\n" ~ _mapdata | yaml(False)) %}
|
||||
|
||||
{%- set output_dir = "/temp" if grains.os_family == "Windows" else "/tmp" %}
|
||||
{%- set output_file = output_dir ~ "/salt_mapdata_dump.yaml" %}
|
||||
|
||||
{{ tplroot }}-mapdata-dump:
|
||||
file.managed:
|
||||
- name: {{ output_file }}
|
||||
- source: salt://{{ tplroot }}/_mapdata/_mapdata.jinja
|
||||
- template: jinja
|
||||
- context:
|
||||
map: {{ _mapdata | yaml }}
|
|
@ -100,7 +100,7 @@ bind_local_config:
|
|||
- watch_in:
|
||||
- service: bind
|
||||
|
||||
{% if grains['os_family'] not in ['Arch', 'FreeBSD'] %}
|
||||
{% if grains['os_family'] not in ['Arch', 'FreeBSD', 'Gentoo'] %}
|
||||
bind_default_config:
|
||||
file.managed:
|
||||
- name: {{ map.default_config }}
|
||||
|
@ -214,17 +214,22 @@ bind_rndc_client_config:
|
|||
{%- endif %}
|
||||
{%- set zone_records = salt['pillar.get']('bind:available_zones:' + zone + ':records', {}) %}
|
||||
{%- if salt['pillar.get']('bind:available_zones:' + zone + ':generate_reverse') %}
|
||||
{%- do generate_reverse(zone_records, salt['pillar.get']('bind:available_zones:' + zone + ':generate_reverse:net'), salt['pillar.get']('bind:available_zones:' + zone + ':generate_reverse:for_zones'), salt['pillar.get']('bind:available_zones', {})) %}
|
||||
{%- do generate_reverse(
|
||||
zone_records,
|
||||
salt['pillar.get']('bind:available_zones:' + zone + ':generate_reverse:net'),
|
||||
salt['pillar.get']('bind:available_zones:' + zone + ':generate_reverse:for_zones'),
|
||||
salt['pillar.get']('bind:available_zones', {})
|
||||
) %}
|
||||
{%- endif %}
|
||||
{# If we define RRs in pillar, we use the internal template to generate the zone file
|
||||
otherwise, we fallback to the old behaviour and use the declared file
|
||||
#}
|
||||
{%- set zone_source = 'salt://bind/files/zone.jinja' if zone_records != {} else 'salt://' ~ map.zones_source_dir ~ '/' ~ file %}
|
||||
{%- set serial_auto = salt['pillar.get']('bind:available_zones:' + zone + ':soa:serial', '') == 'auto' %}
|
||||
{% if file and zone_data['type'] == 'master' -%}
|
||||
zones{{ dash_view }}-{{ zone }}{{ '.include' if serial_auto else ''}}:
|
||||
{% if file and zone_data['type'] == 'master' and (zone_data['managed'] is not defined or zone_data['managed']) -%}
|
||||
zones{{ dash_view }}-{{ zone }}{{ '.include' if serial_auto else '' }}:
|
||||
file.managed:
|
||||
- name: {{ zones_directory }}/{{ file }}{{ '.include' if serial_auto else ''}}
|
||||
- name: {{ zones_directory }}/{{ file }}{{ '.include' if serial_auto else '' }}
|
||||
- source: {{ zone_source }}
|
||||
- template: jinja
|
||||
{% if zone_records != {} %}
|
||||
|
@ -292,7 +297,7 @@ zsk-{{ zone }}:
|
|||
- cwd: {{ key_directory }}
|
||||
- name: dnssec-keygen -a {{ key_algorithm }} -b {{ key_size }} -n ZONE {{ zone }}
|
||||
- runas: {{ map.user }}
|
||||
- unless: "grep {{ key_flags.zsk }} {{ key_directory }}/K{{zone}}.+{{ key_algorithm_field }}+*.key"
|
||||
- unless: "grep {{ key_flags.zsk }} {{ key_directory }}/K{{ zone }}.+{{ key_algorithm_field }}+*.key"
|
||||
- require:
|
||||
- file: bind_key_directory
|
||||
|
||||
|
@ -301,7 +306,7 @@ ksk-{{ zone }}:
|
|||
- cwd: {{ key_directory }}
|
||||
- name: dnssec-keygen -f KSK -a {{ key_algorithm }} -b {{ key_size }} -n ZONE {{ zone }}
|
||||
- runas: {{ map.user }}
|
||||
- unless: "grep {{ key_flags.ksk }} {{ key_directory }}/K{{zone}}.+{{ key_algorithm_field }}+*.key"
|
||||
- unless: "grep {{ key_flags.ksk }} {{ key_directory }}/K{{ zone }}.+{{ key_algorithm_field }}+*.key"
|
||||
- require:
|
||||
- file: bind_key_directory
|
||||
{% endif %}
|
||||
|
|
111
bind/files/gentoo/named.conf
Normal file
111
bind/files/gentoo/named.conf
Normal file
|
@ -0,0 +1,111 @@
|
|||
/*
|
||||
* Refer to the named.conf(5) and named(8) man pages, and the documentation
|
||||
* in /usr/share/doc/bind-* for more details.
|
||||
* Online versions of the documentation can be found here:
|
||||
* https://kb.isc.org/article/AA-01031
|
||||
*
|
||||
* If you are going to set up an authoritative server, make sure you
|
||||
* understand the hairy details of how DNS works. Even with simple mistakes,
|
||||
* you can break connectivity for affected parties, or cause huge amounts of
|
||||
* useless Internet traffic.
|
||||
*/
|
||||
|
||||
options {
|
||||
directory "{{ map.get('named_directory') }}";
|
||||
pid-file "/run/named/named.pid";
|
||||
|
||||
bindkeys-file "/etc/bind/bind.keys";
|
||||
|
||||
{%- if salt['pillar.get']('bind:config:ipv6', False) %}
|
||||
listen-on-v6 { {{ salt['pillar.get']('bind:config:ipv6_listen', 'any') }}; };
|
||||
{%- endif %}
|
||||
|
||||
listen-on { 127.0.0.1; };
|
||||
|
||||
{%- for statement, value in salt['pillar.get']('bind:config:options', {})|dictsort -%}
|
||||
{%- if value is iterable and value is not string %}
|
||||
{{ statement }} {
|
||||
{%- for item in value %}
|
||||
{{ item }};
|
||||
{%- endfor %}
|
||||
};
|
||||
{%- else %}
|
||||
{{ statement }} {{ value }};
|
||||
{%- endif %}
|
||||
{%- endfor %}
|
||||
};
|
||||
|
||||
{% for incl in salt['pillar.get']('bind:config:includes', []) %}
|
||||
include "{{ incl }}";
|
||||
{% endfor %}
|
||||
|
||||
|
||||
{%- if salt['pillar.get']('bind:controls', False) %}
|
||||
controls {
|
||||
{%- for name, control in salt['pillar.get']('bind:controls')|dictsort if control.get('enabled', True) %}
|
||||
inet {{ control.get('bind', {}).get('address', '127.0.0.1') }} port {{ control.get('bind', {}).get('port', 953) }}
|
||||
{%- if control.get('allow') %}
|
||||
allow {
|
||||
{%- for allow in control.allow %}
|
||||
{{ allow }};
|
||||
{%- endfor %}
|
||||
}
|
||||
{%- endif %}
|
||||
{%- if control.get('keys') %}
|
||||
keys {
|
||||
{%- for key in control.get('keys') %}
|
||||
{{ key }};
|
||||
{%- endfor %}
|
||||
}
|
||||
{%- endif %};
|
||||
{%- endfor %}
|
||||
|
||||
};
|
||||
{%- endif %}
|
||||
|
||||
zone "." in {
|
||||
type hint;
|
||||
file "/var/bind/named.cache";
|
||||
};
|
||||
|
||||
zone "localhost" IN {
|
||||
type master;
|
||||
file "pri/localhost.zone";
|
||||
notify no;
|
||||
};
|
||||
|
||||
/*
|
||||
* Briefly, a zone which has been declared delegation-only will be effectively
|
||||
* limited to containing NS RRs for subdomains, but no actual data beyond its
|
||||
* own apex (for example, its SOA RR and apex NS RRset). This can be used to
|
||||
* filter out "wildcard" or "synthesized" data from NAT boxes or from
|
||||
* authoritative name servers whose undelegated (in-zone) data is of no
|
||||
* interest.
|
||||
* See http://www.isc.org/software/bind/delegation-only for more info
|
||||
*/
|
||||
|
||||
//zone "COM" { type delegation-only; };
|
||||
//zone "NET" { type delegation-only; };
|
||||
|
||||
//zone "YOUR-DOMAIN.TLD" {
|
||||
// type master;
|
||||
// file "/var/bind/pri/YOUR-DOMAIN.TLD.zone";
|
||||
// allow-query { any; };
|
||||
// allow-transfer { xfer; };
|
||||
//};
|
||||
|
||||
//zone "YOUR-SLAVE.TLD" {
|
||||
// type slave;
|
||||
// file "/var/bind/sec/YOUR-SLAVE.TLD.zone";
|
||||
// masters { <MASTER>; };
|
||||
|
||||
/* Anybody is allowed to query but transfer should be controlled by the master. */
|
||||
// allow-query { any; };
|
||||
// allow-transfer { none; };
|
||||
|
||||
/* The master should be the only one who notifies the slaves, shouldn't it? */
|
||||
// allow-notify { <MASTER>; };
|
||||
// notify no;
|
||||
//};
|
||||
|
||||
include "{{ map.local_config }}";
|
|
@ -46,7 +46,7 @@ zone "{{ key }}" {
|
|||
inline-signing yes;
|
||||
{%- endif %}
|
||||
{%- if args['allow-update'] is defined %}
|
||||
allow-update { {{args['allow-update']}}; };
|
||||
allow-update { {{ args['allow-update'] }}; };
|
||||
{%- endif %}
|
||||
{%- if args.update_policy is defined %}
|
||||
update-policy {
|
||||
|
|
|
@ -3,9 +3,12 @@
|
|||
logging {
|
||||
|
||||
{% for channel in salt['pillar.get']('bind:config:use_extensive_logging:channel') %}
|
||||
channel {{channel}} {
|
||||
channel {{ channel }} {
|
||||
{%- if salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':file', False) %}
|
||||
file "{{ map.log_dir }}/{{salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':file')}}" versions {{salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':versions', '3')}} size {{salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':size', '20m')}};
|
||||
{%- set channel_file = salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':file') %}
|
||||
{%- set channel_versions = salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':versions', '3') %}
|
||||
{%- set channel_size = salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':size', '20m') %}
|
||||
file "{{ map.log_dir }}/{{ channel_file }}" versions {{ channel_versions }} size {{ channel_size }};
|
||||
{%- endif %}
|
||||
{%- if salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':print-time') %}
|
||||
print-time yes;
|
||||
|
@ -17,16 +20,16 @@ logging {
|
|||
print-severity yes;
|
||||
{%- endif %}
|
||||
{%- if salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':severity') %}
|
||||
severity {{salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':severity')}};
|
||||
severity {{ salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':severity') }};
|
||||
{%- endif %}
|
||||
{%- if salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':syslog') %}
|
||||
syslog {{salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':syslog')}};
|
||||
syslog {{ salt['pillar.get']('bind:config:use_extensive_logging:channel:'+channel+':syslog') }};
|
||||
{%- endif %}
|
||||
};
|
||||
{% endfor %}
|
||||
|
||||
{%- for category in salt['pillar.get']('bind:config:use_extensive_logging:category') %}
|
||||
category {{category}} { {{ salt['pillar.get']('bind:config:use_extensive_logging:category:'+category, []) | join('; ') }}; };
|
||||
category {{ category }} { {{ salt['pillar.get']('bind:config:use_extensive_logging:category:'+category, []) | join('; ') }}; };
|
||||
|
||||
{%- endfor %}
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
'named_directory': '/var/cache/bind',
|
||||
'zones_directory': '/var/cache/bind/zones',
|
||||
'chroot_dir': '',
|
||||
'log_dir': '/var/log/bind9',
|
||||
'log_dir': '/var/log/named',
|
||||
'log_mode': '644',
|
||||
'user': 'bind',
|
||||
'group': 'bind',
|
||||
|
@ -95,6 +95,26 @@
|
|||
'key_algorithm_field': '008',
|
||||
'key_size': '4096',
|
||||
},
|
||||
'Gentoo': {
|
||||
'pkgs': ['net-dns/bind', 'net-dns/bind-tools', 'net-dns/dnssec-tools'],
|
||||
'service': 'named',
|
||||
'config_source_dir': 'bind/files/gentoo',
|
||||
'zones_source_dir': 'zones',
|
||||
'config': '/etc/bind/named.conf',
|
||||
'local_config': '/etc/bind/named.conf.local',
|
||||
'named_directory': '/var/bind',
|
||||
'zones_directory': '/var/bind/pri',
|
||||
'chroot_dir': '',
|
||||
'log_dir': '/var/log/named',
|
||||
'log_mode': '660',
|
||||
'user': 'root',
|
||||
'group': 'named',
|
||||
'mode': '640',
|
||||
'key_directory': '/var/bind/dyn',
|
||||
'key_algorithm': 'RSASHA256',
|
||||
'key_algorithm_field': '008',
|
||||
'key_size': '4096',
|
||||
},
|
||||
'Suse': {
|
||||
'pkgs': ['bind'],
|
||||
'service': 'named',
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
module.exports = {
|
||||
extends: ['@commitlint/config-conventional'],
|
||||
rules: {
|
||||
'body-max-line-length': [2, 'always', 120],
|
||||
'footer-max-line-length': [2, 'always', 120],
|
||||
'header-max-length': [2, 'always', 72],
|
||||
},
|
||||
};
|
||||
|
|
132
docs/AUTHORS.rst
132
docs/AUTHORS.rst
|
@ -13,152 +13,158 @@ This list is sorted by the number of commits per contributor in *descending* ord
|
|||
* - Avatar
|
||||
- Contributor
|
||||
- Contributions
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/242396?v=4' width='36' height='36' alt='@javierbertoli'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10231489?v=4' width='36' height='36' alt='@myii'>`
|
||||
- `@myii <https://github.com/myii>`_
|
||||
- 107
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/242396?v=4' width='36' height='36' alt='@javierbertoli'>`
|
||||
- `@javierbertoli <https://github.com/javierbertoli>`_
|
||||
- 32
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1396878?v=4' width='36' height='36' alt='@gravyboat'>`
|
||||
- 34
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1396878?v=4' width='36' height='36' alt='@gravyboat'>`
|
||||
- `@gravyboat <https://github.com/gravyboat>`_
|
||||
- 21
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/18069703?v=4' width='36' height='36' alt='@crux-capacitor'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/18069703?v=4' width='36' height='36' alt='@crux-capacitor'>`
|
||||
- `@crux-capacitor <https://github.com/crux-capacitor>`_
|
||||
- 14
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/10231489?v=4' width='36' height='36' alt='@myii'>`
|
||||
- `@myii <https://github.com/myii>`_
|
||||
- 12
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/3374962?v=4' width='36' height='36' alt='@nmadhok'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3374962?v=4' width='36' height='36' alt='@nmadhok'>`
|
||||
- `@nmadhok <https://github.com/nmadhok>`_
|
||||
- 11
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1920805?v=4' width='36' height='36' alt='@alxwr'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1920805?v=4' width='36' height='36' alt='@alxwr'>`
|
||||
- `@alxwr <https://github.com/alxwr>`_
|
||||
- 11
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/2995329?v=4' width='36' height='36' alt='@t0fik'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2995329?v=4' width='36' height='36' alt='@t0fik'>`
|
||||
- `@t0fik <https://github.com/t0fik>`_
|
||||
- 10
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/8395913?v=4' width='36' height='36' alt='@aanriot'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1800660?v=4' width='36' height='36' alt='@aboe76'>`
|
||||
- `@aboe76 <https://github.com/aboe76>`_
|
||||
- 10
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/8395913?v=4' width='36' height='36' alt='@aanriot'>`
|
||||
- `@aanriot <https://github.com/aanriot>`_
|
||||
- 9
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1800660?v=4' width='36' height='36' alt='@aboe76'>`
|
||||
- `@aboe76 <https://github.com/aboe76>`_
|
||||
- 9
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/5682028?v=4' width='36' height='36' alt='@nadvornik'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5682028?v=4' width='36' height='36' alt='@nadvornik'>`
|
||||
- `@nadvornik <https://github.com/nadvornik>`_
|
||||
- 9
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/2094680?v=4' width='36' height='36' alt='@daschatten'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2094680?v=4' width='36' height='36' alt='@daschatten'>`
|
||||
- `@daschatten <https://github.com/daschatten>`_
|
||||
- 9
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/4323424?v=4' width='36' height='36' alt='@joe-bowman'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4323424?v=4' width='36' height='36' alt='@joe-bowman'>`
|
||||
- `@joe-bowman <https://github.com/joe-bowman>`_
|
||||
- 7
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/637990?v=4' width='36' height='36' alt='@bmwiedemann'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/637990?v=4' width='36' height='36' alt='@bmwiedemann'>`
|
||||
- `@bmwiedemann <https://github.com/bmwiedemann>`_
|
||||
- 6
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/6322354?v=4' width='36' height='36' alt='@ppieprzycki'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/52996?v=4' width='36' height='36' alt='@daks'>`
|
||||
- `@daks <https://github.com/daks>`_
|
||||
- 6
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6322354?v=4' width='36' height='36' alt='@ppieprzycki'>`
|
||||
- `@ppieprzycki <https://github.com/ppieprzycki>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/507599?v=4' width='36' height='36' alt='@thatch45'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/507599?v=4' width='36' height='36' alt='@thatch45'>`
|
||||
- `@thatch45 <https://github.com/thatch45>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/528061?v=4' width='36' height='36' alt='@puneetk'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/528061?v=4' width='36' height='36' alt='@puneetk'>`
|
||||
- `@puneetk <https://github.com/puneetk>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/52996?v=4' width='36' height='36' alt='@daks'>`
|
||||
- `@daks <https://github.com/daks>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/287147?v=4' width='36' height='36' alt='@techhat'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/287147?v=4' width='36' height='36' alt='@techhat'>`
|
||||
- `@techhat <https://github.com/techhat>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/10901150?v=4' width='36' height='36' alt='@ryanwalder'>`
|
||||
- `@ryanwalder <https://github.com/ryanwalder>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/6639666?v=4' width='36' height='36' alt='@ukretschmer'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6639666?v=4' width='36' height='36' alt='@ukretschmer'>`
|
||||
- `@ukretschmer <https://github.com/ukretschmer>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen5'>`
|
||||
- `@babilen5 <https://github.com/babilen5>`_
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen'>`
|
||||
- `@babilen <https://github.com/babilen>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/18299?v=4' width='36' height='36' alt='@davidkarlsen'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/18299?v=4' width='36' height='36' alt='@davidkarlsen'>`
|
||||
- `@davidkarlsen <https://github.com/davidkarlsen>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/811611?v=4' width='36' height='36' alt='@cosu'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/811611?v=4' width='36' height='36' alt='@cosu'>`
|
||||
- `@cosu <https://github.com/cosu>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/718525?v=4' width='36' height='36' alt='@garethgreenaway'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4195158?v=4' width='36' height='36' alt='@dafyddj'>`
|
||||
- `@dafyddj <https://github.com/dafyddj>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/718525?v=4' width='36' height='36' alt='@garethgreenaway'>`
|
||||
- `@garethgreenaway <https://github.com/garethgreenaway>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/4156131?v=4' width='36' height='36' alt='@skylerberg'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4156131?v=4' width='36' height='36' alt='@skylerberg'>`
|
||||
- `@skylerberg <https://github.com/skylerberg>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/6215293?v=4' width='36' height='36' alt='@0xf10e'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1806188?v=4' width='36' height='36' alt='@tedski'>`
|
||||
- `@tedski <https://github.com/tedski>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6215293?v=4' width='36' height='36' alt='@0xf10e'>`
|
||||
- `@0xf10e <https://github.com/0xf10e>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/5789536?v=4' width='36' height='36' alt='@ogabrielsantos'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5789536?v=4' width='36' height='36' alt='@ogabrielsantos'>`
|
||||
- `@ogabrielsantos <https://github.com/ogabrielsantos>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3768412?v=4' width='36' height='36' alt='@stp-ip'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3768412?v=4' width='36' height='36' alt='@stp-ip'>`
|
||||
- `@stp-ip <https://github.com/stp-ip>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/91293?v=4' width='36' height='36' alt='@whiteinge'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/91293?v=4' width='36' height='36' alt='@whiteinge'>`
|
||||
- `@whiteinge <https://github.com/whiteinge>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1806188?v=4' width='36' height='36' alt='@tedski'>`
|
||||
- `@tedski <https://github.com/tedski>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/1622925?v=4' width='36' height='36' alt='@alexeiswirth'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1622925?v=4' width='36' height='36' alt='@alexeiswirth'>`
|
||||
- `@alexeiswirth <https://github.com/alexeiswirth>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3122114?v=4' width='36' height='36' alt='@kiwiz'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3122114?v=4' width='36' height='36' alt='@kiwiz'>`
|
||||
- `@kiwiz <https://github.com/kiwiz>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/976976?v=4' width='36' height='36' alt='@Aloz1'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/976976?v=4' width='36' height='36' alt='@Aloz1'>`
|
||||
- `@Aloz1 <https://github.com/Aloz1>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1079875?v=4' width='36' height='36' alt='@bogdanr'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1079875?v=4' width='36' height='36' alt='@bogdanr'>`
|
||||
- `@bogdanr <https://github.com/bogdanr>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5575236?v=4' width='36' height='36' alt='@BrianSidebotham'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5575236?v=4' width='36' height='36' alt='@BrianSidebotham'>`
|
||||
- `@BrianSidebotham <https://github.com/BrianSidebotham>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/776662?v=4' width='36' height='36' alt='@carlosperello'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/776662?v=4' width='36' height='36' alt='@carlosperello'>`
|
||||
- `@carlosperello <https://github.com/carlosperello>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/306240?v=4' width='36' height='36' alt='@UtahDave'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1233212?v=4' width='36' height='36' alt='@baby-gnu'>`
|
||||
- `@baby-gnu <https://github.com/baby-gnu>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/306240?v=4' width='36' height='36' alt='@UtahDave'>`
|
||||
- `@UtahDave <https://github.com/UtahDave>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/94157?v=4' width='36' height='36' alt='@imran1008'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/94157?v=4' width='36' height='36' alt='@imran1008'>`
|
||||
- `@imran1008 <https://github.com/imran1008>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/7613500?v=4' width='36' height='36' alt='@levlozhkin'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7613500?v=4' width='36' height='36' alt='@levlozhkin'>`
|
||||
- `@levlozhkin <https://github.com/levlozhkin>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/7139195?v=4' width='36' height='36' alt='@xenophonf'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6086064?v=4' width='36' height='36' alt='@mgomersbach'>`
|
||||
- `@mgomersbach <https://github.com/mgomersbach>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7139195?v=4' width='36' height='36' alt='@xenophonf'>`
|
||||
- `@xenophonf <https://github.com/xenophonf>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2004149?v=4' width='36' height='36' alt='@barroco'>`
|
||||
- `@barroco <https://github.com/barroco>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/2321403?v=4' width='36' height='36' alt='@nickbooties'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2321403?v=4' width='36' height='36' alt='@nickbooties'>`
|
||||
- `@nickbooties <https://github.com/nickbooties>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/949989?v=4' width='36' height='36' alt='@attiasr'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/949989?v=4' width='36' height='36' alt='@attiasr'>`
|
||||
- `@attiasr <https://github.com/attiasr>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/434444?v=4' width='36' height='36' alt='@tiefpunkt'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/434444?v=4' width='36' height='36' alt='@tiefpunkt'>`
|
||||
- `@tiefpunkt <https://github.com/tiefpunkt>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/13481669?v=4' width='36' height='36' alt='@vmagistro'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/13481669?v=4' width='36' height='36' alt='@vmagistro'>`
|
||||
- `@vmagistro <https://github.com/vmagistro>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/753483?v=4' width='36' height='36' alt='@AdrienR'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/753483?v=4' width='36' height='36' alt='@AdrienR'>`
|
||||
- `@AdrienR <https://github.com/AdrienR>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/10585477?v=4' width='36' height='36' alt='@blacksmith77'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10585477?v=4' width='36' height='36' alt='@blacksmith77'>`
|
||||
- `@blacksmith77 <https://github.com/blacksmith77>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2061751?v=4' width='36' height='36' alt='@matthew-parlette'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2061751?v=4' width='36' height='36' alt='@matthew-parlette'>`
|
||||
- `@matthew-parlette <https://github.com/matthew-parlette>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/10833722?v=4' width='36' height='36' alt='@sylvainfaivre'>`
|
||||
- `@sylvainfaivre <https://github.com/sylvainfaivre>`_
|
||||
- 1
|
||||
|
||||
|
||||
----
|
||||
|
||||
Auto-generated by a `forked version <https://github.com/myii/maintainer>`_ of `gaocegege/maintainer <https://github.com/gaocegege/maintainer>`_ on 2019-08-17.
|
||||
Auto-generated by a `forked version <https://github.com/myii/maintainer>`_ of `gaocegege/maintainer <https://github.com/gaocegege/maintainer>`_ on 2021-09-13.
|
||||
|
|
|
@ -2,6 +2,199 @@
|
|||
Changelog
|
||||
=========
|
||||
|
||||
`0.20.0 <https://github.com/saltstack-formulas/bind-formula/compare/v0.19.2...v0.20.0>`_ (2021-09-13)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **3003.1:** update inc. AlmaLinux, Rocky & ``rst-lint`` [skip ci] (\ `8082c7e <https://github.com/saltstack-formulas/bind-formula/commit/8082c7e6d48ccf4e5e66ee821fad4f57183d7524>`_\ )
|
||||
* **commitlint:** ensure ``upstream/master`` uses main repo URL [skip ci] (\ `19d42a9 <https://github.com/saltstack-formulas/bind-formula/commit/19d42a9776198e802215bbb38716b2295f6d18b3>`_\ )
|
||||
* **gemfile.lock:** add to repo with updated ``Gemfile`` [skip ci] (\ `c15db2b <https://github.com/saltstack-formulas/bind-formula/commit/c15db2bd0cbb5b303b98a9ed7102b2b26aff9057>`_\ )
|
||||
* **gemfile+lock:** use ``ssf`` customised ``inspec`` repo [skip ci] (\ `d46d646 <https://github.com/saltstack-formulas/bind-formula/commit/d46d646fdc9a944a4dcecff245088b5b268da0ec>`_\ )
|
||||
* **gitlab-ci:** use GitLab CI as Travis CI replacement (\ `c642234 <https://github.com/saltstack-formulas/bind-formula/commit/c64223415906f733d7db1405468a43050d9b15ad>`_\ )
|
||||
* **kitchen:** move ``provisioner`` block & update ``run_command`` [skip ci] (\ `0128f48 <https://github.com/saltstack-formulas/bind-formula/commit/0128f48b0b468541db8359c98bcbcf9f52481ea2>`_\ )
|
||||
* **kitchen+ci:** update with latest ``3003.2`` pre-salted images [skip ci] (\ `8c1a04c <https://github.com/saltstack-formulas/bind-formula/commit/8c1a04cfbf2ee683981cacf03e89d5e0b6926d4a>`_\ )
|
||||
* add Debian 11 Bullseye & update ``yamllint`` configuration [skip ci] (\ `aa69b55 <https://github.com/saltstack-formulas/bind-formula/commit/aa69b550eb6a6ec16e53bf7c28312cec1b6f28f8>`_\ )
|
||||
* **gemfile+lock:** use ``ssf`` customised ``kitchen-docker`` repo [skip ci] (\ `0cdaad3 <https://github.com/saltstack-formulas/bind-formula/commit/0cdaad33b9b8ca1fea0ab8210182d6ccbe5a6c75>`_\ )
|
||||
* **kitchen:** use ``saltimages`` Docker Hub where available [skip ci] (\ `1b4cfcd <https://github.com/saltstack-formulas/bind-formula/commit/1b4cfcd1e6d19312f3e0802bc5c567ad6ea15013>`_\ )
|
||||
* **kitchen+ci:** use latest pre-salted images (after CVE) [skip ci] (\ `9de203a <https://github.com/saltstack-formulas/bind-formula/commit/9de203a5e947b282c2c99e5c66161f553b8379f6>`_\ )
|
||||
* **kitchen+gitlab:** adjust matrix to add ``3003`` [skip ci] (\ `9833cb6 <https://github.com/saltstack-formulas/bind-formula/commit/9833cb616c026abce0b0eb11ea5620a060b0af32>`_\ )
|
||||
* **kitchen+gitlab:** remove Ubuntu 16.04 & Fedora 32 (EOL) [skip ci] (\ `a3556b4 <https://github.com/saltstack-formulas/bind-formula/commit/a3556b4cc4931a0062c89019bb22a11885328c57>`_\ )
|
||||
* add ``arch-master`` to matrix and update ``.travis.yml`` [skip ci] (\ `73ee1c9 <https://github.com/saltstack-formulas/bind-formula/commit/73ee1c9b9f7987c41d7f427e0a7decd8c42eaab8>`_\ )
|
||||
* **gitlab-ci:** add ``rubocop`` linter (with ``allow_failure``\ ) [skip ci] (\ `db90981 <https://github.com/saltstack-formulas/bind-formula/commit/db90981eed9fcc4511268c2cf7dd3e0be4241216>`_\ )
|
||||
* **kitchen+gitlab-ci:** use latest pre-salted images [skip ci] (\ `df1f583 <https://github.com/saltstack-formulas/bind-formula/commit/df1f58377c0497b7a5ef973df4596e4deb201a4a>`_\ )
|
||||
* **kitchen+travis:** remove ``master-py2-arch-base-latest`` [skip ci] (\ `f1b306d <https://github.com/saltstack-formulas/bind-formula/commit/f1b306dbef9e4f6a83a789851d1230639226ec1c>`_\ )
|
||||
* **pre-commit:** add to formula [skip ci] (\ `1b24859 <https://github.com/saltstack-formulas/bind-formula/commit/1b248596e594fcfd6e0efbe08f73971fe141d879>`_\ )
|
||||
* **pre-commit:** enable/disable ``rstcheck`` as relevant [skip ci] (\ `ffc60d2 <https://github.com/saltstack-formulas/bind-formula/commit/ffc60d2e1f5ff7b34fecb443a1f8203cdca4b988>`_\ )
|
||||
* **pre-commit:** finalise ``rstcheck`` configuration [skip ci] (\ `800a5e1 <https://github.com/saltstack-formulas/bind-formula/commit/800a5e10db8576b5d058a63391e51c2bf1ae11c8>`_\ )
|
||||
* **pre-commit:** update hook for ``rubocop`` [skip ci] (\ `182622d <https://github.com/saltstack-formulas/bind-formula/commit/182622d9e811f2bcdb1019da38c8863a66307c4a>`_\ )
|
||||
* **travis:** add notifications => zulip [skip ci] (\ `51f0a8e <https://github.com/saltstack-formulas/bind-formula/commit/51f0a8e06e144054ecd5b76f8512dd080768e7d7>`_\ )
|
||||
* **workflows/commitlint:** add to repo [skip ci] (\ `b202791 <https://github.com/saltstack-formulas/bind-formula/commit/b202791a7cc78370a0a610193abf39cd544e67cd>`_\ )
|
||||
|
||||
Documentation
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **readme:** fix headings [skip ci] (\ `292b023 <https://github.com/saltstack-formulas/bind-formula/commit/292b0232c1c544c4fc7b3a2bad07bdc026b0a1f0>`_\ )
|
||||
|
||||
Features
|
||||
^^^^^^^^
|
||||
|
||||
|
||||
* **config.sls:** allow to not manage zone file (\ `2d06954 <https://github.com/saltstack-formulas/bind-formula/commit/2d069544f6e5d8cbf5a6bee23d0e9618e09cd025>`_\ )
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* standardise use of ``share`` suite & ``_mapdata`` state [skip ci] (\ `3cb26c0 <https://github.com/saltstack-formulas/bind-formula/commit/3cb26c0a71cb99b88ef1ce00747c4fe57d4a322f>`_\ )
|
||||
|
||||
`0.19.2 <https://github.com/saltstack-formulas/bind-formula/compare/v0.19.1...v0.19.2>`_ (2020-03-23)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **debian:** align Debian log directory with apparmor profile (\ `b5efc0b <https://github.com/saltstack-formulas/bind-formula/commit/b5efc0b9bdc24bad145c2e511a09dd976ef0a3ed>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **kitchen:** avoid using bootstrap for ``master`` instances [skip ci] (\ `292e495 <https://github.com/saltstack-formulas/bind-formula/commit/292e495d0149599b53b588f9914f18366deac20f>`_\ )
|
||||
|
||||
`0.19.1 <https://github.com/saltstack-formulas/bind-formula/compare/v0.19.0...v0.19.1>`_ (2020-01-27)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **default.sls:** fix subnet declaration (\ `c814779 <https://github.com/saltstack-formulas/bind-formula/commit/c8147797747f4c9b8d07d6310df750521f01ac82>`_\ ), closes `#144 <https://github.com/saltstack-formulas/bind-formula/issues/144>`_
|
||||
* **rubocop:** add fixes using ``rubocop -a --safe`` [skip ci] (\ `9d2966f <https://github.com/saltstack-formulas/bind-formula/commit/9d2966fd3226828614a9b551202fa076f048ce49>`_\ )
|
||||
|
||||
Reverts
|
||||
^^^^^^^
|
||||
|
||||
|
||||
* **config_spec.rb:** do partial revert of ``rubocop -a --safe`` (\ `75810c0 <https://github.com/saltstack-formulas/bind-formula/commit/75810c07a71aa4b4ba74ed3c3facb1c5ee0ea6f8>`_\ )
|
||||
|
||||
`0.19.0 <https://github.com/saltstack-formulas/bind-formula/compare/v0.18.4...v0.19.0>`_ (2019-12-21)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **release.config.js:** use full commit hash in commit link [skip ci] (\ `adcdbb1 <https://github.com/saltstack-formulas/bind-formula/commit/adcdbb12b83c5f2b2eeb1dd7197783107d9f3ae1>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **gemfile:** restrict ``train`` gem version until upstream fix [skip ci] (\ `b7b0d65 <https://github.com/saltstack-formulas/bind-formula/commit/b7b0d655e1166a54ad5a182cf33f40df12afb2bc>`_\ )
|
||||
* **kitchen:** use ``debian-10-master-py3`` instead of ``develop`` [skip ci] (\ `c91fe2a <https://github.com/saltstack-formulas/bind-formula/commit/c91fe2a96b2c4f3d91d4d1a4996e37358cbe04ea>`_\ )
|
||||
* **kitchen:** use ``develop`` image until ``master`` is ready (\ ``amazonlinux``\ ) [skip ci] (\ `5afc27e <https://github.com/saltstack-formulas/bind-formula/commit/5afc27ec26fe676d99113958834398ab70f3a0dd>`_\ )
|
||||
* **kitchen+travis:** upgrade matrix after ``2019.2.2`` release [skip ci] (\ `6ba1dd5 <https://github.com/saltstack-formulas/bind-formula/commit/6ba1dd5262b567aad0b558fdcf81c566e2232c0f>`_\ )
|
||||
* **travis:** apply changes from build config validation [skip ci] (\ `1838174 <https://github.com/saltstack-formulas/bind-formula/commit/18381748c74eb54b6b7630e48ea1a9291e419889>`_\ )
|
||||
* **travis:** opt-in to ``dpl v2`` to complete build config validation [skip ci] (\ `577ad6d <https://github.com/saltstack-formulas/bind-formula/commit/577ad6db1ec2f5236dcf147011c67dfc567f448c>`_\ )
|
||||
* **travis:** quote pathspecs used with ``git ls-files`` [skip ci] (\ `88f9ff1 <https://github.com/saltstack-formulas/bind-formula/commit/88f9ff128f789b6ad9c5292681f1f8f70f725e69>`_\ )
|
||||
* **travis:** restrict ``semantic-release`` version until upstream fix (\ `5989bb9 <https://github.com/saltstack-formulas/bind-formula/commit/5989bb9a0b9112aa1fdc21ed3ec273a6a6976af9>`_\ )
|
||||
* **travis:** run ``shellcheck`` during lint job [skip ci] (\ `37c65de <https://github.com/saltstack-formulas/bind-formula/commit/37c65de5484c94ae031734663ac03d50c386066f>`_\ )
|
||||
* **travis:** update ``salt-lint`` config for ``v0.0.10`` [skip ci] (\ `4c6a882 <https://github.com/saltstack-formulas/bind-formula/commit/4c6a88243edb1fef2e5fba0ff16fd90e8514b88e>`_\ )
|
||||
* **travis:** use ``major.minor`` for ``semantic-release`` version (\ `66c4d9f <https://github.com/saltstack-formulas/bind-formula/commit/66c4d9fe7d3c56f214f6951efcdd9cb5faa88911>`_\ ), closes `/github.com/saltstack-formulas/bind-formula/issues/143#issuecomment-568197176 <https://github.com//github.com/saltstack-formulas/bind-formula/issues/143/issues/issuecomment-568197176>`_
|
||||
* **travis:** use build config validation (beta) [skip ci] (\ `681c345 <https://github.com/saltstack-formulas/bind-formula/commit/681c345e8b78e2d3115adde39cb2202c28dc230d>`_\ )
|
||||
* merge travis matrix, add ``salt-lint`` & ``rubocop`` to ``lint`` job (\ `7b23dbb <https://github.com/saltstack-formulas/bind-formula/commit/7b23dbbae026b0a8cc779f5ce84de92325454e8b>`_\ )
|
||||
|
||||
Documentation
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **contributing:** remove to use org-level file instead [skip ci] (\ `9c11845 <https://github.com/saltstack-formulas/bind-formula/commit/9c11845a0997f7bdd6fbcae97e23262de78132a4>`_\ )
|
||||
* **readme:** update link to ``CONTRIBUTING`` [skip ci] (\ `ab6ea39 <https://github.com/saltstack-formulas/bind-formula/commit/ab6ea391d885fc2246db94219b59662c250c0854>`_\ )
|
||||
|
||||
Features
|
||||
^^^^^^^^
|
||||
|
||||
|
||||
* **map.jinja:** add Gentoo support (\ `7415a9b <https://github.com/saltstack-formulas/bind-formula/commit/7415a9b0ce788d978c583499452fdcfc22328c42>`_\ )
|
||||
|
||||
Performance Improvements
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **travis:** improve ``salt-lint`` invocation [skip ci] (\ `b63490c <https://github.com/saltstack-formulas/bind-formula/commit/b63490c23ddb9ccbdcfe02e85444f178441d02ad>`_\ )
|
||||
|
||||
`0.18.4 <https://github.com/saltstack-formulas/bind-formula/compare/v0.18.3...v0.18.4>`_ (2019-10-10)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **config.sls:** fix ``salt-lint`` errors (\ ` <https://github.com/saltstack-formulas/bind-formula/commit/920615a>`_\ )
|
||||
* **named.conf.local.jinja:** fix ``salt-lint`` errors (\ ` <https://github.com/saltstack-formulas/bind-formula/commit/67736a2>`_\ )
|
||||
* **named.conf.logging.jinja:** fix ``salt-lint`` errors (\ ` <https://github.com/saltstack-formulas/bind-formula/commit/f220886>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* merge travis matrix, add ``salt-lint`` & ``rubocop`` to ``lint`` job (\ ` <https://github.com/saltstack-formulas/bind-formula/commit/5883c09>`_\ )
|
||||
|
||||
`0.18.3 <https://github.com/saltstack-formulas/bind-formula/compare/v0.18.2...v0.18.3>`_ (2019-10-07)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **pillar.example:** fix ``yamllint`` error (\ `eb29e00 <https://github.com/saltstack-formulas/bind-formula/commit/eb29e00>`_\ ), closes `/travis-ci.org/myii/bind-formula/builds/594704904#L211-L213 <https://github.com//travis-ci.org/myii/bind-formula/builds/594704904/issues/L211-L213>`_
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* use ``dist: bionic`` & apply ``opensuse-leap-15`` SCP error workaround (\ `90abafa <https://github.com/saltstack-formulas/bind-formula/commit/90abafa>`_\ )
|
||||
* **kitchen:** change ``log_level`` to ``debug`` instead of ``info`` (\ `e0be98a <https://github.com/saltstack-formulas/bind-formula/commit/e0be98a>`_\ )
|
||||
* **kitchen:** install required packages to bootstrapped ``opensuse`` [skip ci] (\ `a5ad4c6 <https://github.com/saltstack-formulas/bind-formula/commit/a5ad4c6>`_\ )
|
||||
* **kitchen:** use bootstrapped ``opensuse`` images until ``2019.2.2`` [skip ci] (\ `0d02016 <https://github.com/saltstack-formulas/bind-formula/commit/0d02016>`_\ )
|
||||
* **platform:** add ``arch-base-latest`` (commented out for now) [skip ci] (\ `c091c74 <https://github.com/saltstack-formulas/bind-formula/commit/c091c74>`_\ )
|
||||
* **yamllint:** add rule ``empty-values`` & use new ``yaml-files`` setting (\ `9163726 <https://github.com/saltstack-formulas/bind-formula/commit/9163726>`_\ )
|
||||
|
||||
`0.18.2 <https://github.com/saltstack-formulas/bind-formula/compare/v0.18.1...v0.18.2>`_ (2019-09-05)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **kitchen+travis:** replace EOL pre-salted images (\ `3a4d4e8 <https://github.com/saltstack-formulas/bind-formula/commit/3a4d4e8>`_\ )
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* **inspec:** improve to work on ``amazon`` as well (\ `59684c6 <https://github.com/saltstack-formulas/bind-formula/commit/59684c6>`_\ )
|
||||
|
||||
`0.18.1 <https://github.com/saltstack-formulas/bind-formula/compare/v0.18.0...v0.18.1>`_ (2019-08-18)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **tests:** move to controls sub-directory (\ `74bbc5b <https://github.com/saltstack-formulas/bind-formula/commit/74bbc5b>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **travis:** re-enable ``fedora`` (\ `4a6ac4e <https://github.com/saltstack-formulas/bind-formula/commit/4a6ac4e>`_\ )
|
||||
|
||||
`0.18.0 <https://github.com/saltstack-formulas/bind-formula/compare/v0.17.0...v0.18.0>`_ (2019-08-17)
|
||||
---------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -1,159 +0,0 @@
|
|||
.. _contributing:
|
||||
|
||||
How to contribute
|
||||
=================
|
||||
|
||||
This document will eventually outline all aspects of guidance to make your contributing experience a fruitful and enjoyable one.
|
||||
What it already contains is information about *commit message formatting* and how that directly affects the numerous automated processes that are used for this repo.
|
||||
It also covers how to contribute to this *formula's documentation*.
|
||||
|
||||
.. contents:: **Table of Contents**
|
||||
|
||||
Overview
|
||||
--------
|
||||
|
||||
Submitting a pull request is more than just code!
|
||||
To achieve a quality product, the *tests* and *documentation* need to be updated as well.
|
||||
An excellent pull request will include these in the changes, wherever relevant.
|
||||
|
||||
Commit message formatting
|
||||
-------------------------
|
||||
|
||||
Since every type of change requires making Git commits,
|
||||
we will start by covering the importance of ensuring that all of your commit
|
||||
messages are in the correct format.
|
||||
|
||||
Automation of multiple processes
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This formula uses `semantic-release <https://github.com/semantic-release/semantic-release>`_ for automating numerous processes such as bumping the version number appropriately, creating new tags/releases and updating the changelog.
|
||||
The entire process relies on the structure of commit messages to determine the version bump, which is then used for the rest of the automation.
|
||||
|
||||
Full details are available in the upstream docs regarding the `Angular Commit Message Conventions <https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines>`_.
|
||||
The key factor is that the first line of the commit message must follow this format:
|
||||
|
||||
.. code-block::
|
||||
|
||||
type(scope): subject
|
||||
|
||||
|
||||
* E.g. ``docs(contributing): add commit message formatting instructions``.
|
||||
|
||||
Besides the version bump, the changelog and release notes are formatted accordingly.
|
||||
So based on the example above:
|
||||
|
||||
..
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<h3>Documentation</h3>
|
||||
|
||||
* **contributing:** add commit message formatting instructions
|
||||
|
||||
|
||||
* The ``type`` translates into a ``Documentation`` sub-heading.
|
||||
* The ``(scope):`` will be shown in bold text without the brackets.
|
||||
* The ``subject`` follows the ``scope`` as standard text.
|
||||
|
||||
Linting commit messages in Travis CI
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This formula uses `commitlint <https://github.com/conventional-changelog/commitlint>`_ for checking commit messages during CI testing.
|
||||
This ensures that they are in accordance with the ``semantic-release`` settings.
|
||||
|
||||
For more details about the default settings, refer back to the ``commitlint`` `reference rules <https://conventional-changelog.github.io/commitlint/#/reference-rules>`_.
|
||||
|
||||
Relationship between commit type and version bump
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
This formula applies some customisations to the defaults, as outlined in the table below,
|
||||
based upon the `type <https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#type>`_ of the commit:
|
||||
|
||||
.. list-table::
|
||||
:name: commit-type-vs-version-bump
|
||||
:header-rows: 1
|
||||
:stub-columns: 0
|
||||
:widths: 1,2,3,1,1
|
||||
|
||||
* - Type
|
||||
- Heading
|
||||
- Description
|
||||
- Bump (default)
|
||||
- Bump (custom)
|
||||
* - ``build``
|
||||
- Build System
|
||||
- Changes related to the build system
|
||||
- –
|
||||
-
|
||||
* - ``chore``
|
||||
- –
|
||||
- Changes to the build process or auxiliary tools and libraries such as
|
||||
documentation generation
|
||||
- –
|
||||
-
|
||||
* - ``ci``
|
||||
- Continuous Integration
|
||||
- Changes to the continuous integration configuration
|
||||
- –
|
||||
-
|
||||
* - ``docs``
|
||||
- Documentation
|
||||
- Documentation only changes
|
||||
- –
|
||||
- 0.0.1
|
||||
* - ``feat``
|
||||
- Features
|
||||
- A new feature
|
||||
- 0.1.0
|
||||
-
|
||||
* - ``fix``
|
||||
- Bug Fixes
|
||||
- A bug fix
|
||||
- 0.0.1
|
||||
-
|
||||
* - ``perf``
|
||||
- Performance Improvements
|
||||
- A code change that improves performance
|
||||
- 0.0.1
|
||||
-
|
||||
* - ``refactor``
|
||||
- Code Refactoring
|
||||
- A code change that neither fixes a bug nor adds a feature
|
||||
- –
|
||||
- 0.0.1
|
||||
* - ``revert``
|
||||
- Reverts
|
||||
- A commit used to revert a previous commit
|
||||
- –
|
||||
- 0.0.1
|
||||
* - ``style``
|
||||
- Styles
|
||||
- Changes that do not affect the meaning of the code (white-space,
|
||||
formatting, missing semi-colons, etc.)
|
||||
- –
|
||||
- 0.0.1
|
||||
* - ``test``
|
||||
- Tests
|
||||
- Adding missing or correcting existing tests
|
||||
- –
|
||||
- 0.0.1
|
||||
|
||||
Use ``BREAKING CHANGE`` to trigger a ``major`` version change
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Adding ``BREAKING CHANGE`` to the footer of the extended description of the commit message will **always** trigger a ``major`` version change, no matter which type has been used.
|
||||
This will be appended to the changelog and release notes as well.
|
||||
To preserve good formatting of these notes, the following format is prescribed:
|
||||
|
||||
* ``BREAKING CHANGE: <explanation in paragraph format>.``
|
||||
|
||||
An example of that:
|
||||
|
||||
.. code-block:: git
|
||||
|
||||
...
|
||||
|
||||
BREAKING CHANGE: With the removal of all of the `.sls` files under
|
||||
`template package`, this formula no longer supports the installation of
|
||||
packages.
|
||||
|
|
@ -38,7 +38,7 @@ Contributing to this repo
|
|||
|
||||
**Commit message formatting is significant!!**
|
||||
|
||||
Please see :ref:`How to contribute <CONTRIBUTING>` for more details.
|
||||
Please see `How to contribute <https://github.com/saltstack-formulas/.github/blob/master/CONTRIBUTING.rst>`_ for more details.
|
||||
|
||||
Available states
|
||||
----------------
|
||||
|
@ -57,7 +57,7 @@ Install the bind package and start the bind service.
|
|||
Manage the bind configuration file.
|
||||
|
||||
Example Pillar
|
||||
==============
|
||||
--------------
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
|
@ -94,10 +94,10 @@ Example Pillar
|
|||
See *pillar.example* for a more complete example.
|
||||
|
||||
Management of zone files
|
||||
========================
|
||||
------------------------
|
||||
|
||||
`named.conf.local`
|
||||
------------------
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
<zone> entries in `named.conf.local` will point to the file declared in
|
||||
|
||||
|
@ -105,7 +105,7 @@ Management of zone files
|
|||
* `bind:available_zones:<zone>:file`
|
||||
|
||||
zone files
|
||||
----------
|
||||
^^^^^^^^^^
|
||||
|
||||
The `config.sls` state will iterate on `bind:available_zones` and manage
|
||||
<zone> files for each <zone> that has bind:available_zones:<zone>:file`
|
||||
|
@ -118,21 +118,21 @@ declared.
|
|||
that will be **sourced** by the formula.
|
||||
|
||||
Using Views
|
||||
-----------
|
||||
^^^^^^^^^^^
|
||||
|
||||
Using views introduces some restrictions by the BIND server in that once you have views defined, ALL of your zones have to be served via a view. You cannot have any zones defined outside of a view.
|
||||
|
||||
If you want multiple views to serve the same zone but with different record sets, follow the example in pillar-with-views.example to set this up. The key to this is the 'file' argument in the view configuration that allows you to set the view's configured_zone to a zone that you define underneath 'available_zones'. Without specifying this 'file' argument, your views cannot serve the same zone; they will instead serve a zone that matches the name of the view.
|
||||
|
||||
External zone files
|
||||
-------------------
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
To use an external tool to manage the <zone> file, simply declare the location
|
||||
of the zone file in `bind:configured_zones:<zone>:file` and **don't** add any
|
||||
entry for the <zone> in `bind:available_zones`
|
||||
|
||||
DNSSEC
|
||||
======
|
||||
------
|
||||
|
||||
The `bind` formula currently support two ways to enable DNSSEC:
|
||||
|
||||
|
@ -187,12 +187,12 @@ On the slave server :
|
|||
- 192.168.1.1
|
||||
|
||||
Notes
|
||||
=====
|
||||
-----
|
||||
|
||||
* When using views all zones must be configured in views!
|
||||
|
||||
Salt Compatibility
|
||||
==================
|
||||
------------------
|
||||
|
||||
Tested with:
|
||||
|
||||
|
@ -200,7 +200,7 @@ Tested with:
|
|||
* 2018.3.x
|
||||
|
||||
OS Compatibility
|
||||
================
|
||||
----------------
|
||||
|
||||
Tested with:
|
||||
|
||||
|
|
338
kitchen.yml
338
kitchen.yml
|
@ -6,102 +6,11 @@ driver:
|
|||
name: docker
|
||||
use_sudo: false
|
||||
privileged: true
|
||||
run_command: /lib/systemd/systemd
|
||||
|
||||
# Make sure the platforms listed below match up with
|
||||
# the `env.matrix` instances defined in `.travis.yml`
|
||||
platforms:
|
||||
## SALT `develop`
|
||||
- name: debian-9-develop-py3
|
||||
driver:
|
||||
image: netmanagers/salt-develop-py3:debian-9
|
||||
provision_command:
|
||||
- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com
|
||||
- sh bootstrap-salt.sh -XdPbfrq -x python3 git develop
|
||||
- name: ubuntu-1804-develop-py3
|
||||
driver:
|
||||
image: netmanagers/salt-develop-py3:ubuntu-18.04
|
||||
provision_command:
|
||||
- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com
|
||||
- sh bootstrap-salt.sh -XdPbfrq -x python3 git develop
|
||||
- name: centos-7-develop-py3
|
||||
driver:
|
||||
image: netmanagers/salt-develop-py3:centos-7
|
||||
provision_command:
|
||||
- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com
|
||||
- sh bootstrap-salt.sh -XdPbfrq -x python3 git develop
|
||||
- name: fedora-29-develop-py3
|
||||
driver:
|
||||
image: netmanagers/salt-develop-py3:fedora-29
|
||||
provision_command:
|
||||
- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com
|
||||
- sh bootstrap-salt.sh -XdPbfrq -x python3 git develop
|
||||
- name: opensuse-leap-15-develop-py3
|
||||
driver:
|
||||
image: netmanagers/salt-develop-py3:opensuse-leap-15
|
||||
provision_command:
|
||||
- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com
|
||||
- sh bootstrap-salt.sh -XdPbfrq -x python3 git develop
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
## SALT `2019.2`
|
||||
- name: debian-9-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:debian-9
|
||||
- name: ubuntu-1804-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:ubuntu-18.04
|
||||
- name: centos-7-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:centos-7
|
||||
- name: fedora-29-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:fedora-29
|
||||
- name: opensuse-leap-15-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:opensuse-leap-15
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
## SALT `2018.3`
|
||||
- name: debian-9-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:debian-9
|
||||
- name: ubuntu-1604-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:ubuntu-16.04
|
||||
- name: centos-7-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:centos-7
|
||||
- name: fedora-29-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:fedora-29
|
||||
- name: opensuse-leap-42-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:opensuse-leap-42
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
## SALT `2017.7`
|
||||
- name: debian-8-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:debian-8
|
||||
- name: ubuntu-1604-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:ubuntu-16.04
|
||||
- name: centos-6-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:centos-6
|
||||
run_command: /sbin/init
|
||||
- name: fedora-28-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:fedora-28
|
||||
- name: opensuse-leap-42-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:opensuse-leap-42
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
provisioner:
|
||||
name: salt_solo
|
||||
log_level: info
|
||||
log_level: debug
|
||||
salt_install: none
|
||||
require_chef: false
|
||||
formula: bind
|
||||
|
@ -109,12 +18,252 @@ provisioner:
|
|||
- .kitchen
|
||||
- .git
|
||||
|
||||
platforms:
|
||||
## SALT `tiamat`
|
||||
- name: debian-11-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:debian-11
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-10-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:debian-10
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-9-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:debian-9
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2204-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:ubuntu-22.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2004-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:ubuntu-20.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-1804-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:ubuntu-18.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: centos-stream8-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:centos-stream8
|
||||
- name: centos-7-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:centos-7
|
||||
- name: amazonlinux-2-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:oraclelinux-7
|
||||
- name: almalinux-8-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:almalinux-8
|
||||
- name: rockylinux-8-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:rockylinux-8
|
||||
|
||||
## SALT `master`
|
||||
- name: debian-11-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:debian-11
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-10-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:debian-10
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-9-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:debian-9
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2204-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:ubuntu-22.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2004-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:ubuntu-20.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-1804-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:ubuntu-18.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: centos-stream8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:centos-stream8
|
||||
- name: centos-7-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:centos-7
|
||||
- name: fedora-36-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:fedora-36
|
||||
- name: fedora-35-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:fedora-35
|
||||
- name: opensuse-leap-153-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:opensuse-leap-15.3
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.3`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: opensuse-tmbl-latest-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:opensuse-tumbleweed-latest
|
||||
# Workaround to avoid intermittent failures on `opensuse-tumbleweed`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: amazonlinux-2-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:oraclelinux-7
|
||||
- name: arch-base-latest-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:arch-base-latest
|
||||
- name: gentoo-stage3-latest-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: gentoo-stage3-systemd-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:gentoo-stage3-systemd
|
||||
- name: almalinux-8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:almalinux-8
|
||||
- name: rockylinux-8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:rockylinux-8
|
||||
|
||||
## SALT `3004.1`
|
||||
- name: debian-11-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:debian-11
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-10-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:debian-10
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-9-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:debian-9
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2204-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:ubuntu-22.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2004-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:ubuntu-20.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-1804-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:ubuntu-18.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: centos-stream8-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:centos-stream8
|
||||
- name: centos-7-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:centos-7
|
||||
- name: fedora-36-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:fedora-36
|
||||
- name: fedora-35-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:fedora-35
|
||||
- name: amazonlinux-2-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:oraclelinux-7
|
||||
- name: arch-base-latest-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:arch-base-latest
|
||||
- name: gentoo-stage3-latest-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: gentoo-stage3-systemd-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:gentoo-stage3-systemd
|
||||
- name: almalinux-8-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:almalinux-8
|
||||
- name: rockylinux-8-3004-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.1-py3:rockylinux-8
|
||||
|
||||
## SALT `3004.0`
|
||||
- name: opensuse-leap-153-3004-0-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.0-py3:opensuse-leap-15.3
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.3`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: opensuse-tmbl-latest-3004-0-py3
|
||||
driver:
|
||||
image: saltimages/salt-3004.0-py3:opensuse-tumbleweed-latest
|
||||
# Workaround to avoid intermittent failures on `opensuse-tumbleweed`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
|
||||
## SALT `3003.4`
|
||||
- name: debian-10-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:debian-10
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: debian-9-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:debian-9
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-2004-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:ubuntu-20.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: ubuntu-1804-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:ubuntu-18.04
|
||||
run_command: /lib/systemd/systemd
|
||||
- name: centos-stream8-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:centos-stream8
|
||||
- name: centos-7-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:centos-7
|
||||
- name: amazonlinux-2-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:oraclelinux-7
|
||||
- name: almalinux-8-3003-4-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.4-py3:almalinux-8
|
||||
|
||||
verifier:
|
||||
# https://www.inspec.io/
|
||||
name: inspec
|
||||
sudo: true
|
||||
# cli, documentation, html, progress, json, json-min, json-rspec, junit
|
||||
reporter:
|
||||
# cli, documentation, html, progress, json, json-min, json-rspec, junit
|
||||
- cli
|
||||
|
||||
suites:
|
||||
|
@ -123,6 +272,7 @@ suites:
|
|||
state_top:
|
||||
base:
|
||||
'*':
|
||||
- bind._mapdata
|
||||
- bind
|
||||
- bind.config
|
||||
pillars:
|
||||
|
|
|
@ -1,9 +1,12 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
bind:
|
||||
configured_acls: # We have an internal ACL restricted to our
|
||||
internal: # private IP range.
|
||||
- 10.0.0.0/8 # In this case, an ACL for external isn't needed
|
||||
# as that view will be matched by 'any'.
|
||||
|
||||
|
||||
# Notice that there is no 'configured_zones' at this indentation level.
|
||||
# That is because when you are using views, the bind service forces all zones to be served via a view.
|
||||
#
|
||||
|
@ -11,7 +14,7 @@ bind:
|
|||
# also served via a view using a file include. If you have other zones being served outside of a view, bind will
|
||||
# fail to start and give you an error message indicating this. You will likely find these externally-defined zones
|
||||
# in /etc/named.conf and /etc/named.conf.local
|
||||
|
||||
|
||||
configured_views:
|
||||
external: # A view called 'external' to match anything except the 'internal' ACL.
|
||||
match_clients:
|
||||
|
@ -20,11 +23,11 @@ bind:
|
|||
mydomain.com: # Notice that this value matches on both views.
|
||||
type: master
|
||||
file: external.mydomain.com.txt # Specify the file to be used, which must match the file
|
||||
recursion: yes # name of the zone below under available_zones.
|
||||
# This filename also must match the corresponding zone name
|
||||
recursion: 'yes' # name of the zone below under available_zones.
|
||||
# This filename also must match the corresponding zone name
|
||||
# without the .txt extension (and be sure to use .txt as the extension).
|
||||
notify: False
|
||||
dnssec: False
|
||||
notify: false
|
||||
dnssec: false
|
||||
|
||||
internal: # The 'internal' view that is restricted to the 'internal' ACL.
|
||||
match_clients:
|
||||
|
@ -33,17 +36,17 @@ bind:
|
|||
mydomain.com: # Same as above - both views will serve the same zone.
|
||||
type: master
|
||||
file: internal.mydomain.com.txt # Different file - matches the internal zone below.
|
||||
# Again, this filename must match the corresponding zone name
|
||||
# Again, this filename must match the corresponding zone name
|
||||
# without the .txt extension (and be sure to use .txt as the extension).
|
||||
recursion: yes
|
||||
notify: False
|
||||
dnssec: False
|
||||
recursion: 'yes'
|
||||
notify: false
|
||||
dnssec: false
|
||||
|
||||
available_zones:
|
||||
external.mydomain.com: # Beginning of the 'external' zone definition.
|
||||
file: external.mydomain.com.txt # The file in which to save this zone's record set - matches the file
|
||||
# specified in the 'external' view.
|
||||
|
||||
|
||||
soa: # Declare the SOA RRs for the zone
|
||||
ns: ns1.external.mydomain.com # Required
|
||||
contact: hostmaster@mydomain.com # Required
|
||||
|
@ -67,11 +70,11 @@ bind:
|
|||
CNAME:
|
||||
login: portal.mydomain.com.
|
||||
dashboard: www.mydomain.com.
|
||||
|
||||
|
||||
internal.mydomain.com: # Beginning of the 'internal' zone definition.
|
||||
file: internal.mydomain.com.txt # The file in which to save this zone's record set - matches the file
|
||||
# specified in the 'internal' view.
|
||||
|
||||
|
||||
soa: # Declare the SOA RRs for the zone
|
||||
ns: ns1.mydomain.com # Required
|
||||
contact: hostmaster@mydomain.com # Required
|
||||
|
|
|
@ -23,7 +23,7 @@ bind:
|
|||
lookup:
|
||||
key_directory: '/etc/bind/keys' # Key directory (needed to use auto-dnssec)
|
||||
key_algorithm: RSASHA256 # Algorithm when using auto-dnssec
|
||||
key_algorithm_field: 008 # See http://www.bind9.net/dns-sec-algorithm-numbers
|
||||
key_algorithm_field: '008' # See http://www.bind9.net/dns-sec-algorithm-numbers
|
||||
key_size: 4096 # Key size
|
||||
|
||||
config:
|
||||
|
@ -173,6 +173,8 @@ bind:
|
|||
type: master # Yo don't have define zone again in available_zones.
|
||||
# This feature is backward compatibile and only available in debian
|
||||
notify: false # if type master you need specify notify true/false
|
||||
managed: true # Set this to false if you don't want Salt to manage this zone file
|
||||
# If this parameter is set to true or is not set at all, the zone will be managed through salt
|
||||
|
||||
sub2.domain.com:
|
||||
file: sub2.domain.com
|
||||
|
|
|
@ -7,16 +7,16 @@ sed -i -e "s_^\(version:\).*_\1 ${1}_" FORMULA
|
|||
|
||||
|
||||
###############################################################################
|
||||
# (B) Use `m2r` to convert automatically produced `.md` docs to `.rst`
|
||||
# (B) Use `m2r2` to convert automatically produced `.md` docs to `.rst`
|
||||
###############################################################################
|
||||
|
||||
# Install `m2r`
|
||||
sudo -H pip install m2r
|
||||
# Install `m2r2`
|
||||
pip3 install m2r2
|
||||
|
||||
# Copy and then convert the `.md` docs
|
||||
cp *.md docs/
|
||||
cd docs/
|
||||
m2r --overwrite *.md
|
||||
cp ./*.md docs/
|
||||
cd docs/ || exit
|
||||
m2r2 --overwrite ./*.md
|
||||
|
||||
# Change excess `H1` headings to `H2` in converted `CHANGELOG.rst`
|
||||
sed -i -e '/^=.*$/s/=/-/g' CHANGELOG.rst
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
module.exports = {
|
||||
branch: 'master',
|
||||
repositoryUrl: 'https://github.com/saltstack-formulas/bind-formula',
|
||||
plugins: [
|
||||
['@semantic-release/commit-analyzer', {
|
||||
preset: 'angular',
|
||||
|
@ -63,7 +64,7 @@ module.exports = {
|
|||
}
|
||||
|
||||
if (typeof commit.hash === `string`) {
|
||||
commit.hash = commit.hash.substring(0, 7)
|
||||
commit.shortHash = commit.hash.substring(0, 7)
|
||||
}
|
||||
|
||||
if (typeof commit.subject === `string`) {
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
# frozen_string_literal: true
|
||||
# Set defaults, use debian as base
|
||||
|
||||
conf_user = 'bind'
|
||||
|
@ -10,14 +11,14 @@ logs_mode = '0775'
|
|||
named_directory = '/var/cache/bind'
|
||||
zones_directory = '/var/cache/bind/zones'
|
||||
keys_directory = '/etc/bind/keys'
|
||||
log_directory = '/var/log/bind9'
|
||||
log_directory = '/var/log/named'
|
||||
keys_mode = '02755'
|
||||
conf_mode = '0644'
|
||||
config = '/etc/bind/named.conf'
|
||||
|
||||
# Override by OS
|
||||
case os[:name]
|
||||
when 'arch','redhat', 'centos', 'fedora'
|
||||
when 'arch', 'redhat', 'centos', 'fedora', 'amazon'
|
||||
conf_user = 'named'
|
||||
conf_group = 'named'
|
||||
keys_group = 'root'
|
||||
|
@ -28,8 +29,8 @@ when 'arch','redhat', 'centos', 'fedora'
|
|||
keys_mode = '0755'
|
||||
conf_mode = '0640'
|
||||
config = '/etc/named.conf'
|
||||
when 'suse', 'opensuse'
|
||||
conf_user = 'root'
|
||||
when 'suse', 'opensuse'
|
||||
conf_user = 'root'
|
||||
conf_group = 'named'
|
||||
logs_user = 'root'
|
||||
logs_group = 'root'
|
||||
|
@ -47,11 +48,11 @@ end
|
|||
# Override log directory by OS
|
||||
case os[:name]
|
||||
when 'arch', 'ubuntu'
|
||||
log_directory = '/var/log/named'
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
log_directory = '/var/named/data'
|
||||
log_directory = '/var/log/named'
|
||||
when 'redhat', 'centos', 'fedora', 'amazon'
|
||||
log_directory = '/var/named/data'
|
||||
when 'suse', 'opensuse'
|
||||
log_directory = '/var/log'
|
||||
log_directory = '/var/log'
|
||||
end
|
||||
|
||||
# Check main config dir
|
||||
|
@ -101,28 +102,28 @@ end
|
|||
# RHEL: Doesn't use .options and has rfc1912.zones
|
||||
# Debian: Uses .options
|
||||
case os[:name]
|
||||
when 'arch','redhat', 'centos', 'fedora'
|
||||
when 'arch', 'redhat', 'centos', 'fedora', 'amazon'
|
||||
control 'File ' + config do
|
||||
title 'should exist'
|
||||
title 'should exist'
|
||||
describe file(config) do
|
||||
its('owner') { should eq conf_user }
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp conf_mode }
|
||||
its('content') { should match /^include\ "\/etc\/named\.rfc1912\.zones";/ }
|
||||
its('content') { should match /^include\ "\/etc\/named\.conf\.local";/ }
|
||||
end
|
||||
its('content') { should match %r{^include\ "/etc/named\.rfc1912\.zones";} }
|
||||
its('content') { should match %r{^include\ "/etc/named\.conf\.local";} }
|
||||
end
|
||||
end
|
||||
when 'ubuntu', 'debian'
|
||||
control 'File ' + config do
|
||||
title 'should exist'
|
||||
title 'should exist'
|
||||
describe file(config) do
|
||||
its('owner') { should eq conf_user }
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp conf_mode }
|
||||
its('content') { should match /^include\ "\/etc\/bind\/named\.conf\.local";/ }
|
||||
its('content') { should match /^include\ "\/etc\/bind\/named\.conf\.options";/ }
|
||||
end
|
||||
its('content') { should match %r{^include\ "/etc/bind/named\.conf\.local";} }
|
||||
its('content') { should match %r{^include\ "/etc/bind/named\.conf\.options";} }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# If debian check the .options file
|
||||
|
@ -168,6 +169,6 @@ control 'File ' + config + '.local' do
|
|||
# Match acl1
|
||||
its('content') { should match /acl\ client1\ \{\n\ \ 127\.0\.0\.0\/8;\n\ \ 10\.20\.0\.0\/16;\n\};/ }
|
||||
# Match acl2
|
||||
its('content') { should match /^acl\ client2\ \{\n\ \ 10\.30\.0\.0\/8;\n\};/ }
|
||||
its('content') { should match /acl\ client2\ \{\n\ \ 10\.0\.0\.0\/8;\n\ \ 10\.30\.0\.0\/16;\n\};/ }
|
||||
end
|
||||
end
|
|
@ -1,20 +1,21 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
case os[:name]
|
||||
when 'arch'
|
||||
os_packages = %w(
|
||||
os_packages = %w[
|
||||
bind
|
||||
bind-tools
|
||||
dnssec-tools
|
||||
)
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
os_packages = %w(bind)
|
||||
]
|
||||
when 'redhat', 'centos', 'fedora', 'amazon'
|
||||
os_packages = %w[bind]
|
||||
when 'suse', 'opensuse'
|
||||
os_packages = %w(bind)
|
||||
os_packages = %w[bind]
|
||||
when 'debian', 'ubuntu'
|
||||
os_packages = %w(
|
||||
os_packages = %w[
|
||||
bind9
|
||||
bind9utils
|
||||
)
|
||||
]
|
||||
end
|
||||
|
||||
control 'Bind9 packages' do
|
||||
|
@ -26,4 +27,3 @@ control 'Bind9 packages' do
|
|||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
case os[:name]
|
||||
when 'arch','redhat', 'centos', 'fedora'
|
||||
when 'arch', 'redhat', 'centos', 'fedora', 'amazon'
|
||||
service = 'named'
|
||||
when 'suse', 'opensuse'
|
||||
service = 'named'
|
||||
|
@ -12,7 +13,7 @@ control 'Bind9 service' do
|
|||
title 'should be running'
|
||||
|
||||
describe service(service) do
|
||||
# it { should be_enabled }
|
||||
# it { should be_enabled }
|
||||
it { should be_running }
|
||||
end
|
||||
end
|
168
test/integration/default/controls/zones_spec.rb
Normal file
168
test/integration/default/controls/zones_spec.rb
Normal file
|
@ -0,0 +1,168 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
# Set defaults, use debian as base
|
||||
|
||||
conf_user = 'bind'
|
||||
conf_group = 'bind'
|
||||
keys_user = 'root'
|
||||
keys_group = conf_group
|
||||
logs_user = 'root'
|
||||
logs_group = conf_group
|
||||
named_directory = '/var/cache/bind'
|
||||
zones_directory = '/var/cache/bind/zones'
|
||||
keys_directory = '/etc/bind/keys'
|
||||
log_directory = '/var/log/bind9'
|
||||
keys_mode = '02755'
|
||||
conf_mode = '0644'
|
||||
config = '/etc/bind/named.conf'
|
||||
|
||||
# Override by OS
|
||||
case os[:name]
|
||||
when 'arch', 'redhat', 'centos', 'fedora', 'amazon'
|
||||
conf_user = 'named'
|
||||
conf_group = 'named'
|
||||
keys_group = 'root'
|
||||
logs_group = conf_group
|
||||
named_directory = '/var/named'
|
||||
zones_directory = named_directory
|
||||
keys_directory = '/etc/named.keys'
|
||||
keys_mode = '0755'
|
||||
conf_mode = '0640'
|
||||
config = '/etc/named.conf'
|
||||
when 'suse', 'opensuse'
|
||||
zones_directory = nil # not implemented
|
||||
end
|
||||
|
||||
# Override log directory by OS
|
||||
case os[:name]
|
||||
when 'arch', 'ubuntu'
|
||||
log_directory = '/var/log/named'
|
||||
when 'redhat', 'centos', 'fedora', 'amazon'
|
||||
log_directory = '/var/named/data'
|
||||
end
|
||||
|
||||
if zones_directory
|
||||
|
||||
# Test example.com zonefile
|
||||
control 'File ' + zones_directory + '/example.com' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.com') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Multi line regex to match the various zones
|
||||
# If you're here to update the pillar/tests I would highly reccommend
|
||||
# using an online miltiline regex editor to do this:
|
||||
# https://www.regextester.com/
|
||||
# the #{foo} is a ruby string expansion so we can use the variables
|
||||
# defined above
|
||||
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.com\ hostmaster.example.com\ \(\n 2018073100\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match NS
|
||||
its('content') { should match '@ NS ns1' }
|
||||
# Match A
|
||||
its('content') { should match 'ns1 A 203.0.113.1' }
|
||||
its('content') { should match 'foo A 203.0.113.2' }
|
||||
its('content') { should match 'bar A 203.0.113.3' }
|
||||
# Match CNAME
|
||||
its('content') { should match 'ftp CNAME foo.example.com.' }
|
||||
its('content') { should match 'www CNAME bar.example.com.' }
|
||||
its('content') { should match 'mail CNAME mx1.example.com.' }
|
||||
its('content') { should match 'smtp CNAME mx1.example.com.' }
|
||||
# Match TXT
|
||||
its('content') { should match '@ TXT "some_value"' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test example.net zonefile
|
||||
control 'File ' + zones_directory + '/example.net' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.net') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.net\ hostmaster.example.net\ \(\n\ \ \ \ [0-9]{10}\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 300\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
# Match Include
|
||||
its('content') { should match %r{^\$INCLUDE\ #{zones_directory}/example\.net\.include$} }
|
||||
end
|
||||
end
|
||||
|
||||
# Test example.net.include zonefile
|
||||
control 'File ' + zones_directory + '/example.net.include' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.net.include') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match NS
|
||||
its('content') { should match '@ NS ns1' }
|
||||
# Match A
|
||||
its('content') { should match 'ns1 A 198.51.100.1' }
|
||||
its('content') { should match 'foo A 198.51.100.2' }
|
||||
its('content') { should match 'bar A 198.51.100.3' }
|
||||
its('content') { should match 'baz A 198.51.100.4' }
|
||||
its('content') { should match 'mx1 A 198.51.100.5' }
|
||||
its('content') { should match 'mx1 A 198.51.100.6' }
|
||||
its('content') { should match 'mx1 A 198.51.100.7' }
|
||||
# Match CNAME
|
||||
its('content') { should match 'mail CNAME mx1.example.net.' }
|
||||
its('content') { should match 'smtp CNAME mx1.example.net.' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 113.0.203.in-addr.arpa zonefile
|
||||
control 'File ' + zones_directory + '/113.0.203.in-addr.arpa' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/113.0.203.in-addr.arpa') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.com\ hostmaster.example.com\ \(\n\ \ \ \ 2018073100\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match Include
|
||||
its('content') { should match '1.113.0.203.in-addr.arpa PTR ns1.example.com.' }
|
||||
its('content') { should match '2.113.0.203.in-addr.arpa PTR foo.example.com.' }
|
||||
its('content') { should match '3.113.0.203.in-addr.arpa PTR bar.example.com.' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 100.51.198.in-addr.arpa zonefile
|
||||
control 'File ' + zones_directory + '/100.51.198.in-addr.arpa' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/100.51.198.in-addr.arpa') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.net\ hostmaster.example.net\ \(\n\ \ \ \ [0-9]{10}\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
# Match Include
|
||||
its('content') { should match %r{^\$INCLUDE\ #{zones_directory}/100\.51\.198\.in-addr\.arpa\.include$} }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 100.51.198.in-addr.arpa.include zonefile
|
||||
control 'File ' + zones_directory + '/100.51.198.in-addr.arpa.include' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/100.51.198.in-addr.arpa.include') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match PTR
|
||||
its('content') { should match '1.100.51.198.in-addr.arpa. PTR ns1.example.net.' }
|
||||
its('content') { should match '2.100.51.198.in-addr.arpa. PTR foo.example.net.' }
|
||||
its('content') { should match '3.100.51.198.in-addr.arpa. PTR bar.example.net.' }
|
||||
its('content') { should match '4.100.51.198.in-addr.arpa. PTR baz.example.net.' }
|
||||
its('content') { should match '5.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
its('content') { should match '6.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
its('content') { should match '7.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
end
|
||||
end
|
||||
|
||||
end
|
|
@ -6,6 +6,9 @@ title: bind formula
|
|||
maintainer: SaltStack Formulas
|
||||
license: Apache-2.0
|
||||
summary: Verify that the bind formula is setup and configured correctly
|
||||
depends:
|
||||
- name: share
|
||||
path: test/integration/share
|
||||
supports:
|
||||
- platform-name: debian
|
||||
- platform-name: ubuntu
|
||||
|
@ -14,4 +17,12 @@ supports:
|
|||
- platform-name: opensuse
|
||||
- platform-name: suse
|
||||
- platform-name: freebsd
|
||||
- platform-name: openbsd
|
||||
- platform-name: amazon
|
||||
- platform-name: oracle
|
||||
- platform-name: arch
|
||||
- platform-name: gentoo
|
||||
- platform-name: almalinux
|
||||
- platform-name: rocky
|
||||
- platform-name: mac_os_x
|
||||
- platform: windows
|
||||
|
|
|
@ -1,167 +0,0 @@
|
|||
# Set defaults, use debian as base
|
||||
|
||||
conf_user = 'bind'
|
||||
conf_group = 'bind'
|
||||
keys_user = 'root'
|
||||
keys_group = conf_group
|
||||
logs_user = 'root'
|
||||
logs_group = conf_group
|
||||
named_directory = '/var/cache/bind'
|
||||
zones_directory = '/var/cache/bind/zones'
|
||||
keys_directory = '/etc/bind/keys'
|
||||
log_directory = '/var/log/bind9'
|
||||
keys_mode = '02755'
|
||||
conf_mode = '0644'
|
||||
config = '/etc/bind/named.conf'
|
||||
|
||||
# Override by OS
|
||||
case os[:name]
|
||||
when 'arch','redhat', 'centos', 'fedora'
|
||||
conf_user = 'named'
|
||||
conf_group = 'named'
|
||||
keys_group = 'root'
|
||||
logs_group = conf_group
|
||||
named_directory = '/var/named'
|
||||
zones_directory = named_directory
|
||||
keys_directory = '/etc/named.keys'
|
||||
keys_mode = '0755'
|
||||
conf_mode = '0640'
|
||||
config = '/etc/named.conf'
|
||||
when 'suse', 'opensuse'
|
||||
zones_directory = nil # not implemented
|
||||
end
|
||||
|
||||
# Override log directory by OS
|
||||
case os[:name]
|
||||
when 'arch', 'ubuntu'
|
||||
log_directory = '/var/log/named'
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
log_directory = '/var/named/data'
|
||||
end
|
||||
|
||||
if zones_directory
|
||||
|
||||
# Test example.com zonefile
|
||||
control 'File ' + zones_directory + '/example.com' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.com') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Multi line regex to match the various zones
|
||||
# If you're here to update the pillar/tests I would highly reccommend
|
||||
# using an online miltiline regex editor to do this:
|
||||
# https://www.regextester.com/
|
||||
# the #{foo} is a ruby string expansion so we can use the variables
|
||||
# defined above
|
||||
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.com\ hostmaster.example.com\ \(\n 2018073100\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match NS
|
||||
its('content') { should match '@ NS ns1' }
|
||||
# Match A
|
||||
its('content') { should match 'ns1 A 203.0.113.1' }
|
||||
its('content') { should match 'foo A 203.0.113.2' }
|
||||
its('content') { should match 'bar A 203.0.113.3' }
|
||||
# Match CNAME
|
||||
its('content') { should match 'ftp CNAME foo.example.com.' }
|
||||
its('content') { should match 'www CNAME bar.example.com.' }
|
||||
its('content') { should match 'mail CNAME mx1.example.com.' }
|
||||
its('content') { should match 'smtp CNAME mx1.example.com.' }
|
||||
# Match TXT
|
||||
its('content') { should match '@ TXT "some_value"' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test example.net zonefile
|
||||
control 'File ' + zones_directory + '/example.net' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.net') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.net\ hostmaster.example.net\ \(\n\ \ \ \ [0-9]{10}\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 300\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
# Match Include
|
||||
its('content') { should match /^\$INCLUDE\ #{zones_directory}\/example\.net\.include$/ }
|
||||
end
|
||||
end
|
||||
|
||||
# Test example.net.include zonefile
|
||||
control 'File ' + zones_directory + '/example.net.include' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/example.net.include') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match NS
|
||||
its('content') { should match '@ NS ns1' }
|
||||
# Match A
|
||||
its('content') { should match 'ns1 A 198.51.100.1' }
|
||||
its('content') { should match 'foo A 198.51.100.2' }
|
||||
its('content') { should match 'bar A 198.51.100.3' }
|
||||
its('content') { should match 'baz A 198.51.100.4' }
|
||||
its('content') { should match 'mx1 A 198.51.100.5' }
|
||||
its('content') { should match 'mx1 A 198.51.100.6' }
|
||||
its('content') { should match 'mx1 A 198.51.100.7' }
|
||||
# Match CNAME
|
||||
its('content') { should match 'mail CNAME mx1.example.net.' }
|
||||
its('content') { should match 'smtp CNAME mx1.example.net.' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 113.0.203.in-addr.arpa zonefile
|
||||
control 'File ' + zones_directory + '/113.0.203.in-addr.arpa' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/113.0.203.in-addr.arpa') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.com\ hostmaster.example.com\ \(\n\ \ \ \ 2018073100\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
|
||||
# Just match string for these as it's much easier to read
|
||||
# Match Include
|
||||
its('content') { should match '1.113.0.203.in-addr.arpa PTR ns1.example.com.' }
|
||||
its('content') { should match '2.113.0.203.in-addr.arpa PTR foo.example.com.' }
|
||||
its('content') { should match '3.113.0.203.in-addr.arpa PTR bar.example.com.' }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 100.51.198.in-addr.arpa zonefile
|
||||
control 'File ' + zones_directory + '/100.51.198.in-addr.arpa' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/100.51.198.in-addr.arpa') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match SOA
|
||||
its('content') { should match /^@\ IN\ SOA\ ns1.example.net\ hostmaster.example.net\ \(\n\ \ \ \ [0-9]{10}\ ;\ serial\n\ \ \ \ 12h\ ;\ refresh\n\ \ \ \ 600\ ;\ retry\n\ \ \ \ 2w\ ;\ expiry\n\ \ \ \ 1m\ ;\ nxdomain\ ttl\n\);/ }
|
||||
# Match Include
|
||||
its('content') { should match /^\$INCLUDE\ #{zones_directory}\/100\.51\.198\.in-addr\.arpa\.include$/ }
|
||||
end
|
||||
end
|
||||
|
||||
# Test 100.51.198.in-addr.arpa.include zonefile
|
||||
control 'File ' + zones_directory + '/100.51.198.in-addr.arpa.include' do
|
||||
title 'should exist'
|
||||
describe file(zones_directory + '/100.51.198.in-addr.arpa.include') do
|
||||
its('owner') { should eq conf_user }
|
||||
its('group') { should eq conf_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
# Match PTR
|
||||
its('content') { should match '1.100.51.198.in-addr.arpa. PTR ns1.example.net.' }
|
||||
its('content') { should match '2.100.51.198.in-addr.arpa. PTR foo.example.net.' }
|
||||
its('content') { should match '3.100.51.198.in-addr.arpa. PTR bar.example.net.' }
|
||||
its('content') { should match '4.100.51.198.in-addr.arpa. PTR baz.example.net.' }
|
||||
its('content') { should match '5.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
its('content') { should match '6.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
its('content') { should match '7.100.51.198.in-addr.arpa. PTR mx1.example.net.' }
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
22
test/integration/share/README.md
Normal file
22
test/integration/share/README.md
Normal file
|
@ -0,0 +1,22 @@
|
|||
# InSpec Profile: `share`
|
||||
|
||||
This shows the implementation of the `share` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md).
|
||||
|
||||
Its goal is to share the libraries between all profiles.
|
||||
|
||||
## Libraries
|
||||
|
||||
### `system`
|
||||
|
||||
The `system` library provides easy access to system dependent information:
|
||||
|
||||
- `system.platform`: based on `inspec.platform`, modify to values that are more consistent from a SaltStack perspective
|
||||
- `system.platform[:family]` provide a family name for Arch and Gentoo
|
||||
- `system.platform[:name]` append `linux` to both `amazon` and `oracle`; ensure Windows platforms are resolved as simply `windows`
|
||||
- `system.platform[:release]` tweak Arch, Amazon Linux, Gentoo, openSUSE and Windows:
|
||||
- `Arch` is always `base-latest`
|
||||
- `Amazon Linux` release `2018` is resolved as `1`
|
||||
- `Gentoo` release is trimmed to its major version number and then the init system is appended (i.e. `sysv` or `sysd`)
|
||||
- `openSUSE` is resolved as `tumbleweed` if the `platform[:release]` is in date format
|
||||
- `Windows` uses the widely-used release number (e.g. `8.1` or `2019-server`) in place of the actual system release version
|
||||
- `system.platform[:finger]` is the concatenation of the name and the major release number (except for Ubuntu, which gives `ubuntu-20.04` for example)
|
25
test/integration/share/inspec.yml
Normal file
25
test/integration/share/inspec.yml
Normal file
|
@ -0,0 +1,25 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
name: share
|
||||
title: InSpec shared resources
|
||||
maintainer: SaltStack Formulas
|
||||
license: Apache-2.0
|
||||
summary: shared resources
|
||||
supports:
|
||||
- platform-name: debian
|
||||
- platform-name: ubuntu
|
||||
- platform-name: centos
|
||||
- platform-name: fedora
|
||||
- platform-name: opensuse
|
||||
- platform-name: suse
|
||||
- platform-name: freebsd
|
||||
- platform-name: openbsd
|
||||
- platform-name: amazon
|
||||
- platform-name: oracle
|
||||
- platform-name: arch
|
||||
- platform-name: gentoo
|
||||
- platform-name: almalinux
|
||||
- platform-name: rocky
|
||||
- platform-name: mac_os_x
|
||||
- platform: windows
|
138
test/integration/share/libraries/system.rb
Normal file
138
test/integration/share/libraries/system.rb
Normal file
|
@ -0,0 +1,138 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
# system.rb -- InSpec resources for system values
|
||||
# Author: Daniel Dehennin <daniel.dehennin@ac-dijon.fr>
|
||||
# Copyright (C) 2020 Daniel Dehennin <daniel.dehennin@ac-dijon.fr>
|
||||
|
||||
# rubocop:disable Metrics/ClassLength
|
||||
class SystemResource < Inspec.resource(1)
|
||||
name 'system'
|
||||
|
||||
attr_reader :platform
|
||||
|
||||
def initialize
|
||||
super
|
||||
@platform = build_platform
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def build_platform
|
||||
{
|
||||
family: build_platform_family,
|
||||
name: build_platform_name,
|
||||
release: build_platform_release,
|
||||
finger: build_platform_finger,
|
||||
codename: build_platform_codename
|
||||
}
|
||||
end
|
||||
|
||||
def build_platform_family
|
||||
case inspec.platform[:name]
|
||||
when 'arch', 'gentoo'
|
||||
inspec.platform[:name]
|
||||
else
|
||||
inspec.platform[:family]
|
||||
end
|
||||
end
|
||||
|
||||
def build_platform_name
|
||||
case inspec.platform[:name]
|
||||
when 'amazon', 'oracle', 'rocky'
|
||||
"#{inspec.platform[:name]}linux"
|
||||
when /^windows_/
|
||||
inspec.platform[:family]
|
||||
else
|
||||
inspec.platform[:name]
|
||||
end
|
||||
end
|
||||
|
||||
# rubocop:disable Metrics/MethodLength,Metrics/AbcSize,Metrics/CyclomaticComplexity
|
||||
def build_platform_release
|
||||
case inspec.platform[:name]
|
||||
when 'amazon'
|
||||
# `2018` relase is named `1` in `kitchen.yml`
|
||||
inspec.platform[:release].gsub(/2018.*/, '1')
|
||||
when 'arch'
|
||||
'base-latest'
|
||||
when 'gentoo'
|
||||
"#{inspec.platform[:release].split('.')[0]}-#{derive_gentoo_init_system}"
|
||||
when 'mac_os_x'
|
||||
inspec.command('sw_vers -productVersion').stdout.to_s
|
||||
when 'opensuse'
|
||||
# rubocop:disable Style/NumericLiterals,Layout/LineLength
|
||||
inspec.platform[:release].to_i > 20210101 ? 'tumbleweed' : inspec.platform[:release]
|
||||
# rubocop:enable Style/NumericLiterals,Layout/LineLength
|
||||
when 'windows_8.1_pro'
|
||||
'8.1'
|
||||
when 'windows_server_2022_datacenter'
|
||||
'2022-server'
|
||||
when 'windows_server_2019_datacenter'
|
||||
'2019-server'
|
||||
when 'windows_server_2016_datacenter'
|
||||
'2016-server'
|
||||
else
|
||||
inspec.platform[:release]
|
||||
end
|
||||
end
|
||||
# rubocop:enable Metrics/MethodLength,Metrics/AbcSize,Metrics/CyclomaticComplexity
|
||||
|
||||
def derive_gentoo_init_system
|
||||
inspec.command('systemctl').exist? ? 'sysd' : 'sysv'
|
||||
end
|
||||
|
||||
def build_platform_finger
|
||||
"#{build_platform_name}-#{build_finger_release}"
|
||||
end
|
||||
|
||||
def build_finger_release
|
||||
case inspec.platform[:name]
|
||||
when 'ubuntu'
|
||||
build_platform_release.split('.').slice(0, 2).join('.')
|
||||
else
|
||||
build_platform_release.split('.')[0]
|
||||
end
|
||||
end
|
||||
|
||||
# rubocop:disable Metrics/MethodLength,Metrics/CyclomaticComplexity
|
||||
def build_platform_codename
|
||||
case build_platform_finger
|
||||
when 'ubuntu-22.04'
|
||||
'jammy'
|
||||
when 'ubuntu-20.04'
|
||||
'focal'
|
||||
when 'ubuntu-18.04'
|
||||
'bionic'
|
||||
when 'debian-11'
|
||||
'bullseye'
|
||||
when 'debian-10'
|
||||
'buster'
|
||||
when 'debian-9'
|
||||
'stretch'
|
||||
when 'almalinux-8'
|
||||
"AlmaLinux #{build_platform_release} (Arctic Sphynx)"
|
||||
when 'amazonlinux-2'
|
||||
'Amazon Linux 2'
|
||||
when 'arch-base-latest'
|
||||
'Arch Linux'
|
||||
when 'centos-7'
|
||||
'CentOS Linux 7 (Core)'
|
||||
when 'centos-8'
|
||||
'CentOS Stream 8'
|
||||
when 'opensuse-tumbleweed'
|
||||
'openSUSE Tumbleweed'
|
||||
when 'opensuse-15'
|
||||
"openSUSE Leap #{build_platform_release}"
|
||||
when 'oraclelinux-8', 'oraclelinux-7'
|
||||
"Oracle Linux Server #{build_platform_release}"
|
||||
when 'gentoo-2-sysd', 'gentoo-2-sysv'
|
||||
'Gentoo/Linux'
|
||||
when 'rockylinux-8'
|
||||
"Rocky Linux #{build_platform_release} (Green Obsidian)"
|
||||
else
|
||||
''
|
||||
end
|
||||
end
|
||||
# rubocop:enable Metrics/MethodLength,Metrics/CyclomaticComplexity
|
||||
end
|
||||
# rubocop:enable Metrics/ClassLength
|
|
@ -7,7 +7,8 @@ bind:
|
|||
- 127.0.0.0/8
|
||||
- 10.20.0.0/16
|
||||
client2:
|
||||
- 10.30.0.0/8
|
||||
- 10.0.0.0/8
|
||||
- 10.30.0.0/16
|
||||
configured_zones:
|
||||
example.com:
|
||||
type: master
|
||||
|
|
Loading…
Add table
Reference in a new issue