pull in master
This commit is contained in:
commit
536992a8e4
41
.github/workflows/kitchen.vagrant.yml
vendored
Normal file
41
.github/workflows/kitchen.vagrant.yml
vendored
Normal file
@ -0,0 +1,41 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
name: 'Kitchen Vagrant (FreeBSD)'
|
||||
'on': ['push', 'pull_request']
|
||||
|
||||
env:
|
||||
KITCHEN_LOCAL_YAML: 'kitchen.vagrant.yml'
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: 'macos-10.15'
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
instance:
|
||||
- default-freebsd-130-master-py3
|
||||
# - freebsd-130-master-py3
|
||||
- default-freebsd-122-master-py3
|
||||
# - freebsd-122-master-py3
|
||||
- default-freebsd-114-master-py3
|
||||
# - freebsd-114-master-py3
|
||||
# - default-freebsd-130-3002-6-py3
|
||||
# - default-freebsd-122-3002-6-py3
|
||||
# - default-freebsd-114-3002-6-py3
|
||||
steps:
|
||||
- name: 'Check out code'
|
||||
uses: 'actions/checkout@v2'
|
||||
- name: 'Set up Bundler cache'
|
||||
uses: 'actions/cache@v1'
|
||||
with:
|
||||
path: 'vendor/bundle'
|
||||
key: "${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}"
|
||||
restore-keys: "${{ runner.os }}-gems-"
|
||||
- name: 'Run Bundler'
|
||||
run: |
|
||||
ruby --version
|
||||
bundle config path vendor/bundle
|
||||
bundle install --jobs 4 --retry 3
|
||||
- name: 'Run Test Kitchen'
|
||||
run: 'bundle exec kitchen verify ${{ matrix.instance }}'
|
11
.gitignore
vendored
11
.gitignore
vendored
@ -91,6 +91,9 @@ celerybeat-schedule
|
||||
venv/
|
||||
ENV/
|
||||
|
||||
# visual studio
|
||||
.vs/
|
||||
|
||||
# Spyder project settings
|
||||
.spyderproject
|
||||
.spyproject
|
||||
@ -120,3 +123,11 @@ docs/*.md
|
||||
Dockerfile.*_*
|
||||
ignore/
|
||||
tmp/
|
||||
|
||||
# `salt-formula` -- Vagrant Specific files
|
||||
.vagrant
|
||||
top.sls
|
||||
|
||||
# `suricata-formula` -- Platform binaries
|
||||
*.rpm
|
||||
*.deb
|
||||
|
150
.gitlab-ci.yml
150
.gitlab-ci.yml
@ -46,7 +46,7 @@ variables:
|
||||
DOCKER_DRIVER: 'overlay2'
|
||||
|
||||
###############################################################################
|
||||
# `lint` stage: `commitlint` & `pre-commit`
|
||||
# `lint` stage: `commitlint`, `pre-commit` & `rubocop` (latest, failure allowed)
|
||||
###############################################################################
|
||||
commitlint:
|
||||
stage: *stage_lint
|
||||
@ -123,35 +123,129 @@ rubocop:
|
||||
## 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`
|
||||
default-debian-10-master-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-tiamat-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-tiamat-py3: {extends: '.test_instance'}
|
||||
# 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-10-master-py3: {extends: '.test_instance'}
|
||||
# passenger-debian-10-master-py3: {extends: '.test_instance'}
|
||||
debian-10-master-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-master-py3: {extends: '.test_instance'}
|
||||
# passenger-debian-9-master-py3: {extends: '.test_instance'}
|
||||
debian-9-master-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-master-py3: {extends: '.test_instance'}
|
||||
# passenger-ubuntu-2004-master-py3: {extends: '.test_instance'}
|
||||
ubuntu-2004-master-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-master-py3: {extends: '.test_instance'}
|
||||
# passenger-ubuntu-1804-master-py3: {extends: '.test_instance'}
|
||||
ubuntu-1804-master-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-master-py3: {extends: '.test_instance'}
|
||||
# default-fedora-31-master-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-151-master-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-master-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-2019-2-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-2019-2-py3: {extends: '.test_instance'}
|
||||
default-ubuntu-1804-2019-2-py3: {extends: '.test_instance'}
|
||||
default-centos-8-2019-2-py3: {extends: '.test_instance'}
|
||||
# default-fedora-31-2019-2-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-151-2019-2-py3: {extends: '.test_instance'}
|
||||
# default-centos-7-2019-2-py2: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-2019-2-py3: {extends: '.test_instance'}
|
||||
default-arch-base-latest-2019-2-py2: {extends: '.test_instance'}
|
||||
default-fedora-30-2018-3-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-2018-3-py2: {extends: '.test_instance'}
|
||||
# default-ubuntu-1604-2018-3-py2: {extends: '.test_instance'}
|
||||
# default-centos-7-2018-3-py2: {extends: '.test_instance'}
|
||||
default-opensuse-leap-151-2018-3-py2: {extends: '.test_instance'}
|
||||
# default-amazonlinux-1-2018-3-py2: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-2018-3-py2: {extends: '.test_instance'}
|
||||
# default-debian-8-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-ubuntu-1604-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-centos-6-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-fedora-30-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-151-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-amazonlinux-1-2017-7-py2: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-2017-7-py2: {extends: '.test_instance'}
|
||||
# passenger-centos-8-master-py3: {extends: '.test_instance'}
|
||||
centos-8-master-py3: {extends: '.test_instance'}
|
||||
default-centos-7-master-py3: {extends: '.test_instance'}
|
||||
# passenger-centos-7-master-py3: {extends: '.test_instance'}
|
||||
# centos-7-master-py3: {extends: '.test_instance'}
|
||||
default-fedora-34-master-py3: {extends: '.test_instance'}
|
||||
# fedora-34-master-py3: {extends: '.test_instance'}
|
||||
default-fedora-33-master-py3: {extends: '.test_instance'}
|
||||
# fedora-33-master-py3: {extends: '.test_instance'}
|
||||
default-opensuse-leap-153-master-py3: {extends: '.test_instance'}
|
||||
# opensuse-leap-153-master-py3: {extends: '.test_instance'}
|
||||
default-opensuse-leap-152-master-py3: {extends: '.test_instance'}
|
||||
# opensuse-leap-152-master-py3: {extends: '.test_instance'}
|
||||
default-opensuse-tmbl-latest-master-py3: {extends: '.test_instance'}
|
||||
# opensuse-tmbl-latest-master-py3: {extends: '.test_instance'}
|
||||
default-amazonlinux-2-master-py3: {extends: '.test_instance'}
|
||||
# amazonlinux-2-master-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-master-py3: {extends: '.test_instance'}
|
||||
# passenger-oraclelinux-8-master-py3: {extends: '.test_instance'}
|
||||
oraclelinux-8-master-py3: {extends: '.test_instance'}
|
||||
default-oraclelinux-7-master-py3: {extends: '.test_instance'}
|
||||
# oraclelinux-7-master-py3: {extends: '.test_instance'}
|
||||
default-arch-base-latest-master-py3: {extends: '.test_instance'}
|
||||
# arch-base-latest-master-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-master-py3: {extends: '.test_instance'}
|
||||
# gentoo-stage3-latest-master-py3: {extends: '.test_instance'}
|
||||
default-gentoo-stage3-systemd-master-py3: {extends: '.test_instance'}
|
||||
# gentoo-stage3-systemd-master-py3: {extends: '.test_instance'}
|
||||
# default-almalinux-8-master-py3: {extends: '.test_instance'}
|
||||
# passenger-almalinux-8-master-py3: {extends: '.test_instance'}
|
||||
almalinux-8-master-py3: {extends: '.test_instance'}
|
||||
# default-rockylinux-8-master-py3: {extends: '.test_instance'}
|
||||
# passenger-rockylinux-8-master-py3: {extends: '.test_instance'}
|
||||
rockylinux-8-master-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-centos-7-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-fedora-34-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-fedora-33-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-153-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-152-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-tmbl-latest-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-3003-1-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-centos-7-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-fedora-34-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-fedora-33-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-3002-6-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-153-3002-2-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-152-3002-2-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-tmbl-latest-3002-2-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-2004-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-centos-7-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-fedora-34-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-fedora-33-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-153-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-152-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-tmbl-latest-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-3001-7-py3: {extends: '.test_instance'}
|
||||
# default-debian-10-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-debian-9-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-centos-8-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-centos-7-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-153-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-opensuse-leap-152-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-amazonlinux-2-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-8-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-oraclelinux-7-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-latest-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-gentoo-stage3-systemd-3000-9-py3: {extends: '.test_instance'}
|
||||
# default-ubuntu-1804-3000-9-py2: {extends: '.test_instance'}
|
||||
# default-arch-base-latest-3000-9-py2: {extends: '.test_instance'}
|
||||
|
||||
###############################################################################
|
||||
# `release` stage: `semantic-release`
|
||||
|
@ -17,15 +17,22 @@ repos:
|
||||
stages: [manual]
|
||||
additional_dependencies: ['@commitlint/config-conventional@8.3.4']
|
||||
always_run: true
|
||||
- repo: https://github.com/jumanjihouse/pre-commit-hooks
|
||||
rev: 2.1.3
|
||||
- repo: https://github.com/rubocop-hq/rubocop
|
||||
rev: v1.9.1
|
||||
hooks:
|
||||
- id: rubocop
|
||||
name: Check Ruby files with rubocop
|
||||
args: [--debug]
|
||||
always_run: true
|
||||
pass_filenames: false
|
||||
- repo: https://github.com/shellcheck-py/shellcheck-py
|
||||
rev: v0.7.1.1
|
||||
hooks:
|
||||
- id: shellcheck
|
||||
name: Check shell scripts with shellcheck
|
||||
files: ^.*\.(sh|bash|ksh)$
|
||||
types: []
|
||||
args: []
|
||||
- repo: https://github.com/adrienverge/yamllint.git
|
||||
- repo: https://github.com/adrienverge/yamllint
|
||||
rev: v1.23.0
|
||||
hooks:
|
||||
- id: yamllint
|
||||
@ -45,4 +52,14 @@ repos:
|
||||
- id: rstcheck
|
||||
name: Check reST files using rstcheck
|
||||
exclude: 'docs/CHANGELOG.rst'
|
||||
args: [--report=warning]
|
||||
- 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]
|
||||
|
@ -1,3 +1,4 @@
|
||||
[rstcheck]
|
||||
report=error
|
||||
report=info
|
||||
ignore_language=rst
|
||||
ignore_messages=(Duplicate (ex|im)plicit target.*|Hyperlink target ".*" is not referenced\.$)
|
||||
|
@ -7,10 +7,13 @@ Layout/LineLength:
|
||||
# Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`)
|
||||
Max: 88
|
||||
Metrics/BlockLength:
|
||||
ExcludedMethods:
|
||||
IgnoredMethods:
|
||||
- control
|
||||
- describe
|
||||
# Increase from default of `25`
|
||||
Max: 30
|
||||
Security/YAMLLoad:
|
||||
Exclude:
|
||||
- test/integration/**/_mapdata.rb
|
||||
|
||||
# Any offenses that should be fixed, e.g. collected via. `rubocop --auto-gen-config`
|
||||
|
169
.travis.yml
169
.travis.yml
@ -36,17 +36,14 @@ stages:
|
||||
# - name: 'release'
|
||||
# if: 'branch = master AND type != pull_request'
|
||||
jobs:
|
||||
allow_failures:
|
||||
- env: Lint_rubocop
|
||||
fast_finish: true
|
||||
include:
|
||||
## Define the test stage that runs the linters (and testing matrix, if applicable)
|
||||
|
||||
# Run all of the linters in a single job (except `rubocop`)
|
||||
# Run all of the linters in a single job
|
||||
- language: 'node_js'
|
||||
node_js: 'lts/*'
|
||||
env: 'Lint'
|
||||
name: 'Lint: salt-lint, yamllint, shellcheck & commitlint'
|
||||
name: 'Lint: salt-lint, yamllint, rubocop, shellcheck & commitlint'
|
||||
before_install: 'skip'
|
||||
script:
|
||||
# Install and run `salt-lint`
|
||||
@ -57,6 +54,9 @@ jobs:
|
||||
# Need at least `v1.17.0` for the `yaml-files` setting
|
||||
- pip install --user yamllint>=1.17.0
|
||||
- yamllint -s .
|
||||
# Install and run `rubocop`
|
||||
- gem install rubocop
|
||||
- rubocop -d
|
||||
# Run `shellcheck` (already pre-installed in Travis)
|
||||
- shellcheck --version
|
||||
- git ls-files -- '*.sh' '*.bash' '*.ksh'
|
||||
@ -65,17 +65,6 @@ jobs:
|
||||
- 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 `rubocop`
|
||||
- gem install rubocop
|
||||
- rubocop -d
|
||||
|
||||
# Run `pre-commit` linters in a single job
|
||||
- language: 'python'
|
||||
@ -94,35 +83,129 @@ jobs:
|
||||
## 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-10-master-py3
|
||||
# - env: INSTANCE=default-debian-10-tiamat-py3
|
||||
# - env: INSTANCE=default-debian-9-tiamat-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-tiamat-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-tiamat-py3
|
||||
# - env: INSTANCE=default-centos-8-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-10-master-py3
|
||||
# - env: INSTANCE=passenger-debian-10-master-py3
|
||||
- env: INSTANCE=debian-10-master-py3
|
||||
# - env: INSTANCE=default-debian-9-master-py3
|
||||
# - env: INSTANCE=passenger-debian-9-master-py3
|
||||
- env: INSTANCE=debian-9-master-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-master-py3
|
||||
# - env: INSTANCE=passenger-ubuntu-2004-master-py3
|
||||
- env: INSTANCE=ubuntu-2004-master-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-master-py3
|
||||
# - env: INSTANCE=passenger-ubuntu-1804-master-py3
|
||||
- env: INSTANCE=ubuntu-1804-master-py3
|
||||
# - env: INSTANCE=default-centos-8-master-py3
|
||||
# - env: INSTANCE=default-fedora-31-master-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-151-master-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-master-py3
|
||||
# - env: INSTANCE=default-debian-10-2019-2-py3
|
||||
# - env: INSTANCE=default-debian-9-2019-2-py3
|
||||
- env: INSTANCE=default-ubuntu-1804-2019-2-py3
|
||||
- env: INSTANCE=default-centos-8-2019-2-py3
|
||||
# - env: INSTANCE=default-fedora-31-2019-2-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-151-2019-2-py3
|
||||
# - env: INSTANCE=default-centos-7-2019-2-py2
|
||||
# - env: INSTANCE=default-amazonlinux-2-2019-2-py3
|
||||
- env: INSTANCE=default-arch-base-latest-2019-2-py2
|
||||
- env: INSTANCE=default-fedora-30-2018-3-py3
|
||||
# - env: INSTANCE=default-debian-9-2018-3-py2
|
||||
# - env: INSTANCE=default-ubuntu-1604-2018-3-py2
|
||||
# - env: INSTANCE=default-centos-7-2018-3-py2
|
||||
- env: INSTANCE=default-opensuse-leap-151-2018-3-py2
|
||||
# - env: INSTANCE=default-amazonlinux-1-2018-3-py2
|
||||
# - env: INSTANCE=default-arch-base-latest-2018-3-py2
|
||||
# - env: INSTANCE=default-debian-8-2017-7-py2
|
||||
# - env: INSTANCE=default-ubuntu-1604-2017-7-py2
|
||||
# - env: INSTANCE=default-centos-6-2017-7-py2
|
||||
# - env: INSTANCE=default-fedora-30-2017-7-py2
|
||||
# - env: INSTANCE=default-opensuse-leap-151-2017-7-py2
|
||||
# - env: INSTANCE=default-amazonlinux-1-2017-7-py2
|
||||
# - env: INSTANCE=default-arch-base-latest-2017-7-py2
|
||||
# - env: INSTANCE=passenger-centos-8-master-py3
|
||||
- env: INSTANCE=centos-8-master-py3
|
||||
- env: INSTANCE=default-centos-7-master-py3
|
||||
# - env: INSTANCE=passenger-centos-7-master-py3
|
||||
# - env: INSTANCE=centos-7-master-py3
|
||||
- env: INSTANCE=default-fedora-34-master-py3
|
||||
# - env: INSTANCE=fedora-34-master-py3
|
||||
- env: INSTANCE=default-fedora-33-master-py3
|
||||
# - env: INSTANCE=fedora-33-master-py3
|
||||
- env: INSTANCE=default-opensuse-leap-153-master-py3
|
||||
# - env: INSTANCE=opensuse-leap-153-master-py3
|
||||
- env: INSTANCE=default-opensuse-leap-152-master-py3
|
||||
# - env: INSTANCE=opensuse-leap-152-master-py3
|
||||
- env: INSTANCE=default-opensuse-tmbl-latest-master-py3
|
||||
# - env: INSTANCE=opensuse-tmbl-latest-master-py3
|
||||
- env: INSTANCE=default-amazonlinux-2-master-py3
|
||||
# - env: INSTANCE=amazonlinux-2-master-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-master-py3
|
||||
# - env: INSTANCE=passenger-oraclelinux-8-master-py3
|
||||
- env: INSTANCE=oraclelinux-8-master-py3
|
||||
- env: INSTANCE=default-oraclelinux-7-master-py3
|
||||
# - env: INSTANCE=oraclelinux-7-master-py3
|
||||
- env: INSTANCE=default-arch-base-latest-master-py3
|
||||
# - env: INSTANCE=arch-base-latest-master-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-master-py3
|
||||
# - env: INSTANCE=gentoo-stage3-latest-master-py3
|
||||
- env: INSTANCE=default-gentoo-stage3-systemd-master-py3
|
||||
# - env: INSTANCE=gentoo-stage3-systemd-master-py3
|
||||
# - env: INSTANCE=default-almalinux-8-master-py3
|
||||
# - env: INSTANCE=passenger-almalinux-8-master-py3
|
||||
- env: INSTANCE=almalinux-8-master-py3
|
||||
# - env: INSTANCE=default-rockylinux-8-master-py3
|
||||
# - env: INSTANCE=passenger-rockylinux-8-master-py3
|
||||
- env: INSTANCE=rockylinux-8-master-py3
|
||||
# - env: INSTANCE=default-debian-10-3003-1-py3
|
||||
# - env: INSTANCE=default-debian-9-3003-1-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-3003-1-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3003-1-py3
|
||||
# - env: INSTANCE=default-centos-8-3003-1-py3
|
||||
# - env: INSTANCE=default-centos-7-3003-1-py3
|
||||
# - env: INSTANCE=default-fedora-34-3003-1-py3
|
||||
# - env: INSTANCE=default-fedora-33-3003-1-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-153-3003-1-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-152-3003-1-py3
|
||||
# - env: INSTANCE=default-opensuse-tmbl-latest-3003-1-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3003-1-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3003-1-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3003-1-py3
|
||||
# - env: INSTANCE=default-arch-base-latest-3003-1-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-3003-1-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-3003-1-py3
|
||||
# - env: INSTANCE=default-debian-10-3002-6-py3
|
||||
# - env: INSTANCE=default-debian-9-3002-6-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-3002-6-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3002-6-py3
|
||||
# - env: INSTANCE=default-centos-8-3002-6-py3
|
||||
# - env: INSTANCE=default-centos-7-3002-6-py3
|
||||
# - env: INSTANCE=default-fedora-34-3002-6-py3
|
||||
# - env: INSTANCE=default-fedora-33-3002-6-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3002-6-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3002-6-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3002-6-py3
|
||||
# - env: INSTANCE=default-arch-base-latest-3002-6-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-3002-6-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-3002-6-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-153-3002-2-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-152-3002-2-py3
|
||||
# - env: INSTANCE=default-opensuse-tmbl-latest-3002-2-py3
|
||||
# - env: INSTANCE=default-debian-10-3001-7-py3
|
||||
# - env: INSTANCE=default-debian-9-3001-7-py3
|
||||
# - env: INSTANCE=default-ubuntu-2004-3001-7-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3001-7-py3
|
||||
# - env: INSTANCE=default-centos-8-3001-7-py3
|
||||
# - env: INSTANCE=default-centos-7-3001-7-py3
|
||||
# - env: INSTANCE=default-fedora-34-3001-7-py3
|
||||
# - env: INSTANCE=default-fedora-33-3001-7-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-153-3001-7-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-152-3001-7-py3
|
||||
# - env: INSTANCE=default-opensuse-tmbl-latest-3001-7-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3001-7-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3001-7-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3001-7-py3
|
||||
# - env: INSTANCE=default-arch-base-latest-3001-7-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-3001-7-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-3001-7-py3
|
||||
# - env: INSTANCE=default-debian-10-3000-9-py3
|
||||
# - env: INSTANCE=default-debian-9-3000-9-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3000-9-py3
|
||||
# - env: INSTANCE=default-centos-8-3000-9-py3
|
||||
# - env: INSTANCE=default-centos-7-3000-9-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-153-3000-9-py3
|
||||
# - env: INSTANCE=default-opensuse-leap-152-3000-9-py3
|
||||
# - env: INSTANCE=default-amazonlinux-2-3000-9-py3
|
||||
# - env: INSTANCE=default-oraclelinux-8-3000-9-py3
|
||||
# - env: INSTANCE=default-oraclelinux-7-3000-9-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-latest-3000-9-py3
|
||||
# - env: INSTANCE=default-gentoo-stage3-systemd-3000-9-py3
|
||||
# - env: INSTANCE=default-ubuntu-1804-3000-9-py2
|
||||
# - env: INSTANCE=default-arch-base-latest-3000-9-py2
|
||||
|
||||
## Define the release stage that runs `semantic-release`
|
||||
- stage: 'release'
|
||||
|
14
.yamllint
14
.yamllint
@ -2,17 +2,23 @@
|
||||
# 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
|
||||
# 2. Any SLS files under directory `test/`, which are actually state files
|
||||
# 3. Any YAML files under directory `.kitchen/`, introduced during local testing
|
||||
# 1. All YAML files under directory `.cache/`, introduced during the GitLab CI run
|
||||
# 2. All YAML files under directory `.git/`
|
||||
# 3. All YAML files under directory `node_modules/`, introduced during the Travis run
|
||||
# 4. Any SLS files under directory `test/`, which are actually state files
|
||||
# 5. Any YAML files under directory `.kitchen/`, introduced during local testing
|
||||
# 6. `kitchen.vagrant.yml`, which contains Embedded Ruby (ERB) template syntax
|
||||
ignore: |
|
||||
.cache/
|
||||
.git/
|
||||
node_modules/
|
||||
test/**/states/**/*.sls
|
||||
.kitchen/
|
||||
kitchen.vagrant.yml
|
||||
test/salt/passenger/pillar/nginx.sls
|
||||
|
||||
yaml-files:
|
||||
# Default settings
|
||||
|
149
AUTHORS.md
149
AUTHORS.md
@ -4,79 +4,82 @@ 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/10231489?v=4' width='36' height='36' alt='@myii'>|[@myii](https://github.com/myii)|82
|
||||
<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)|46
|
||||
<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)|27
|
||||
<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)|24
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/13322818?v=4' width='36' height='36' alt='@noelmcloughlin'>|[@noelmcloughlin](https://github.com/noelmcloughlin)|18
|
||||
<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)|17
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/4956475?v=4' width='36' height='36' alt='@ross-p'>|[@ross-p](https://github.com/ross-p)|13
|
||||
<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)|11
|
||||
<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)|10
|
||||
<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)|9
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/445200?v=4' width='36' height='36' alt='@arthurlogilab'>|[@arthurlogilab](https://github.com/arthurlogilab)|8
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1184479?v=4' width='36' height='36' alt='@cheuschober'>|[@cheuschober](https://github.com/cheuschober)|8
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/378158?v=4' width='36' height='36' alt='@dseira'>|[@dseira](https://github.com/dseira)|8
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/941928?v=4' width='36' height='36' alt='@amontalban'>|[@amontalban](https://github.com/amontalban)|7
|
||||
<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)|7
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/6354880?v=4' width='36' height='36' alt='@TaiSHiNet'>|[@TaiSHiNet](https://github.com/TaiSHiNet)|6
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/745513?v=4' width='36' height='36' alt='@EvaSDK'>|[@EvaSDK](https://github.com/EvaSDK)|6
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/3280630?v=4' width='36' height='36' alt='@cackovic'>|[@cackovic](https://github.com/cackovic)|5
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/529?v=4' width='36' height='36' alt='@auser'>|[@auser](https://github.com/auser)|5
|
||||
<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)|5
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1060507?v=4' width='36' height='36' alt='@ahmadsherif'>|[@ahmadsherif](https://github.com/ahmadsherif)|4
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/3433835?v=4' width='36' height='36' alt='@n-rodriguez'>|[@n-rodriguez](https://github.com/n-rodriguez)|4
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/37182?v=4' width='36' height='36' alt='@teepark'>|[@teepark](https://github.com/teepark)|4
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/4754654?v=4' width='36' height='36' alt='@alinefr'>|[@alinefr](https://github.com/alinefr)|3
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/5412167?v=4' width='36' height='36' alt='@devaos'>|[@devaos](https://github.com/devaos)|3
|
||||
<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)|3
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/328598?v=4' width='36' height='36' alt='@terminalmage'>|[@terminalmage](https://github.com/terminalmage)|3
|
||||
<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)|3
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/783794?v=4' width='36' height='36' alt='@morsik'>|[@morsik](https://github.com/morsik)|3
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/7060082?v=4' width='36' height='36' alt='@msciciel'>|[@msciciel](https://github.com/msciciel)|3
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/8029478?v=4' width='36' height='36' alt='@rfairburn'>|[@rfairburn](https://github.com/rfairburn)|3
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/50891?v=4' width='36' height='36' alt='@westurner'>|[@westurner](https://github.com/westurner)|3
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/813115?v=4' width='36' height='36' alt='@chris-sanders'>|[@chris-sanders](https://github.com/chris-sanders)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/4195158?v=4' width='36' height='36' alt='@dafyddj'>|[@dafyddj](https://github.com/dafyddj)|2
|
||||
<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)|2
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/51596?v=4' width='36' height='36' alt='@ghtyrant'>|[@ghtyrant](https://github.com/ghtyrant)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/56635?v=4' width='36' height='36' alt='@pprkut'>|[@pprkut](https://github.com/pprkut)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/85002?v=4' width='36' height='36' alt='@jstrunk'>|[@jstrunk](https://github.com/jstrunk)|2
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5306980?v=4' width='36' height='36' alt='@johnkeates'>|[@johnkeates](https://github.com/johnkeates)|2
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2200073?v=4' width='36' height='36' alt='@kmshultz'>|[@kmshultz](https://github.com/kmshultz)|2
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/11417?v=4' width='36' height='36' alt='@malept'>|[@malept](https://github.com/malept)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3279679?v=4' width='36' height='36' alt='@meganlkm'>|[@meganlkm](https://github.com/meganlkm)|2
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/84885?v=4' width='36' height='36' alt='@garrettw'>|[@garrettw](https://github.com/garrettw)|2
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/101513?v=4' width='36' height='36' alt='@ErisDS'>|[@ErisDS](https://github.com/ErisDS)|2
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/879922?v=4' width='36' height='36' alt='@myoung34'>|[@myoung34](https://github.com/myoung34)|2
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/46799934?v=4' width='36' height='36' alt='@sticky-note'>|[@sticky-note](https://github.com/sticky-note)|2
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1922124?v=4' width='36' height='36' alt='@bebosudo'>|[@bebosudo](https://github.com/bebosudo)|1
|
||||
<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)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/7460036?v=4' width='36' height='36' alt='@andrew-vant'>|[@andrew-vant](https://github.com/andrew-vant)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/2106845?v=4' width='36' height='36' alt='@bemosior'>|[@bemosior](https://github.com/bemosior)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/458548?v=4' width='36' height='36' alt='@SuperTux88'>|[@SuperTux88](https://github.com/SuperTux88)|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://avatars1.githubusercontent.com/u/1435085?v=4' width='36' height='36' alt='@blbradley'>|[@blbradley](https://github.com/blbradley)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2459661?v=4' width='36' height='36' alt='@CorwinTanner'>|[@CorwinTanner](https://github.com/CorwinTanner)|1
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1686586?v=4' width='36' height='36' alt='@fayetted'>|[@fayetted](https://github.com/fayetted)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/72727?v=4' width='36' height='36' alt='@czarneckid'>|[@czarneckid](https://github.com/czarneckid)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/983?v=4' width='36' height='36' alt='@statik'>|[@statik](https://github.com/statik)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/48329?v=4' width='36' height='36' alt='@ekristen'>|[@ekristen](https://github.com/ekristen)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/75496?v=4' width='36' height='36' alt='@jeduardo'>|[@jeduardo](https://github.com/jeduardo)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/668449?v=4' width='36' height='36' alt='@stromnet'>|[@stromnet](https://github.com/stromnet)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/744549?v=4' width='36' height='36' alt='@bsdlp'>|[@bsdlp](https://github.com/bsdlp)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5395035?v=4' width='36' height='36' alt='@MEschenbacher'>|[@MEschenbacher](https://github.com/MEschenbacher)|1
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/225115?v=4' width='36' height='36' alt='@renich'>|[@renich](https://github.com/renich)|1
|
||||
<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/62993?v=4' width='36' height='36' alt='@outime'>|[@outime](https://github.com/outime)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/991850?v=4' width='36' height='36' alt='@scub'>|[@scub](https://github.com/scub)|1
|
||||
<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)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/479088?v=4' width='36' height='36' alt='@blarghmatey'>|[@blarghmatey](https://github.com/blarghmatey)|1
|
||||
<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)|1
|
||||
<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/228723?v=4' width='36' height='36' alt='@abednarik'>|[@abednarik](https://github.com/abednarik)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/19428823?v=4' width='36' height='36' alt='@francesco-a'>|[@francesco-a](https://github.com/francesco-a)|1
|
||||
<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/1068764?v=4' width='36' height='36' alt='@oboyle'>|[@oboyle](https://github.com/oboyle)|1
|
||||
<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/542613?v=4' width='36' height='36' alt='@bersace'>|[@bersace](https://github.com/bersace)|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/1800660?v=4' width='36' height='36' alt='@aboe76'>|[@aboe76](https://github.com/aboe76)|46
|
||||
<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)|27
|
||||
<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)|24
|
||||
<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)|21
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/13322818?v=4' width='36' height='36' alt='@noelmcloughlin'>|[@noelmcloughlin](https://github.com/noelmcloughlin)|18
|
||||
<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)|17
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4956475?v=4' width='36' height='36' alt='@ross-p'>|[@ross-p](https://github.com/ross-p)|13
|
||||
<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)|11
|
||||
<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)|10
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/445200?v=4' width='36' height='36' alt='@arthurlogilab'>|[@arthurlogilab](https://github.com/arthurlogilab)|8
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1184479?v=4' width='36' height='36' alt='@cheuschober'>|[@cheuschober](https://github.com/cheuschober)|8
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/378158?v=4' width='36' height='36' alt='@dseira'>|[@dseira](https://github.com/dseira)|8
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/941928?v=4' width='36' height='36' alt='@amontalban'>|[@amontalban](https://github.com/amontalban)|7
|
||||
<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)|7
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6354880?v=4' width='36' height='36' alt='@TaiSHiNet'>|[@TaiSHiNet](https://github.com/TaiSHiNet)|6
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/745513?v=4' width='36' height='36' alt='@EvaSDK'>|[@EvaSDK](https://github.com/EvaSDK)|6
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3280630?v=4' width='36' height='36' alt='@cackovic'>|[@cackovic](https://github.com/cackovic)|5
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/529?v=4' width='36' height='36' alt='@auser'>|[@auser](https://github.com/auser)|5
|
||||
<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)|5
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1060507?v=4' width='36' height='36' alt='@ahmadsherif'>|[@ahmadsherif](https://github.com/ahmadsherif)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3433835?v=4' width='36' height='36' alt='@n-rodriguez'>|[@n-rodriguez](https://github.com/n-rodriguez)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/37182?v=4' width='36' height='36' alt='@teepark'>|[@teepark](https://github.com/teepark)|4
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4754654?v=4' width='36' height='36' alt='@alinefr'>|[@alinefr](https://github.com/alinefr)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5412167?v=4' width='36' height='36' alt='@devaos'>|[@devaos](https://github.com/devaos)|3
|
||||
<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)|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/328598?v=4' width='36' height='36' alt='@terminalmage'>|[@terminalmage](https://github.com/terminalmage)|3
|
||||
<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)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/783794?v=4' width='36' height='36' alt='@morsik'>|[@morsik](https://github.com/morsik)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7060082?v=4' width='36' height='36' alt='@msciciel'>|[@msciciel](https://github.com/msciciel)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/8029478?v=4' width='36' height='36' alt='@rfairburn'>|[@rfairburn](https://github.com/rfairburn)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/50891?v=4' width='36' height='36' alt='@westurner'>|[@westurner](https://github.com/westurner)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1773291?v=4' width='36' height='36' alt='@toanju'>|[@toanju](https://github.com/toanju)|3
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/813115?v=4' width='36' height='36' alt='@chris-sanders'>|[@chris-sanders](https://github.com/chris-sanders)|2
|
||||
<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)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/51596?v=4' width='36' height='36' alt='@ghtyrant'>|[@ghtyrant](https://github.com/ghtyrant)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/56635?v=4' width='36' height='36' alt='@pprkut'>|[@pprkut](https://github.com/pprkut)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/85002?v=4' width='36' height='36' alt='@jstrunk'>|[@jstrunk](https://github.com/jstrunk)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5306980?v=4' width='36' height='36' alt='@johnkeates'>|[@johnkeates](https://github.com/johnkeates)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2200073?v=4' width='36' height='36' alt='@kmshultz'>|[@kmshultz](https://github.com/kmshultz)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/11417?v=4' width='36' height='36' alt='@malept'>|[@malept](https://github.com/malept)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3279679?v=4' width='36' height='36' alt='@meganlkm'>|[@meganlkm](https://github.com/meganlkm)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/101513?v=4' width='36' height='36' alt='@ErisDS'>|[@ErisDS](https://github.com/ErisDS)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/879922?v=4' width='36' height='36' alt='@myoung34'>|[@myoung34](https://github.com/myoung34)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/46799934?v=4' width='36' height='36' alt='@sticky-note'>|[@sticky-note](https://github.com/sticky-note)|2
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1922124?v=4' width='36' height='36' alt='@bebosudo'>|[@bebosudo](https://github.com/bebosudo)|1
|
||||
<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)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7460036?v=4' width='36' height='36' alt='@andrew-vant'>|[@andrew-vant](https://github.com/andrew-vant)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2106845?v=4' width='36' height='36' alt='@bemosior'>|[@bemosior](https://github.com/bemosior)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/458548?v=4' width='36' height='36' alt='@SuperTux88'>|[@SuperTux88](https://github.com/SuperTux88)|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/1435085?v=4' width='36' height='36' alt='@blbradley'>|[@blbradley](https://github.com/blbradley)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2459661?v=4' width='36' height='36' alt='@CorwinTanner'>|[@CorwinTanner](https://github.com/CorwinTanner)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1686586?v=4' width='36' height='36' alt='@fayetted'>|[@fayetted](https://github.com/fayetted)|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/72727?v=4' width='36' height='36' alt='@czarneckid'>|[@czarneckid](https://github.com/czarneckid)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/983?v=4' width='36' height='36' alt='@statik'>|[@statik](https://github.com/statik)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/48329?v=4' width='36' height='36' alt='@ekristen'>|[@ekristen](https://github.com/ekristen)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/84885?v=4' width='36' height='36' alt='@garrettw'>|[@garrettw](https://github.com/garrettw)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/75496?v=4' width='36' height='36' alt='@jeduardo'>|[@jeduardo](https://github.com/jeduardo)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/668449?v=4' width='36' height='36' alt='@stromnet'>|[@stromnet](https://github.com/stromnet)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/744549?v=4' width='36' height='36' alt='@bsdlp'>|[@bsdlp](https://github.com/bsdlp)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/350294?v=4' width='36' height='36' alt='@anderbubble'>|[@anderbubble](https://github.com/anderbubble)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5395035?v=4' width='36' height='36' alt='@MEschenbacher'>|[@MEschenbacher](https://github.com/MEschenbacher)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/225115?v=4' width='36' height='36' alt='@renich'>|[@renich](https://github.com/renich)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/62993?v=4' width='36' height='36' alt='@outime'>|[@outime](https://github.com/outime)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/991850?v=4' width='36' height='36' alt='@scub'>|[@scub](https://github.com/scub)|1
|
||||
<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)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/479088?v=4' width='36' height='36' alt='@blarghmatey'>|[@blarghmatey](https://github.com/blarghmatey)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen5'>|[@babilen5](https://github.com/babilen5)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/228723?v=4' width='36' height='36' alt='@abednarik'>|[@abednarik](https://github.com/abednarik)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/19428823?v=4' width='36' height='36' alt='@francesco-a'>|[@francesco-a](https://github.com/francesco-a)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1068764?v=4' width='36' height='36' alt='@oboyle'>|[@oboyle](https://github.com/oboyle)|1
|
||||
<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/542613?v=4' width='36' height='36' alt='@bersace'>|[@bersace](https://github.com/bersace)|1
|
||||
|
||||
---
|
||||
|
||||
Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2021-01-04.
|
||||
Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2021-06-15.
|
||||
|
126
CHANGELOG.md
126
CHANGELOG.md
@ -1,5 +1,131 @@
|
||||
# Changelog
|
||||
|
||||
## [2.7.4](https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.3...v2.7.4) (2021-06-15)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **servers:** include main config file watch in extend ([00387e7](https://github.com/saltstack-formulas/nginx-formula/commit/00387e7cbd90ceb5496df5cf9bce8f7dae25b056))
|
||||
|
||||
## [2.7.3](https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.2...v2.7.3) (2021-06-14)
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* **snippets:** add tests for snippets includes ([1c83b6d](https://github.com/saltstack-formulas/nginx-formula/commit/1c83b6d5fa93079476ca9e8baa1ccd9d44e5237f)), closes [#275](https://github.com/saltstack-formulas/nginx-formula/issues/275) [#274](https://github.com/saltstack-formulas/nginx-formula/issues/274)
|
||||
|
||||
## [2.7.2](https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.1...v2.7.2) (2021-06-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **certificates:** ensure `openssl` installed before `cmd.run` ([0cd7c7b](https://github.com/saltstack-formulas/nginx-formula/commit/0cd7c7b20528ce9fbd4f8991a365415a3093546d)), closes [/gitlab.com/saltstack-formulas/nginx-formula/-/jobs/1345325819#L2830](https://github.com//gitlab.com/saltstack-formulas/nginx-formula/-/jobs/1345325819/issues/L2830)
|
||||
* **snippets:** ignore servers or snippets when undefined ([6cb486d](https://github.com/saltstack-formulas/nginx-formula/commit/6cb486dbd290c91bbdbf00fd0061efaedbef4dea)), closes [#274](https://github.com/saltstack-formulas/nginx-formula/issues/274)
|
||||
|
||||
## [2.7.1](https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.0...v2.7.1) (2021-05-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **servers:** wrong conditional specification ([494b2fb](https://github.com/saltstack-formulas/nginx-formula/commit/494b2fbea490fded02cecd4d3e3e0372476548fb))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* add `arch-master` to matrix and update `.travis.yml` [skip ci] ([4697152](https://github.com/saltstack-formulas/nginx-formula/commit/46971528d7a7e23241564da146ee8d28b7d2eecc))
|
||||
|
||||
# [2.7.0](https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.3...v2.7.0) (2021-04-28)
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **kitchen+gitlab:** adjust matrix to add `3003` [skip ci] ([46faf4e](https://github.com/saltstack-formulas/nginx-formula/commit/46faf4e24b39f7d4fd138126dbe5eb6a06eb5b67))
|
||||
* **vagrant:** add FreeBSD 13.0 [skip ci] ([b41062e](https://github.com/saltstack-formulas/nginx-formula/commit/b41062e3b19c4c109198bd95c53158d871bbff85))
|
||||
* **vagrant:** use pre-salted boxes & conditional local settings [skip ci] ([b9e9cd3](https://github.com/saltstack-formulas/nginx-formula/commit/b9e9cd38e6d29b7eb4cd8ae74a1bdf901959dee3))
|
||||
|
||||
|
||||
### Documentation
|
||||
|
||||
* **readme:** add `Testing with Vagrant` section [skip ci] ([5727848](https://github.com/saltstack-formulas/nginx-formula/commit/57278481de489441a5c04aee544962212e91c5af))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **servers_config:** add require statement to manage dependencies ([622d22f](https://github.com/saltstack-formulas/nginx-formula/commit/622d22f9711085aeca19f3907e22e87c6b21b8d0))
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* **requires:** verify dependencies in vhosts ([6478143](https://github.com/saltstack-formulas/nginx-formula/commit/64781431b9187d392f56ce5461c3b1a9c2944f90))
|
||||
|
||||
## [2.6.3](https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.2...v2.6.3) (2021-04-03)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **freebsd:** add `openssl` pkg and update all `default` tests ([4cd351a](https://github.com/saltstack-formulas/nginx-formula/commit/4cd351adbc184b938b0d0cf587419bab5b39a7d3))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* enable Vagrant-based testing using GitHub Actions ([c79ce9a](https://github.com/saltstack-formulas/nginx-formula/commit/c79ce9a9ae30e889ab925bb0398008b434bc9b0a))
|
||||
|
||||
## [2.6.2](https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.1...v2.6.2) (2021-03-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **servers_config:** fixup 05994e1 ([c03729a](https://github.com/saltstack-formulas/nginx-formula/commit/c03729ae326876a20cb22c346f9d4cd96418af9a))
|
||||
|
||||
## [2.6.1](https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.0...v2.6.1) (2021-03-29)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **servers_config:** remove service depedency ([05994e1](https://github.com/saltstack-formulas/nginx-formula/commit/05994e1b174ccdf3ff4a444f81314ad925fa478d))
|
||||
|
||||
|
||||
### Code Refactoring
|
||||
|
||||
* **servers_config:** remove unused loop ([3825557](https://github.com/saltstack-formulas/nginx-formula/commit/3825557070a18db4828cc634dd036a428f8a9836))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **kitchen+ci:** include `passenger` suite [skip ci] ([0bbe686](https://github.com/saltstack-formulas/nginx-formula/commit/0bbe68619fdf3791e6202ce3f17ca03efc4441c1))
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* standardise use of `share` suite & `_mapdata` state [skip ci] ([8ea3c82](https://github.com/saltstack-formulas/nginx-formula/commit/8ea3c82be3fccb2bad8bac566f210454549d141e))
|
||||
|
||||
# [2.6.0](https://github.com/saltstack-formulas/nginx-formula/compare/v2.5.0...v2.6.0) (2021-03-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **passenger:** various fixes ([7271c9d](https://github.com/saltstack-formulas/nginx-formula/commit/7271c9d16c8218244ae5ef0b188b7f9f4a414074))
|
||||
* **pkg:** add inline EPEL repo configuration for Amazon Linux 2 ([ae6375c](https://github.com/saltstack-formulas/nginx-formula/commit/ae6375ccccd56a506ee28babbeabf351112a06de))
|
||||
|
||||
|
||||
### Continuous Integration
|
||||
|
||||
* **gemfile+lock:** use `ssf` customised `kitchen-docker` repo [skip ci] ([123d13e](https://github.com/saltstack-formulas/nginx-formula/commit/123d13e2f483c203cbfc1366b36a30e1732603e1))
|
||||
* **kitchen+ci:** make rubocop happy [skip ci] ([eedfc56](https://github.com/saltstack-formulas/nginx-formula/commit/eedfc56b41b673e196029274048670e89e55a694))
|
||||
* **kitchen+ci:** use latest pre-salted images (after CVE) [skip ci] ([63d32a4](https://github.com/saltstack-formulas/nginx-formula/commit/63d32a40b13ca2c77bb83cceba620218617aab6a))
|
||||
* **kitchen+gitlab-ci:** use latest pre-salted images [skip ci] ([b4411c6](https://github.com/saltstack-formulas/nginx-formula/commit/b4411c61d3352ecb9775197f991f5f33996730dc))
|
||||
* **pre-commit:** update hook for `rubocop` [skip ci] ([2a23743](https://github.com/saltstack-formulas/nginx-formula/commit/2a23743fca8fd54b2a18dc2a07d0daa8142c0289))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **config:** validate config before applying ([b396b24](https://github.com/saltstack-formulas/nginx-formula/commit/b396b24fe456de7001b2cc013814ada189351e6f))
|
||||
|
||||
|
||||
### Tests
|
||||
|
||||
* **config:** fix for Amazon Linux 2 & Oracle Linux 7/8 ([ab39c8f](https://github.com/saltstack-formulas/nginx-formula/commit/ab39c8f7c3c9bf5dbd4436cad8ccce21263fe646))
|
||||
|
||||
# [2.5.0](https://github.com/saltstack-formulas/nginx-formula/compare/v2.4.1...v2.5.0) (2021-01-04)
|
||||
|
||||
|
||||
|
@ -15,8 +15,11 @@
|
||||
/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
|
||||
/.gitignore @saltstack-formulas/ssf
|
||||
@ -36,6 +39,8 @@
|
||||
/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
|
||||
|
2
FORMULA
2
FORMULA
@ -1,7 +1,7 @@
|
||||
name: nginx
|
||||
os: Debian, Ubuntu, RedHat, Fedora, CentOS, Suse, openSUSE
|
||||
os_family: Debian, RedHat, Suse
|
||||
version: 2.5.0
|
||||
version: 2.7.4
|
||||
release: 1
|
||||
minimum_version: 2017.3
|
||||
summary: nginx formula
|
||||
|
10
Gemfile
10
Gemfile
@ -5,8 +5,14 @@ source 'https://rubygems.org'
|
||||
# Use the latest version of `inspec` prior to `4.23.4`, which introduces a
|
||||
# regression where the diff isn't displayed when comparing using `eq`.
|
||||
gem 'inspec', '~> 4.22.22'
|
||||
# Install the `kitchen-docker` gem from GitHub because the latest version
|
||||
# Install the `kitchen-docker` gem using `git` because the latest version
|
||||
# currently available (`2.10.0`) doesn't include a recent fix for Gentoo.
|
||||
gem 'kitchen-docker', github: 'test-kitchen/kitchen-docker', ref: '41e80fe'
|
||||
# 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.2.1'
|
||||
gem 'kitchen-salt', '>= 0.6.3'
|
||||
|
||||
group :vagrant do
|
||||
gem 'kitchen-vagrant'
|
||||
end
|
||||
|
@ -1,7 +1,7 @@
|
||||
GIT
|
||||
remote: https://github.com/test-kitchen/kitchen-docker.git
|
||||
revision: 41e80fed3a7cc86323e19c16a5a340cebf7e5848
|
||||
ref: 41e80fe
|
||||
remote: https://gitlab.com/saltstack-formulas/infrastructure/kitchen-docker
|
||||
revision: 1f543f654da5c1774cb8737f6f07a01745520bb5
|
||||
branch: ssf
|
||||
specs:
|
||||
kitchen-docker (2.10.0)
|
||||
test-kitchen (>= 1.0.0)
|
||||
@ -292,6 +292,8 @@ GEM
|
||||
kitchen-salt (0.6.3)
|
||||
hashie (>= 3.5)
|
||||
test-kitchen (>= 1.4)
|
||||
kitchen-vagrant (1.7.0)
|
||||
test-kitchen (>= 1.4, < 3)
|
||||
libyajl2 (1.2.0)
|
||||
license-acceptance (1.0.19)
|
||||
pastel (~> 0.7)
|
||||
@ -525,6 +527,7 @@ DEPENDENCIES
|
||||
kitchen-docker!
|
||||
kitchen-inspec (>= 2.2.1)
|
||||
kitchen-salt (>= 0.6.3)
|
||||
kitchen-vagrant
|
||||
|
||||
BUNDLED WITH
|
||||
2.1.2
|
||||
|
169
docs/AUTHORS.rst
169
docs/AUTHORS.rst
@ -13,224 +13,233 @@ 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/10231489?v=4' width='36' height='36' alt='@myii'>`
|
||||
* - :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>`_
|
||||
- 82
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/1800660?v=4' width='36' height='36' alt='@aboe76'>`
|
||||
- 107
|
||||
* - :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>`_
|
||||
- 46
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1396878?v=4' width='36' height='36' alt='@gravyboat'>`
|
||||
* - :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>`_
|
||||
- 27
|
||||
* - :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>`_
|
||||
- 24
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/13322818?v=4' width='36' height='36' alt='@noelmcloughlin'>`
|
||||
* - :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>`_
|
||||
- 21
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/13322818?v=4' width='36' height='36' alt='@noelmcloughlin'>`
|
||||
- `@noelmcloughlin <https://github.com/noelmcloughlin>`_
|
||||
- 18
|
||||
* - :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>`_
|
||||
- 17
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/4956475?v=4' width='36' height='36' alt='@ross-p'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4956475?v=4' width='36' height='36' alt='@ross-p'>`
|
||||
- `@ross-p <https://github.com/ross-p>`_
|
||||
- 13
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/52996?v=4' width='36' height='36' alt='@daks'>`
|
||||
* - :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>`_
|
||||
- 11
|
||||
* - :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>`_
|
||||
- 10
|
||||
* - :raw-html-m2r:`<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>`_
|
||||
- 9
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/445200?v=4' width='36' height='36' alt='@arthurlogilab'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/445200?v=4' width='36' height='36' alt='@arthurlogilab'>`
|
||||
- `@arthurlogilab <https://github.com/arthurlogilab>`_
|
||||
- 8
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1184479?v=4' width='36' height='36' alt='@cheuschober'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1184479?v=4' width='36' height='36' alt='@cheuschober'>`
|
||||
- `@cheuschober <https://github.com/cheuschober>`_
|
||||
- 8
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/378158?v=4' width='36' height='36' alt='@dseira'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/378158?v=4' width='36' height='36' alt='@dseira'>`
|
||||
- `@dseira <https://github.com/dseira>`_
|
||||
- 8
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/941928?v=4' width='36' height='36' alt='@amontalban'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/941928?v=4' width='36' height='36' alt='@amontalban'>`
|
||||
- `@amontalban <https://github.com/amontalban>`_
|
||||
- 7
|
||||
* - :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>`_
|
||||
- 7
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/6354880?v=4' width='36' height='36' alt='@TaiSHiNet'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/6354880?v=4' width='36' height='36' alt='@TaiSHiNet'>`
|
||||
- `@TaiSHiNet <https://github.com/TaiSHiNet>`_
|
||||
- 6
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/745513?v=4' width='36' height='36' alt='@EvaSDK'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/745513?v=4' width='36' height='36' alt='@EvaSDK'>`
|
||||
- `@EvaSDK <https://github.com/EvaSDK>`_
|
||||
- 6
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/3280630?v=4' width='36' height='36' alt='@cackovic'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3280630?v=4' width='36' height='36' alt='@cackovic'>`
|
||||
- `@cackovic <https://github.com/cackovic>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/529?v=4' width='36' height='36' alt='@auser'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/529?v=4' width='36' height='36' alt='@auser'>`
|
||||
- `@auser <https://github.com/auser>`_
|
||||
- 5
|
||||
* - :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>`_
|
||||
- 5
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/1060507?v=4' width='36' height='36' alt='@ahmadsherif'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1060507?v=4' width='36' height='36' alt='@ahmadsherif'>`
|
||||
- `@ahmadsherif <https://github.com/ahmadsherif>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/3433835?v=4' width='36' height='36' alt='@n-rodriguez'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3433835?v=4' width='36' height='36' alt='@n-rodriguez'>`
|
||||
- `@n-rodriguez <https://github.com/n-rodriguez>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/37182?v=4' width='36' height='36' alt='@teepark'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/37182?v=4' width='36' height='36' alt='@teepark'>`
|
||||
- `@teepark <https://github.com/teepark>`_
|
||||
- 4
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/4754654?v=4' width='36' height='36' alt='@alinefr'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/4754654?v=4' width='36' height='36' alt='@alinefr'>`
|
||||
- `@alinefr <https://github.com/alinefr>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/5412167?v=4' width='36' height='36' alt='@devaos'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5412167?v=4' width='36' height='36' alt='@devaos'>`
|
||||
- `@devaos <https://github.com/devaos>`_
|
||||
- 3
|
||||
* - :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>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/328598?v=4' width='36' height='36' alt='@terminalmage'>`
|
||||
* - :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/328598?v=4' width='36' height='36' alt='@terminalmage'>`
|
||||
- `@terminalmage <https://github.com/terminalmage>`_
|
||||
- 3
|
||||
* - :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>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/783794?v=4' width='36' height='36' alt='@morsik'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/783794?v=4' width='36' height='36' alt='@morsik'>`
|
||||
- `@morsik <https://github.com/morsik>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/7060082?v=4' width='36' height='36' alt='@msciciel'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7060082?v=4' width='36' height='36' alt='@msciciel'>`
|
||||
- `@msciciel <https://github.com/msciciel>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/8029478?v=4' width='36' height='36' alt='@rfairburn'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/8029478?v=4' width='36' height='36' alt='@rfairburn'>`
|
||||
- `@rfairburn <https://github.com/rfairburn>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/50891?v=4' width='36' height='36' alt='@westurner'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/50891?v=4' width='36' height='36' alt='@westurner'>`
|
||||
- `@westurner <https://github.com/westurner>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/813115?v=4' width='36' height='36' alt='@chris-sanders'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1773291?v=4' width='36' height='36' alt='@toanju'>`
|
||||
- `@toanju <https://github.com/toanju>`_
|
||||
- 3
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/813115?v=4' width='36' height='36' alt='@chris-sanders'>`
|
||||
- `@chris-sanders <https://github.com/chris-sanders>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/4195158?v=4' width='36' height='36' alt='@dafyddj'>`
|
||||
- `@dafyddj <https://github.com/dafyddj>`_
|
||||
- 2
|
||||
* - :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/306240?v=4' width='36' height='36' alt='@UtahDave'>`
|
||||
- `@UtahDave <https://github.com/UtahDave>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/51596?v=4' width='36' height='36' alt='@ghtyrant'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/51596?v=4' width='36' height='36' alt='@ghtyrant'>`
|
||||
- `@ghtyrant <https://github.com/ghtyrant>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/56635?v=4' width='36' height='36' alt='@pprkut'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/56635?v=4' width='36' height='36' alt='@pprkut'>`
|
||||
- `@pprkut <https://github.com/pprkut>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/85002?v=4' width='36' height='36' alt='@jstrunk'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/85002?v=4' width='36' height='36' alt='@jstrunk'>`
|
||||
- `@jstrunk <https://github.com/jstrunk>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5306980?v=4' width='36' height='36' alt='@johnkeates'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5306980?v=4' width='36' height='36' alt='@johnkeates'>`
|
||||
- `@johnkeates <https://github.com/johnkeates>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2200073?v=4' width='36' height='36' alt='@kmshultz'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2200073?v=4' width='36' height='36' alt='@kmshultz'>`
|
||||
- `@kmshultz <https://github.com/kmshultz>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/11417?v=4' width='36' height='36' alt='@malept'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/11417?v=4' width='36' height='36' alt='@malept'>`
|
||||
- `@malept <https://github.com/malept>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/3279679?v=4' width='36' height='36' alt='@meganlkm'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/3279679?v=4' width='36' height='36' alt='@meganlkm'>`
|
||||
- `@meganlkm <https://github.com/meganlkm>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/84885?v=4' width='36' height='36' alt='@garrettw'>`
|
||||
- `@garrettw <https://github.com/garrettw>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/101513?v=4' width='36' height='36' alt='@ErisDS'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/101513?v=4' width='36' height='36' alt='@ErisDS'>`
|
||||
- `@ErisDS <https://github.com/ErisDS>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/879922?v=4' width='36' height='36' alt='@myoung34'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/879922?v=4' width='36' height='36' alt='@myoung34'>`
|
||||
- `@myoung34 <https://github.com/myoung34>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/46799934?v=4' width='36' height='36' alt='@sticky-note'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/46799934?v=4' width='36' height='36' alt='@sticky-note'>`
|
||||
- `@sticky-note <https://github.com/sticky-note>`_
|
||||
- 2
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1922124?v=4' width='36' height='36' alt='@bebosudo'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1922124?v=4' width='36' height='36' alt='@bebosudo'>`
|
||||
- `@bebosudo <https://github.com/bebosudo>`_
|
||||
- 1
|
||||
* - :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/8395913?v=4' width='36' height='36' alt='@aanriot'>`
|
||||
- `@aanriot <https://github.com/aanriot>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/7460036?v=4' width='36' height='36' alt='@andrew-vant'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/7460036?v=4' width='36' height='36' alt='@andrew-vant'>`
|
||||
- `@andrew-vant <https://github.com/andrew-vant>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/2106845?v=4' width='36' height='36' alt='@bemosior'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2106845?v=4' width='36' height='36' alt='@bemosior'>`
|
||||
- `@bemosior <https://github.com/bemosior>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/458548?v=4' width='36' height='36' alt='@SuperTux88'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/458548?v=4' width='36' height='36' alt='@SuperTux88'>`
|
||||
- `@SuperTux88 <https://github.com/SuperTux88>`_
|
||||
- 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://avatars1.githubusercontent.com/u/1435085?v=4' width='36' height='36' alt='@blbradley'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1435085?v=4' width='36' height='36' alt='@blbradley'>`
|
||||
- `@blbradley <https://github.com/blbradley>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/2459661?v=4' width='36' height='36' alt='@CorwinTanner'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/2459661?v=4' width='36' height='36' alt='@CorwinTanner'>`
|
||||
- `@CorwinTanner <https://github.com/CorwinTanner>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/1686586?v=4' width='36' height='36' alt='@fayetted'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1686586?v=4' width='36' height='36' alt='@fayetted'>`
|
||||
- `@fayetted <https://github.com/fayetted>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/72727?v=4' width='36' height='36' alt='@czarneckid'>`
|
||||
* - :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/72727?v=4' width='36' height='36' alt='@czarneckid'>`
|
||||
- `@czarneckid <https://github.com/czarneckid>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/983?v=4' width='36' height='36' alt='@statik'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/983?v=4' width='36' height='36' alt='@statik'>`
|
||||
- `@statik <https://github.com/statik>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/48329?v=4' width='36' height='36' alt='@ekristen'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/48329?v=4' width='36' height='36' alt='@ekristen'>`
|
||||
- `@ekristen <https://github.com/ekristen>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/75496?v=4' width='36' height='36' alt='@jeduardo'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/84885?v=4' width='36' height='36' alt='@garrettw'>`
|
||||
- `@garrettw <https://github.com/garrettw>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/75496?v=4' width='36' height='36' alt='@jeduardo'>`
|
||||
- `@jeduardo <https://github.com/jeduardo>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/668449?v=4' width='36' height='36' alt='@stromnet'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/668449?v=4' width='36' height='36' alt='@stromnet'>`
|
||||
- `@stromnet <https://github.com/stromnet>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/744549?v=4' width='36' height='36' alt='@bsdlp'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/744549?v=4' width='36' height='36' alt='@bsdlp'>`
|
||||
- `@bsdlp <https://github.com/bsdlp>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/5395035?v=4' width='36' height='36' alt='@MEschenbacher'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/350294?v=4' width='36' height='36' alt='@anderbubble'>`
|
||||
- `@anderbubble <https://github.com/anderbubble>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/5395035?v=4' width='36' height='36' alt='@MEschenbacher'>`
|
||||
- `@MEschenbacher <https://github.com/MEschenbacher>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/225115?v=4' width='36' height='36' alt='@renich'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/225115?v=4' width='36' height='36' alt='@renich'>`
|
||||
- `@renich <https://github.com/renich>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars2.githubusercontent.com/u/62993?v=4' width='36' height='36' alt='@outime'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/62993?v=4' width='36' height='36' alt='@outime'>`
|
||||
- `@outime <https://github.com/outime>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/991850?v=4' width='36' height='36' alt='@scub'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/991850?v=4' width='36' height='36' alt='@scub'>`
|
||||
- `@scub <https://github.com/scub>`_
|
||||
- 1
|
||||
* - :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>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/479088?v=4' width='36' height='36' alt='@blarghmatey'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/479088?v=4' width='36' height='36' alt='@blarghmatey'>`
|
||||
- `@blarghmatey <https://github.com/blarghmatey>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen5'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/117961?v=4' width='36' height='36' alt='@babilen5'>`
|
||||
- `@babilen5 <https://github.com/babilen5>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars0.githubusercontent.com/u/228723?v=4' width='36' height='36' alt='@abednarik'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/228723?v=4' width='36' height='36' alt='@abednarik'>`
|
||||
- `@abednarik <https://github.com/abednarik>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/19428823?v=4' width='36' height='36' alt='@francesco-a'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/19428823?v=4' width='36' height='36' alt='@francesco-a'>`
|
||||
- `@francesco-a <https://github.com/francesco-a>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars3.githubusercontent.com/u/1068764?v=4' width='36' height='36' alt='@oboyle'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/1068764?v=4' width='36' height='36' alt='@oboyle'>`
|
||||
- `@oboyle <https://github.com/oboyle>`_
|
||||
- 1
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars1.githubusercontent.com/u/542613?v=4' width='36' height='36' alt='@bersace'>`
|
||||
* - :raw-html-m2r:`<img class='float-left rounded-1' src='https://avatars.githubusercontent.com/u/542613?v=4' width='36' height='36' alt='@bersace'>`
|
||||
- `@bersace <https://github.com/bersace>`_
|
||||
- 1
|
||||
|
||||
|
||||
----
|
||||
|
||||
Auto-generated by a `forked version <https://github.com/myii/maintainer>`_ of `gaocegege/maintainer <https://github.com/gaocegege/maintainer>`_ on 2021-01-04.
|
||||
Auto-generated by a `forked version <https://github.com/myii/maintainer>`_ of `gaocegege/maintainer <https://github.com/gaocegege/maintainer>`_ on 2021-06-15.
|
||||
|
@ -2,6 +2,161 @@
|
||||
Changelog
|
||||
=========
|
||||
|
||||
`2.7.4 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.3...v2.7.4>`_ (2021-06-15)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **servers:** include main config file watch in extend (\ `00387e7 <https://github.com/saltstack-formulas/nginx-formula/commit/00387e7cbd90ceb5496df5cf9bce8f7dae25b056>`_\ )
|
||||
|
||||
`2.7.3 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.2...v2.7.3>`_ (2021-06-14)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* **snippets:** add tests for snippets includes (\ `1c83b6d <https://github.com/saltstack-formulas/nginx-formula/commit/1c83b6d5fa93079476ca9e8baa1ccd9d44e5237f>`_\ ), closes `#275 <https://github.com/saltstack-formulas/nginx-formula/issues/275>`_ `#274 <https://github.com/saltstack-formulas/nginx-formula/issues/274>`_
|
||||
|
||||
`2.7.2 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.1...v2.7.2>`_ (2021-06-14)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **certificates:** ensure ``openssl`` installed before ``cmd.run`` (\ `0cd7c7b <https://github.com/saltstack-formulas/nginx-formula/commit/0cd7c7b20528ce9fbd4f8991a365415a3093546d>`_\ ), closes `/gitlab.com/saltstack-formulas/nginx-formula/-/jobs/1345325819#L2830 <https://github.com//gitlab.com/saltstack-formulas/nginx-formula/-/jobs/1345325819/issues/L2830>`_
|
||||
* **snippets:** ignore servers or snippets when undefined (\ `6cb486d <https://github.com/saltstack-formulas/nginx-formula/commit/6cb486dbd290c91bbdbf00fd0061efaedbef4dea>`_\ ), closes `#274 <https://github.com/saltstack-formulas/nginx-formula/issues/274>`_
|
||||
|
||||
`2.7.1 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.7.0...v2.7.1>`_ (2021-05-12)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **servers:** wrong conditional specification (\ `494b2fb <https://github.com/saltstack-formulas/nginx-formula/commit/494b2fbea490fded02cecd4d3e3e0372476548fb>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* add ``arch-master`` to matrix and update ``.travis.yml`` [skip ci] (\ `4697152 <https://github.com/saltstack-formulas/nginx-formula/commit/46971528d7a7e23241564da146ee8d28b7d2eecc>`_\ )
|
||||
|
||||
`2.7.0 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.3...v2.7.0>`_ (2021-04-28)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **kitchen+gitlab:** adjust matrix to add ``3003`` [skip ci] (\ `46faf4e <https://github.com/saltstack-formulas/nginx-formula/commit/46faf4e24b39f7d4fd138126dbe5eb6a06eb5b67>`_\ )
|
||||
* **vagrant:** add FreeBSD 13.0 [skip ci] (\ `b41062e <https://github.com/saltstack-formulas/nginx-formula/commit/b41062e3b19c4c109198bd95c53158d871bbff85>`_\ )
|
||||
* **vagrant:** use pre-salted boxes & conditional local settings [skip ci] (\ `b9e9cd3 <https://github.com/saltstack-formulas/nginx-formula/commit/b9e9cd38e6d29b7eb4cd8ae74a1bdf901959dee3>`_\ )
|
||||
|
||||
Documentation
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **readme:** add ``Testing with Vagrant`` section [skip ci] (\ `5727848 <https://github.com/saltstack-formulas/nginx-formula/commit/57278481de489441a5c04aee544962212e91c5af>`_\ )
|
||||
|
||||
Features
|
||||
^^^^^^^^
|
||||
|
||||
|
||||
* **servers_config:** add require statement to manage dependencies (\ `622d22f <https://github.com/saltstack-formulas/nginx-formula/commit/622d22f9711085aeca19f3907e22e87c6b21b8d0>`_\ )
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* **requires:** verify dependencies in vhosts (\ `6478143 <https://github.com/saltstack-formulas/nginx-formula/commit/64781431b9187d392f56ce5461c3b1a9c2944f90>`_\ )
|
||||
|
||||
`2.6.3 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.2...v2.6.3>`_ (2021-04-03)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **freebsd:** add ``openssl`` pkg and update all ``default`` tests (\ `4cd351a <https://github.com/saltstack-formulas/nginx-formula/commit/4cd351adbc184b938b0d0cf587419bab5b39a7d3>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* enable Vagrant-based testing using GitHub Actions (\ `c79ce9a <https://github.com/saltstack-formulas/nginx-formula/commit/c79ce9a9ae30e889ab925bb0398008b434bc9b0a>`_\ )
|
||||
|
||||
`2.6.2 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.1...v2.6.2>`_ (2021-03-30)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **servers_config:** fixup 05994e1 (\ `c03729a <https://github.com/saltstack-formulas/nginx-formula/commit/c03729ae326876a20cb22c346f9d4cd96418af9a>`_\ )
|
||||
|
||||
`2.6.1 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.6.0...v2.6.1>`_ (2021-03-29)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **servers_config:** remove service depedency (\ `05994e1 <https://github.com/saltstack-formulas/nginx-formula/commit/05994e1b174ccdf3ff4a444f81314ad925fa478d>`_\ )
|
||||
|
||||
Code Refactoring
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **servers_config:** remove unused loop (\ `3825557 <https://github.com/saltstack-formulas/nginx-formula/commit/3825557070a18db4828cc634dd036a428f8a9836>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **kitchen+ci:** include ``passenger`` suite [skip ci] (\ `0bbe686 <https://github.com/saltstack-formulas/nginx-formula/commit/0bbe68619fdf3791e6202ce3f17ca03efc4441c1>`_\ )
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* standardise use of ``share`` suite & ``_mapdata`` state [skip ci] (\ `8ea3c82 <https://github.com/saltstack-formulas/nginx-formula/commit/8ea3c82be3fccb2bad8bac566f210454549d141e>`_\ )
|
||||
|
||||
`2.6.0 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.5.0...v2.6.0>`_ (2021-03-11)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
Bug Fixes
|
||||
^^^^^^^^^
|
||||
|
||||
|
||||
* **passenger:** various fixes (\ `7271c9d <https://github.com/saltstack-formulas/nginx-formula/commit/7271c9d16c8218244ae5ef0b188b7f9f4a414074>`_\ )
|
||||
* **pkg:** add inline EPEL repo configuration for Amazon Linux 2 (\ `ae6375c <https://github.com/saltstack-formulas/nginx-formula/commit/ae6375ccccd56a506ee28babbeabf351112a06de>`_\ )
|
||||
|
||||
Continuous Integration
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
|
||||
* **gemfile+lock:** use ``ssf`` customised ``kitchen-docker`` repo [skip ci] (\ `123d13e <https://github.com/saltstack-formulas/nginx-formula/commit/123d13e2f483c203cbfc1366b36a30e1732603e1>`_\ )
|
||||
* **kitchen+ci:** make rubocop happy [skip ci] (\ `eedfc56 <https://github.com/saltstack-formulas/nginx-formula/commit/eedfc56b41b673e196029274048670e89e55a694>`_\ )
|
||||
* **kitchen+ci:** use latest pre-salted images (after CVE) [skip ci] (\ `63d32a4 <https://github.com/saltstack-formulas/nginx-formula/commit/63d32a40b13ca2c77bb83cceba620218617aab6a>`_\ )
|
||||
* **kitchen+gitlab-ci:** use latest pre-salted images [skip ci] (\ `b4411c6 <https://github.com/saltstack-formulas/nginx-formula/commit/b4411c61d3352ecb9775197f991f5f33996730dc>`_\ )
|
||||
* **pre-commit:** update hook for ``rubocop`` [skip ci] (\ `2a23743 <https://github.com/saltstack-formulas/nginx-formula/commit/2a23743fca8fd54b2a18dc2a07d0daa8142c0289>`_\ )
|
||||
|
||||
Features
|
||||
^^^^^^^^
|
||||
|
||||
|
||||
* **config:** validate config before applying (\ `b396b24 <https://github.com/saltstack-formulas/nginx-formula/commit/b396b24fe456de7001b2cc013814ada189351e6f>`_\ )
|
||||
|
||||
Tests
|
||||
^^^^^
|
||||
|
||||
|
||||
* **config:** fix for Amazon Linux 2 & Oracle Linux 7/8 (\ `ab39c8f <https://github.com/saltstack-formulas/nginx-formula/commit/ab39c8f7c3c9bf5dbd4436cad8ccce21263fe646>`_\ )
|
||||
|
||||
`2.5.0 <https://github.com/saltstack-formulas/nginx-formula/compare/v2.4.1...v2.5.0>`_ (2021-01-04)
|
||||
-------------------------------------------------------------------------------------------------------
|
||||
|
||||
|
@ -169,3 +169,65 @@ Runs all of the stages above in one go: i.e. ``destroy`` + ``converge`` + ``veri
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Gives you SSH access to the instance for manual testing.
|
||||
|
||||
Testing with Vagrant
|
||||
--------------------
|
||||
|
||||
Windows/FreeBSD/OpenBSD testing is done with ``kitchen-salt``.
|
||||
|
||||
Requirements
|
||||
^^^^^^^^^^^^
|
||||
|
||||
* Ruby
|
||||
* Virtualbox
|
||||
* Vagrant
|
||||
|
||||
Setup
|
||||
^^^^^
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ gem install bundler
|
||||
$ bundle install --with=vagrant
|
||||
$ bin/kitchen test [platform]
|
||||
|
||||
Where ``[platform]`` is the platform name defined in ``kitchen.vagrant.yml``,
|
||||
e.g. ``windows-81-latest-py3``.
|
||||
|
||||
Note
|
||||
^^^^
|
||||
|
||||
When testing using Vagrant you must set the environment variable ``KITCHEN_LOCAL_YAML`` to ``kitchen.vagrant.yml``. For example:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ KITCHEN_LOCAL_YAML=kitchen.vagrant.yml bin/kitchen test # Alternatively,
|
||||
$ export KITCHEN_LOCAL_YAML=kitchen.vagrant.yml
|
||||
$ bin/kitchen test
|
||||
|
||||
Then run the following commands as needed.
|
||||
|
||||
``bin/kitchen converge``
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Creates the Vagrant instance and runs the ``nginx`` main state, ready for testing.
|
||||
|
||||
``bin/kitchen verify``
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Runs the ``inspec`` tests on the actual instance.
|
||||
|
||||
``bin/kitchen destroy``
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Removes the Vagrant instance.
|
||||
|
||||
``bin/kitchen test``
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Runs all of the stages above in one go: i.e. ``destroy`` + ``converge`` + ``verify`` + ``destroy``.
|
||||
|
||||
``bin/kitchen login``
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Gives you RDP/SSH access to the instance for manual testing.
|
||||
|
40
kitchen.vagrant.yml
Normal file
40
kitchen.vagrant.yml
Normal file
@ -0,0 +1,40 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
driver:
|
||||
name: vagrant
|
||||
cache_directory: false
|
||||
customize:
|
||||
usbxhci: 'off'
|
||||
gui: false
|
||||
ssh:
|
||||
shell: /bin/sh
|
||||
<% unless ENV['CI'] %>
|
||||
linked_clone: true
|
||||
synced_folders:
|
||||
- - '.kitchen/kitchen-vagrant/%{instance_name}/vagrant'
|
||||
- '/vagrant'
|
||||
- 'create: true, disabled: false'
|
||||
<% end %>
|
||||
|
||||
platforms:
|
||||
- name: freebsd-130-master-py3
|
||||
driver:
|
||||
box: myii/freebsd-13.0-master-py3
|
||||
synced_folders: [] # https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255208
|
||||
- name: freebsd-122-master-py3
|
||||
driver:
|
||||
box: myii/freebsd-12.2-master-py3
|
||||
- name: freebsd-114-master-py3
|
||||
driver:
|
||||
box: myii/freebsd-11.4-master-py3
|
||||
- name: freebsd-130-3002-6-py3
|
||||
driver:
|
||||
box: myii/freebsd-13.0-3002.6-py3
|
||||
synced_folders: [] # https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=255208
|
||||
- name: freebsd-122-3002-6-py3
|
||||
driver:
|
||||
box: myii/freebsd-12.2-3002.6-py3
|
||||
- name: freebsd-114-3002-6-py3
|
||||
driver:
|
||||
box: myii/freebsd-11.4-3002.6-py3
|
489
kitchen.yml
489
kitchen.yml
@ -8,128 +8,384 @@ driver:
|
||||
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 `tiamat`
|
||||
- name: debian-10-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:debian-10
|
||||
- name: debian-9-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:debian-9
|
||||
- name: ubuntu-2004-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:ubuntu-20.04
|
||||
- name: ubuntu-1804-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:ubuntu-18.04
|
||||
- name: centos-8-tiamat-py3
|
||||
driver:
|
||||
image: saltimages/salt-tiamat-py3:centos-8
|
||||
- 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-10-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:debian-10
|
||||
- name: debian-9-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:debian-9
|
||||
- name: ubuntu-2004-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:ubuntu-20.04
|
||||
- name: ubuntu-1804-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:ubuntu-18.04
|
||||
- name: centos-8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:centos-8
|
||||
- name: fedora-31-master-py3
|
||||
- name: centos-7-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:fedora-31
|
||||
- name: opensuse-leap-151-master-py3
|
||||
image: saltimages/salt-master-py3:centos-7
|
||||
- name: fedora-34-master-py3
|
||||
driver:
|
||||
image: netmanagers/salt-master-py3:opensuse-leap-15.1
|
||||
image: saltimages/salt-master-py3:fedora-34
|
||||
- name: fedora-33-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:fedora-33
|
||||
- name: opensuse-leap-153-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:opensuse-leap-15.3
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`:
|
||||
# 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-leap-152-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-master-py3:opensuse-leap-15.2
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`:
|
||||
# => 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
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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
|
||||
|
||||
## SALT `2019.2`
|
||||
- name: debian-10-2019-2-py3
|
||||
- name: oraclelinux-8-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:debian-10
|
||||
- name: debian-9-2019-2-py3
|
||||
image: saltimages/salt-master-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:debian-9
|
||||
- name: ubuntu-1804-2019-2-py3
|
||||
image: saltimages/salt-master-py3:oraclelinux-7
|
||||
- name: arch-base-latest-master-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:ubuntu-18.04
|
||||
- name: centos-8-2019-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:centos-8
|
||||
- name: fedora-31-2019-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:fedora-31
|
||||
- name: opensuse-leap-151-2019-2-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py3:opensuse-leap-15.1
|
||||
image: saltimages/salt-master-py3:arch-base-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`:
|
||||
- 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 `3003.1`
|
||||
- name: debian-10-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:debian-10
|
||||
- name: debian-9-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:debian-9
|
||||
- name: ubuntu-2004-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:ubuntu-20.04
|
||||
- name: ubuntu-1804-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:ubuntu-18.04
|
||||
- name: centos-8-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:centos-8
|
||||
- name: centos-7-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:centos-7
|
||||
- name: fedora-34-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:fedora-34
|
||||
- name: fedora-33-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:fedora-33
|
||||
- name: opensuse-leap-153-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:opensuse-leap-15.3
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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: centos-7-2019-2-py2
|
||||
- name: opensuse-leap-152-3003-1-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2019.2-py2:centos-7
|
||||
- name: amazonlinux-2-2019-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py3:amazonlinux-2
|
||||
- name: arch-base-latest-2019-2-py2
|
||||
driver:
|
||||
image: saltimages/salt-2019.2-py2:arch-base-latest
|
||||
image: saltimages/salt-3003.1-py3:opensuse-leap-15.2
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
## SALT `2018.3`
|
||||
- name: fedora-30-2018-3-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py3:fedora-30
|
||||
- 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: opensuse-leap-151-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:opensuse-leap-15.1
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`:
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: amazonlinux-1-2018-3-py2
|
||||
- name: opensuse-tmbl-latest-3003-1-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:amazonlinux-1
|
||||
run_command: /sbin/init
|
||||
- name: arch-base-latest-2018-3-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2018.3-py2:arch-base-latest
|
||||
image: saltimages/salt-3003.1-py3:opensuse-tumbleweed-latest
|
||||
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-30-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:fedora-30
|
||||
- name: opensuse-leap-151-2017-7-py2
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:opensuse-leap-15.1
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`:
|
||||
# Workaround to avoid intermittent failures on `opensuse-tumbleweed`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: amazonlinux-1-2017-7-py2
|
||||
- name: amazonlinux-2-3003-1-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:amazonlinux-1
|
||||
image: saltimages/salt-3003.1-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:oraclelinux-7
|
||||
- name: arch-base-latest-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:arch-base-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
- name: gentoo-stage3-latest-3003-1-py3
|
||||
driver:
|
||||
image: saltimages/salt-3003.1-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: arch-base-latest-2017-7-py2
|
||||
- name: gentoo-stage3-systemd-3003-1-py3
|
||||
driver:
|
||||
image: netmanagers/salt-2017.7-py2:arch-base-latest
|
||||
image: saltimages/salt-3003.1-py3:gentoo-stage3-systemd
|
||||
|
||||
## SALT `3002.6`
|
||||
- name: debian-10-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:debian-10
|
||||
- name: debian-9-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:debian-9
|
||||
- name: ubuntu-2004-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:ubuntu-20.04
|
||||
- name: ubuntu-1804-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:ubuntu-18.04
|
||||
- name: centos-8-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:centos-8
|
||||
- name: centos-7-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:centos-7
|
||||
- name: fedora-34-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:fedora-34
|
||||
- name: fedora-33-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:fedora-33
|
||||
- name: amazonlinux-2-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:oraclelinux-7
|
||||
- name: arch-base-latest-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:arch-base-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
- name: gentoo-stage3-latest-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: gentoo-stage3-systemd-3002-6-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.6-py3:gentoo-stage3-systemd
|
||||
|
||||
## SALT `3002.2`
|
||||
- name: opensuse-leap-153-3002-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.2-py3:opensuse-leap-15.3
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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-leap-152-3002-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.2-py3:opensuse-leap-15.2
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: opensuse-tmbl-latest-3002-2-py3
|
||||
driver:
|
||||
image: saltimages/salt-3002.2-py3:opensuse-tumbleweed-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-tumbleweed`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
|
||||
## SALT `3001.7`
|
||||
- name: debian-10-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:debian-10
|
||||
- name: debian-9-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:debian-9
|
||||
- name: ubuntu-2004-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:ubuntu-20.04
|
||||
- name: ubuntu-1804-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:ubuntu-18.04
|
||||
- name: centos-8-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:centos-8
|
||||
- name: centos-7-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:centos-7
|
||||
- name: fedora-34-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:fedora-34
|
||||
- name: fedora-33-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:fedora-33
|
||||
- name: opensuse-leap-153-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:opensuse-leap-15.3
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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-leap-152-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:opensuse-leap-15.2
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: opensuse-tmbl-latest-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:opensuse-tumbleweed-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:oraclelinux-7
|
||||
- name: arch-base-latest-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:arch-base-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
- name: gentoo-stage3-latest-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: gentoo-stage3-systemd-3001-7-py3
|
||||
driver:
|
||||
image: saltimages/salt-3001.7-py3:gentoo-stage3-systemd
|
||||
|
||||
## SALT `3000.9`
|
||||
- name: debian-10-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:debian-10
|
||||
- name: debian-9-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:debian-9
|
||||
- name: ubuntu-1804-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:ubuntu-18.04
|
||||
- name: centos-8-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:centos-8
|
||||
- name: centos-7-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:centos-7
|
||||
- name: opensuse-leap-153-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:opensuse-leap-15.3
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# 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-leap-152-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:opensuse-leap-15.2
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`:
|
||||
# => SCP did not finish successfully (255): (Net::SCP::Error)
|
||||
transport:
|
||||
max_ssh_sessions: 1
|
||||
- name: amazonlinux-2-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:amazonlinux-2
|
||||
- name: oraclelinux-8-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:oraclelinux-8
|
||||
- name: oraclelinux-7-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:oraclelinux-7
|
||||
- name: gentoo-stage3-latest-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:gentoo-stage3-latest
|
||||
run_command: /sbin/init
|
||||
- name: gentoo-stage3-systemd-3000-9-py3
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py3:gentoo-stage3-systemd
|
||||
- name: ubuntu-1804-3000-9-py2
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py2:ubuntu-18.04
|
||||
- name: arch-base-latest-3000-9-py2
|
||||
driver:
|
||||
image: saltimages/salt-3000.9-py2:arch-base-latest
|
||||
run_command: /usr/lib/systemd/systemd
|
||||
|
||||
provisioner:
|
||||
@ -153,9 +409,14 @@ verifier:
|
||||
suites:
|
||||
- name: default
|
||||
provisioner:
|
||||
dependencies:
|
||||
- name: test_dep
|
||||
path: test/salt/default/states
|
||||
state_top:
|
||||
base:
|
||||
'*':
|
||||
- test_dep.create_dependency_file
|
||||
- nginx._mapdata
|
||||
- nginx
|
||||
pillars:
|
||||
top.sls:
|
||||
@ -167,3 +428,67 @@ suites:
|
||||
verifier:
|
||||
inspec_tests:
|
||||
- path: test/integration/default
|
||||
- name: passenger
|
||||
includes:
|
||||
- debian-10-tiamat-py3
|
||||
- debian-9-tiamat-py3
|
||||
- ubuntu-2004-tiamat-py3
|
||||
- ubuntu-1804-tiamat-py3
|
||||
- centos-8-tiamat-py3
|
||||
- centos-7-tiamat-py3
|
||||
- oraclelinux-8-tiamat-py3
|
||||
- almalinux-8-tiamat-py3
|
||||
- rockylinux-8-tiamat-py3
|
||||
- debian-10-master-py3
|
||||
- debian-9-master-py3
|
||||
- ubuntu-2004-master-py3
|
||||
- ubuntu-1804-master-py3
|
||||
- centos-8-master-py3
|
||||
- centos-7-master-py3
|
||||
- oraclelinux-8-master-py3
|
||||
- almalinux-8-master-py3
|
||||
- rockylinux-8-master-py3
|
||||
- debian-10-3003-1-py3
|
||||
- debian-9-3003-1-py3
|
||||
- ubuntu-2004-3003-1-py3
|
||||
- ubuntu-1804-3003-1-py3
|
||||
- centos-8-3003-1-py3
|
||||
- centos-7-3003-1-py3
|
||||
- oraclelinux-8-3003-1-py3
|
||||
- debian-10-3002-6-py3
|
||||
- debian-9-3002-6-py3
|
||||
- ubuntu-2004-3002-6-py3
|
||||
- ubuntu-1804-3002-6-py3
|
||||
- centos-8-3002-6-py3
|
||||
- centos-7-3002-6-py3
|
||||
- oraclelinux-8-3002-6-py3
|
||||
- debian-10-3001-7-py3
|
||||
- debian-9-3001-7-py3
|
||||
- ubuntu-2004-3001-7-py3
|
||||
- ubuntu-1804-3001-7-py3
|
||||
- centos-8-3001-7-py3
|
||||
- centos-7-3001-7-py3
|
||||
- oraclelinux-8-3001-7-py3
|
||||
- debian-10-3000-9-py3
|
||||
- debian-9-3000-9-py3
|
||||
- ubuntu-1804-3000-9-py3
|
||||
- centos-8-3000-9-py3
|
||||
- centos-7-3000-9-py3
|
||||
- oraclelinux-8-3000-9-py3
|
||||
- ubuntu-1804-3000-9-py2
|
||||
provisioner:
|
||||
state_top:
|
||||
base:
|
||||
'*':
|
||||
- nginx._mapdata
|
||||
- nginx.passenger
|
||||
pillars:
|
||||
top.sls:
|
||||
base:
|
||||
'*':
|
||||
- nginx
|
||||
pillars_from_files:
|
||||
nginx.sls: test/salt/passenger/pillar/nginx.sls
|
||||
verifier:
|
||||
inspec_tests:
|
||||
- path: test/integration/passenger
|
||||
|
13
nginx/_mapdata/_mapdata.jinja
Normal file
13
nginx/_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
nginx/_mapdata/init.sls
Normal file
22
nginx/_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 nginx with context %}
|
||||
|
||||
{%- set _mapdata = {
|
||||
"values": nginx,
|
||||
} %}
|
||||
{%- 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 }}
|
@ -30,6 +30,7 @@ generate_nginx_dhparam_{{ dh_param }}_key:
|
||||
- creates: {{ certificates_path }}/{{ dh_param }}
|
||||
- require:
|
||||
- file: prepare_certificates_path_dir
|
||||
- pkg: generate_nginx_dhparam_{{ dh_param }}_key
|
||||
- watch_in:
|
||||
- service: nginx_service
|
||||
{%- endif %}
|
||||
|
@ -9,7 +9,7 @@
|
||||
'Debian': {
|
||||
'package': 'nginx',
|
||||
'passenger_package': 'passenger',
|
||||
'passenger_config_file': '/etc/nginx/conf.d/passenger.conf',
|
||||
'passenger_config_file': '/etc/nginx/conf.d/mod-http-passenger.conf',
|
||||
'service': 'nginx',
|
||||
'webuser': 'www-data',
|
||||
'conf_file': '/etc/nginx/nginx.conf',
|
||||
@ -112,6 +112,7 @@
|
||||
'snippets_dir': '/usr/local/etc/nginx/snippets',
|
||||
'streams_dir': '/usr/local/etc/nginx/streams',
|
||||
'server_use_symlink': True,
|
||||
'openssl_package': 'openssl',
|
||||
'pid_file': '/var/run/nginx.pid',
|
||||
},
|
||||
}, default='Debian' ),
|
||||
@ -119,6 +120,7 @@
|
||||
'install_from_ppa': False,
|
||||
'install_from_repo': False,
|
||||
'install_from_phusionpassenger': False,
|
||||
'check_config_before_apply': False,
|
||||
'ppa_version': 'stable',
|
||||
'source_version': '1.10.0',
|
||||
'source_hash': '8ed647c3dd65bc4ced03b0e0f6bf9e633eff6b01bac772bcf97077d58bc2be4d',
|
||||
|
@ -28,6 +28,7 @@ passenger_install:
|
||||
- pkg: nginx_install
|
||||
- require_in:
|
||||
- service: nginx_service
|
||||
- file: nginx_config
|
||||
|
||||
/etc/nginx/passenger.conf:
|
||||
file.absent:
|
||||
@ -49,6 +50,7 @@ passenger_config:
|
||||
- service: nginx_service
|
||||
- require_in:
|
||||
- service: nginx_service
|
||||
- file: nginx_config
|
||||
- require:
|
||||
- file: /etc/nginx/passenger.conf
|
||||
- pkg: passenger_install
|
||||
|
@ -113,6 +113,22 @@ nginx_zypp_repo:
|
||||
{% endif %}
|
||||
|
||||
{% if salt['grains.get']('os_family') == 'RedHat' %}
|
||||
{% if salt['grains.get']('osfinger', '') in ['Amazon Linux-2'] %}
|
||||
nginx_epel_repo:
|
||||
pkgrepo.managed:
|
||||
- name: epel
|
||||
- humanname: Extra Packages for Enterprise Linux 7 - $basearch
|
||||
- mirrorlist: https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
|
||||
- enabled: 1
|
||||
- gpgcheck: 1
|
||||
- gpgkey: https://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
|
||||
- failovermethod: priority
|
||||
- require_in:
|
||||
- pkg: nginx_install
|
||||
- watch_in:
|
||||
- pkg: nginx_install
|
||||
{% endif %}
|
||||
|
||||
nginx_yum_repo:
|
||||
pkgrepo:
|
||||
{%- if from_official %}
|
||||
@ -147,7 +163,7 @@ nginx_phusionpassenger_yum_repo:
|
||||
- baseurl: 'https://oss-binaries.phusionpassenger.com/yum/passenger/el/$releasever/$basearch'
|
||||
- repo_gpgcheck: 1
|
||||
- gpgcheck: 0
|
||||
- gpgkey: 'https://packagecloud.io/gpg.key'
|
||||
- gpgkey: 'https://oss-binaries.phusionpassenger.com/yum/definitions/RPM-GPG-KEY.asc'
|
||||
- enabled: True
|
||||
- sslverify: 1
|
||||
- sslcacert: /etc/pki/tls/certs/ca-bundle.crt
|
||||
|
@ -5,12 +5,11 @@
|
||||
{%- set tplroot = tpldir.split('/')[0] %}
|
||||
{%- from tplroot ~ '/map.jinja' import nginx, sls_block with context %}
|
||||
{%- from tplroot ~ '/servers_config.sls' import server_states with context %}
|
||||
{%- from tplroot ~ '/service.sls' import service_function with context %}
|
||||
|
||||
{% macro file_requisites(states) %}
|
||||
{%- for state in states %}
|
||||
- file: {{ state }}
|
||||
{%- endfor -%}
|
||||
{%- for state in states %}
|
||||
- file: {{ state }}
|
||||
{%- endfor -%}
|
||||
{% endmacro %}
|
||||
|
||||
include:
|
||||
@ -18,15 +17,14 @@ include:
|
||||
- nginx.servers_config
|
||||
|
||||
{% if server_states|length() > 0 %}
|
||||
nginx_service_reload:
|
||||
service.{{ service_function }}:
|
||||
- name: {{ nginx.lookup.service }}
|
||||
- reload: True
|
||||
- use:
|
||||
- service: nginx_service
|
||||
- listen:
|
||||
{{ file_requisites(server_states) }}
|
||||
- require:
|
||||
{{ file_requisites(server_states) }}
|
||||
- service: nginx_service
|
||||
extend:
|
||||
nginx_service:
|
||||
service:
|
||||
- reload: True
|
||||
- require:
|
||||
- file: nginx_config
|
||||
{{ file_requisites(server_states) }}
|
||||
- listen:
|
||||
- file: nginx_config
|
||||
{{ file_requisites(server_states) }}
|
||||
{% endif %}
|
||||
|
@ -10,9 +10,14 @@
|
||||
{% set server_states = [] %}
|
||||
{#- _nginx is a lightened copy of nginx map intended to passed in templates #}
|
||||
{%- set _nginx = nginx.copy() %}
|
||||
<<<<<<< HEAD
|
||||
{%- do _nginx.pop('snippets') %}
|
||||
{%- do _nginx.pop('streams') %}
|
||||
{%- do _nginx.pop('servers') %}
|
||||
=======
|
||||
{%- do _nginx.pop('snippets') if nginx.snippets is defined %}
|
||||
{%- do _nginx.pop('servers') if nginx.servers is defined %}
|
||||
>>>>>>> 6a42a9bdf84e764cb4b3313ad2b6d95688517dec
|
||||
|
||||
# Simple path concatenation.
|
||||
# Needs work to make this function on windows.
|
||||
@ -53,6 +58,7 @@
|
||||
file.symlink:
|
||||
{{ sls_block(nginx.servers.symlink_opts) }}
|
||||
- name: {{ server_path(server, state) }}
|
||||
- makedirs: True
|
||||
- target: {{ server_path(server, anti_state) }}
|
||||
{%- else %}
|
||||
{%- if deleted == True %}
|
||||
@ -99,10 +105,6 @@ nginx_server_available_dir:
|
||||
- clean: {{ nginx.servers.purge_servers_config }}
|
||||
{%- endif %}
|
||||
|
||||
# Manage the actual server files
|
||||
{% for server, settings in nginx.servers.managed.items() %}
|
||||
{% endfor %}
|
||||
|
||||
# Managed enabled/disabled state for servers
|
||||
{% for server, settings in nginx.servers.managed.items() %}
|
||||
{% set conf_state_id = 'server_conf_' ~ loop.index0 %}
|
||||
@ -110,6 +112,7 @@ nginx_server_available_dir:
|
||||
{{ conf_state_id }}:
|
||||
file.absent:
|
||||
- name: {{ server_curpath(server) }}
|
||||
{% do server_states.append(conf_state_id) %}
|
||||
{% else %}
|
||||
{% if settings.enabled == True %}
|
||||
{{ conf_state_id }}:
|
||||
@ -126,8 +129,12 @@ nginx_server_available_dir:
|
||||
}}
|
||||
- makedirs: True
|
||||
- template: jinja
|
||||
- require_in:
|
||||
- service: nginx_service
|
||||
{%- if 'requires' in settings %}
|
||||
- require:
|
||||
{%- for k, v in settings.requires.items() %}
|
||||
- {{ k }}: {{ v }}
|
||||
{%- endfor %}
|
||||
{%- endif %}
|
||||
{% if 'source_path' not in settings.config %}
|
||||
- context:
|
||||
config: {{ settings.config|json(sort_keys=False) }}
|
||||
@ -157,9 +164,7 @@ nginx_server_available_dir:
|
||||
- file: {{ conf_state_id }}
|
||||
{% endif %}
|
||||
|
||||
{% if 'deleted' not in settings or ( 'deleted' in settings and settings.deleted == False ) %}
|
||||
{% do server_states.append(status_state_id) %}
|
||||
{% endif %}
|
||||
{%- endif %} {# enabled != available_dir #}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
@ -42,3 +42,6 @@ nginx_service:
|
||||
{% else %}
|
||||
- pkg: nginx_install
|
||||
{% endif %}
|
||||
{% if nginx.check_config_before_apply %}
|
||||
- onlyif: /usr/sbin/nginx -t
|
||||
{% endif %}
|
||||
|
@ -8,8 +8,8 @@
|
||||
|
||||
{#- _nginx is a lightened copy of nginx map intended to passed in templates #}
|
||||
{%- set _nginx = nginx.copy() %}
|
||||
{%- do _nginx.pop('snippets') %}
|
||||
{%- do _nginx.pop('servers') %}
|
||||
{%- do _nginx.pop('snippets') if nginx.snippets is defined %}
|
||||
{%- do _nginx.pop('servers') if nginx.servers is defined %}
|
||||
|
||||
nginx_snippets_dir:
|
||||
file.directory:
|
||||
@ -28,4 +28,9 @@ nginx_snippet_{{ snippet }}:
|
||||
- context:
|
||||
config: {{ config|json() }}
|
||||
nginx: {{ _nginx|json() }}
|
||||
- require:
|
||||
- file: nginx_snippets_dir
|
||||
- require_in:
|
||||
- file: nginx_config
|
||||
- service: nginx_service
|
||||
{% endfor %}
|
||||
|
@ -28,6 +28,17 @@ nginx:
|
||||
source_version: '1.10.0'
|
||||
source_hash: ''
|
||||
|
||||
# Check the configuration before applying:
|
||||
# To prevent applying a configuration that might break nginx, set this
|
||||
# parameter to true so the configuration is checked BEFORE applying. If
|
||||
# the check fails, the state will fail and it won't be deployed.
|
||||
# CAVEAT: As the configuration file is created in a temp dir, it can't
|
||||
# have relative references or it will fail to check. You'll need to
|
||||
# specify full paths where required (ie, `include`, `load_module`,
|
||||
# `snippets`, etc.0
|
||||
# Defaults to false
|
||||
check_config_before_apply: false
|
||||
|
||||
# These are usually set by grains in map.jinja
|
||||
# Typically you can comment these out.
|
||||
lookup:
|
||||
@ -200,6 +211,18 @@ nginx:
|
||||
# and None indicates no action
|
||||
enabled: true
|
||||
|
||||
# This let's you add dependencies on other resources being applied for a
|
||||
# particular vhost
|
||||
# A common case is when you use this formula together with letsencrypt's,
|
||||
# validating through nginx: you need nginx running (to validate the vhost) but
|
||||
# can't have the ssl vhost up until the certificate is created (because it
|
||||
# won't exist and will make nginx fail to load the configuration)
|
||||
#
|
||||
# An example, when using LE to create the cert for 'some.host.domain':
|
||||
# requires:
|
||||
# cmd: create-initial-cert-some.host.domain
|
||||
requires: {}
|
||||
|
||||
# Remove the site config file shipped by nginx
|
||||
# (i.e. '/etc/nginx/sites-available/default' by default)
|
||||
# It also remove the symlink (if it is exists).
|
||||
|
@ -1,37 +1,52 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# Set defaults, use debian as base
|
||||
|
||||
server_available = '/etc/nginx/sites-available'
|
||||
server_enabled = '/etc/nginx/sites-enabled'
|
||||
# Override by platform family
|
||||
server_available, server_enabled =
|
||||
case platform[:family]
|
||||
when 'redhat', 'fedora'
|
||||
%w[/etc/nginx/conf.d /etc/nginx/conf.d]
|
||||
when 'suse'
|
||||
%w[/etc/nginx/vhosts.d /etc/nginx/vhosts.d]
|
||||
when 'bsd'
|
||||
%w[/usr/local/etc/nginx/sites-available /usr/local/etc/nginx/sites-enabled]
|
||||
else
|
||||
%w[/etc/nginx/sites-available /etc/nginx/sites-enabled]
|
||||
end
|
||||
|
||||
# Override by OS
|
||||
case os[:name]
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
server_available = '/etc/nginx/conf.d'
|
||||
server_enabled = '/etc/nginx/conf.d'
|
||||
when 'opensuse'
|
||||
server_available = '/etc/nginx/vhosts.d'
|
||||
server_enabled = '/etc/nginx/vhosts.d'
|
||||
end
|
||||
nginx_conf, snippets_letsencrypt_conf, file_owner, file_group =
|
||||
case platform[:family]
|
||||
when 'bsd'
|
||||
%w[/usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/snippets/letsencrypt.conf
|
||||
root wheel]
|
||||
else
|
||||
%w[/etc/nginx/nginx.conf /etc/nginx/snippets/letsencrypt.conf root root]
|
||||
end
|
||||
|
||||
control 'Nginx configuration' do
|
||||
title 'should match desired lines'
|
||||
|
||||
# main configuration
|
||||
describe file('/etc/nginx/nginx.conf') do
|
||||
describe file(nginx_conf) do
|
||||
it { should be_file }
|
||||
it { should be_owned_by 'root' }
|
||||
it { should be_grouped_into 'root' }
|
||||
it { should be_owned_by file_owner }
|
||||
it { should be_grouped_into file_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include %Q[ log_format main '$remote_addr - $remote_user [$time_local] $status '
|
||||
its('content') do
|
||||
# rubocop:disable Metrics/LineLength
|
||||
should include %( log_format main '$remote_addr - $remote_user [$time_local] $status '
|
||||
'"$request" $body_bytes_sent "$http_referer" '
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';] }
|
||||
'"$http_user_agent" "$http_x_forwarded_for"';)
|
||||
# rubocop:enable Metrics/LineLength
|
||||
end
|
||||
end
|
||||
|
||||
# snippets configuration
|
||||
describe file('/etc/nginx/snippets/letsencrypt.conf') do
|
||||
describe file(snippets_letsencrypt_conf) do
|
||||
it { should be_file }
|
||||
it { should be_owned_by 'root' }
|
||||
it { should be_grouped_into 'root' }
|
||||
it { should be_owned_by file_owner }
|
||||
it { should be_grouped_into file_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include 'location ^~ /.well-known/acme-challenge/ {' }
|
||||
its('content') { should include 'proxy_pass http://localhost:9999;' }
|
||||
@ -40,15 +55,14 @@ control 'Nginx configuration' do
|
||||
|
||||
# sites configuration
|
||||
[server_available, server_enabled].each do |dir|
|
||||
|
||||
describe file ("#{dir}/default") do
|
||||
it { should_not exist }
|
||||
describe file "#{dir}/default" do
|
||||
it { should_not exist }
|
||||
end
|
||||
|
||||
describe file ("#{dir}/mysite") do
|
||||
describe file "#{dir}/mysite" do
|
||||
it { should be_file }
|
||||
it { should be_owned_by 'root' }
|
||||
it { should be_grouped_into 'root' }
|
||||
it { should be_owned_by file_owner }
|
||||
it { should be_grouped_into file_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include 'server_name localhost;' }
|
||||
its('content') { should include 'listen 80 default_server;' }
|
||||
@ -57,6 +71,16 @@ control 'Nginx configuration' do
|
||||
its('content') { should include 'try_files $uri $uri/ =404;' }
|
||||
its('content') { should include 'include snippets/letsencrypt.conf;' }
|
||||
end
|
||||
|
||||
describe file "#{dir}/mysite_with_require" do
|
||||
it { should be_file }
|
||||
it { should be_owned_by file_owner }
|
||||
it { should be_grouped_into file_group }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include 'server_name with-deps;' }
|
||||
its('content') { should include 'listen 80;' }
|
||||
its('content') { should include 'index index.html index.htm;' }
|
||||
its('content') { should include 'location ~ .htm {' }
|
||||
its('content') { should include 'try_files $uri $uri/ =404;' }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
9
test/integration/default/controls/file.rb
Normal file
9
test/integration/default/controls/file.rb
Normal file
@ -0,0 +1,9 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
control 'Dependency test file' do
|
||||
title 'should exist'
|
||||
|
||||
describe file('/tmp/created_to_test_dependencies') do
|
||||
it { should be_file }
|
||||
end
|
||||
end
|
@ -1,3 +1,5 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
control 'Nginx package' do
|
||||
title 'should be installed'
|
||||
|
||||
|
@ -1,7 +1,10 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
control 'Nginx service' do
|
||||
title 'should be running and enabled'
|
||||
|
||||
describe service('nginx') do
|
||||
it { should be_installed }
|
||||
it { should be_enabled }
|
||||
it { should be_running }
|
||||
end
|
||||
|
@ -6,6 +6,9 @@ title: nginx formula
|
||||
maintainer: SaltStack Formulas
|
||||
license: Apache-2.0
|
||||
summary: Verify that the nginx formula is setup and configured correctly
|
||||
depends:
|
||||
- name: share
|
||||
path: test/integration/share
|
||||
supports:
|
||||
- platform-name: debian
|
||||
- platform-name: ubuntu
|
||||
@ -14,5 +17,11 @@ 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: windows
|
||||
|
50
test/integration/passenger/README.md
Normal file
50
test/integration/passenger/README.md
Normal file
@ -0,0 +1,50 @@
|
||||
# InSpec Profile: `passenger`
|
||||
|
||||
This shows the implementation of the `passenger` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md).
|
||||
|
||||
## Verify a profile
|
||||
|
||||
InSpec ships with built-in features to verify a profile structure.
|
||||
|
||||
```bash
|
||||
$ inspec check passenger
|
||||
Summary
|
||||
-------
|
||||
Location: passenger
|
||||
Profile: profile
|
||||
Controls: 4
|
||||
Timestamp: 2019-06-24T23:09:01+00:00
|
||||
Valid: true
|
||||
|
||||
Errors
|
||||
------
|
||||
|
||||
Warnings
|
||||
--------
|
||||
```
|
||||
|
||||
## Execute a profile
|
||||
|
||||
To run all **supported** controls on a local machine use `inspec exec /path/to/profile`.
|
||||
|
||||
```bash
|
||||
$ inspec exec passenger
|
||||
..
|
||||
|
||||
Finished in 0.0025 seconds (files took 0.12449 seconds to load)
|
||||
8 examples, 0 failures
|
||||
```
|
||||
|
||||
## Execute a specific control from a profile
|
||||
|
||||
To run one control from the profile use `inspec exec /path/to/profile --controls name`.
|
||||
|
||||
```bash
|
||||
$ inspec exec passenger --controls package
|
||||
.
|
||||
|
||||
Finished in 0.0025 seconds (files took 0.12449 seconds to load)
|
||||
1 examples, 0 failures
|
||||
```
|
||||
|
||||
See an [example control here](https://github.com/inspec/inspec/blob/master/examples/profile/controls/example.rb).
|
58
test/integration/passenger/controls/config.rb
Normal file
58
test/integration/passenger/controls/config.rb
Normal file
@ -0,0 +1,58 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# Set defaults, use debian as base
|
||||
|
||||
# Override by OS Family
|
||||
case platform[:family]
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
server_available = '/etc/nginx/conf.d'
|
||||
server_enabled = '/etc/nginx/conf.d'
|
||||
passenger_mod = '/usr/lib64/nginx/modules/ngx_http_passenger_module.so'
|
||||
passenger_root = '/usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini'
|
||||
passenger_config_file = '/etc/nginx/conf.d/passenger.conf'
|
||||
should_not_exist_file = '/etc/nginx/conf.d/mod-http-passenger.conf'
|
||||
when 'debian', 'ubuntu'
|
||||
server_available = '/etc/nginx/sites-available'
|
||||
server_enabled = '/etc/nginx/sites-enabled'
|
||||
passenger_mod = '/usr/lib/nginx/modules/ngx_http_passenger_module.so'
|
||||
passenger_root = '/usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini'
|
||||
passenger_config_file = '/etc/nginx/conf.d/mod-http-passenger.conf'
|
||||
should_not_exist_file = '/etc/nginx/conf.d/passenger.conf'
|
||||
end
|
||||
|
||||
control 'Passenger configuration' do
|
||||
title 'should match desired lines'
|
||||
|
||||
# main configuration
|
||||
describe file('/etc/nginx/nginx.conf') do
|
||||
its('content') { should include "load_module #{passenger_mod}" }
|
||||
end
|
||||
|
||||
describe file(passenger_config_file) do
|
||||
it { should be_file }
|
||||
it { should be_owned_by 'root' }
|
||||
it { should be_grouped_into 'root' }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include "passenger_root #{passenger_root};" }
|
||||
its('content') { should include 'passenger_ruby /usr/bin/ruby;' }
|
||||
end
|
||||
|
||||
describe file(should_not_exist_file) do
|
||||
it { should_not exist }
|
||||
end
|
||||
|
||||
# sites configuration
|
||||
[server_available, server_enabled].each do |dir|
|
||||
describe file "#{dir}/default" do
|
||||
it { should_not exist }
|
||||
end
|
||||
|
||||
describe file "#{dir}/mysite" do
|
||||
it { should be_file }
|
||||
it { should be_owned_by 'root' }
|
||||
it { should be_grouped_into 'root' }
|
||||
its('mode') { should cmp '0644' }
|
||||
its('content') { should include 'passenger_enabled on;' }
|
||||
end
|
||||
end
|
||||
end
|
28
test/integration/passenger/controls/install.rb
Normal file
28
test/integration/passenger/controls/install.rb
Normal file
@ -0,0 +1,28 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
control 'Nginx package' do
|
||||
title 'should be installed'
|
||||
|
||||
describe package('nginx') do
|
||||
it { should be_installed }
|
||||
end
|
||||
end
|
||||
|
||||
control 'Passenger packages' do
|
||||
title 'should be installed'
|
||||
|
||||
# Override by OS Family
|
||||
passenger_mod_pkg = case platform[:family]
|
||||
when 'redhat', 'centos', 'fedora'
|
||||
'nginx-mod-http-passenger'
|
||||
when 'debian', 'ubuntu'
|
||||
'libnginx-mod-http-passenger'
|
||||
end
|
||||
|
||||
describe package('passenger') do
|
||||
it { should be_installed }
|
||||
end
|
||||
describe package(passenger_mod_pkg) do
|
||||
it { should be_installed }
|
||||
end
|
||||
end
|
28
test/integration/passenger/controls/service.rb
Normal file
28
test/integration/passenger/controls/service.rb
Normal file
@ -0,0 +1,28 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
control 'Nginx service' do
|
||||
title 'should be running and enabled'
|
||||
|
||||
describe service('nginx') do
|
||||
it { should be_enabled }
|
||||
it { should be_running }
|
||||
end
|
||||
end
|
||||
|
||||
control 'Passenger module' do
|
||||
title 'should be running and enabled'
|
||||
|
||||
describe 'Passenger engine' do
|
||||
it 'passenger-config should say configuration "looks good"' do
|
||||
expect(command(
|
||||
'/usr/bin/passenger-config validate-install --auto'
|
||||
).stdout).to match(/looks good/)
|
||||
end
|
||||
|
||||
it 'passenger-memory-stats should return Passenger stats' do
|
||||
expect(command('/usr/sbin/passenger-memory-stats').stdout).to match(
|
||||
%r{nginx: master process /usr/sbin/nginx.*Passenger watchdog.*Passenger core.*}m
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
27
test/integration/passenger/inspec.yml
Normal file
27
test/integration/passenger/inspec.yml
Normal file
@ -0,0 +1,27 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
name: passenger
|
||||
title: nginx formula
|
||||
maintainer: SaltStack Formulas
|
||||
license: Apache-2.0
|
||||
summary: Verify that the nginx formula is setup and configured correctly
|
||||
depends:
|
||||
- name: share
|
||||
path: test/integration/share
|
||||
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: windows
|
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)
|
24
test/integration/share/inspec.yml
Normal file
24
test/integration/share/inspec.yml
Normal file
@ -0,0 +1,24 @@
|
||||
# -*- 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: windows
|
90
test/integration/share/libraries/system.rb
Normal file
90
test/integration/share/libraries/system.rb
Normal file
@ -0,0 +1,90 @@
|
||||
# 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>
|
||||
|
||||
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
|
||||
}
|
||||
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.yaml
|
||||
inspec.platform[:release].gsub(/2018.*/, '1')
|
||||
when 'arch'
|
||||
'base-latest'
|
||||
when 'gentoo'
|
||||
"#{inspec.platform[:release].split('.')[0]}-#{derive_gentoo_init_system}"
|
||||
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_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
|
||||
end
|
@ -37,6 +37,19 @@ nginx:
|
||||
- location ~ .htm:
|
||||
- try_files: '$uri $uri/ =404'
|
||||
- include: 'snippets/letsencrypt.conf'
|
||||
mysite_with_require:
|
||||
enabled: true
|
||||
config:
|
||||
- server:
|
||||
- server_name: with-deps
|
||||
- listen:
|
||||
- '80'
|
||||
- index: 'index.html index.htm'
|
||||
- location ~ .htm:
|
||||
- try_files: '$uri $uri/ =404'
|
||||
requires:
|
||||
file: created_to_test_dependencies
|
||||
|
||||
dh_param:
|
||||
'mydhparam2.pem':
|
||||
keysize: 2048
|
||||
|
@ -0,0 +1,6 @@
|
||||
## this state creates a file that is used to test vhosts dependencies
|
||||
# (see https://github.com/saltstack-formulas/nginx-formula/pull/278)
|
||||
|
||||
created_to_test_dependencies:
|
||||
file.managed:
|
||||
- name: /tmp/created_to_test_dependencies
|
60
test/salt/passenger/pillar/nginx.sls
Normal file
60
test/salt/passenger/pillar/nginx.sls
Normal file
@ -0,0 +1,60 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# vim: ft=yaml
|
||||
---
|
||||
# Simple pillar setup
|
||||
# - remove 'default' site
|
||||
# - create 'mysite' site
|
||||
|
||||
{%- if grains.os_family in ('RedHat',) %}
|
||||
{%- set passenger_pkg = 'nginx-mod-http-passenger' %}
|
||||
{%- set passenger_mod = '/usr/lib64/nginx/modules/ngx_http_passenger_module.so' %}
|
||||
{%- else %}
|
||||
{%- set passenger_pkg = 'libnginx-mod-http-passenger' %}
|
||||
{%- set passenger_mod = '/usr/lib/nginx/modules/ngx_http_passenger_module.so' %}
|
||||
{%- endif %}
|
||||
|
||||
nginx:
|
||||
check_config_before_apply: true
|
||||
|
||||
install_from_phusionpassenger: true
|
||||
lookup:
|
||||
passenger_package: {{ passenger_pkg }}
|
||||
|
||||
server:
|
||||
config:
|
||||
# This is required to get the passenger module loaded
|
||||
# In Debian it can be done with this
|
||||
# include: 'modules-enabled/*.conf'
|
||||
load_module: {{ passenger_mod }}
|
||||
|
||||
worker_processes: 4
|
||||
http:
|
||||
### module ngx_http_log_module example
|
||||
log_format: |-
|
||||
main '$remote_addr - $remote_user [$time_local] $status '
|
||||
'"$request" $body_bytes_sent "$http_referer" '
|
||||
'"$http_user_agent" "$http_x_forwarded_for"'
|
||||
include:
|
||||
- /etc/nginx/mime.types
|
||||
- /etc/nginx/conf.d/*.conf
|
||||
- /etc/nginx/sites-enabled/*
|
||||
|
||||
servers:
|
||||
managed:
|
||||
default:
|
||||
deleted: true
|
||||
enabled: false
|
||||
config: {}
|
||||
|
||||
mysite:
|
||||
enabled: true
|
||||
config:
|
||||
- server:
|
||||
- passenger_enabled: 'on'
|
||||
|
||||
- server_name: localhost
|
||||
- listen:
|
||||
- '80 default_server'
|
||||
- index: 'index.html index.htm'
|
||||
- location ~ .htm:
|
||||
- try_files: '$uri $uri/ =404'
|
Loading…
x
Reference in New Issue
Block a user