diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
deleted file mode 100644
index 1cc8c26..0000000
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ /dev/null
@@ -1,68 +0,0 @@
----
-name: Bug report
-about: Create a report to help us improve
-title: '[BUG] '
-labels: 'bug'
-assignees: ''
-
----
-
-
-
-## Your setup
-### Formula commit hash / release tag
-
-
-
-
-### Versions reports (master & minion)
-
-
-
-
-### Pillar / config used
-
-
-
-
----
-
-## Bug details
-### Describe the bug
-
-
-
-
-### Steps to reproduce the bug
-
-
-
-
-
-
-### Expected behaviour
-
-
-
-
-### Attempts to fix the bug
-
-
-
-
-### Additional context
-
-
-
-
----
-
-### Meta: How can this template be improved?
-
-
-
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
deleted file mode 100644
index be8be36..0000000
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ /dev/null
@@ -1,42 +0,0 @@
----
-name: Feature request
-about: Suggest an idea for this project
-title: '[FEATURE] '
-labels: 'enhancement'
-assignees: ''
-
----
-
-
-
-### Is your feature request related to a problem?
-
-
-
-
-### Describe the solution you'd like
-
-
-
-
-### Describe alternatives you've considered
-
-
-
-
-### Additional context
-
-
-
-
----
-
-### Meta: How can this template be improved?
-
-
-
diff --git a/.rubocop.yml b/.rubocop.yml
new file mode 100644
index 0000000..bdae9aa
--- /dev/null
+++ b/.rubocop.yml
@@ -0,0 +1,10 @@
+# -*- coding: utf-8 -*-
+# vim: ft=yaml
+---
+# General overrides used across formulas in the org
+Metrics/LineLength:
+ # Increase from default of `80`
+ # Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`)
+ Max: 88
+
+# Any offenses that should be fixed, e.g. collected via. `rubocop --auto-gen-config`
diff --git a/.salt-lint b/.salt-lint
new file mode 100644
index 0000000..a539954
--- /dev/null
+++ b/.salt-lint
@@ -0,0 +1,13 @@
+# -*- coding: utf-8 -*-
+# vim: ft=yaml
+---
+exclude_paths: []
+skip_list:
+ # Using `salt-lint` for linting other files as well, such as Jinja macros/templates
+ - 205 # Use ".sls" as a Salt State file extension
+ # Skipping `207` and `208` because `210` is sufficient, at least for the time-being
+ # I.e. Allows 3-digit unquoted codes to still be used, such as `644` and `755`
+ - 207 # File modes should always be encapsulated in quotation marks
+ - 208 # File modes should always contain a leading zero
+tags: []
+verbosity: 1
diff --git a/.travis.yml b/.travis.yml
index bcc7a0b..a2f990b 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,64 +1,43 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
+## Machine config
dist: bionic
-stages:
- - test
- - lint
- - name: release
- if: branch = master AND type != pull_request
-
sudo: required
-cache: bundler
-language: ruby
-
services:
- docker
-# Make sure the instances listed below match up with
-# the `platforms` defined in `kitchen.yml`
-env:
- matrix:
- - INSTANCE: default-debian-10-develop-py3
- # - INSTANCE: default-ubuntu-1804-develop-py3
- # - INSTANCE: default-centos-7-develop-py3
- # - INSTANCE: default-fedora-30-develop-py3
- # - INSTANCE: default-opensuse-leap-15-develop-py3
- # - INSTANCE: default-amazonlinux-2-develop-py2
- # - INSTANCE: default-arch-base-latest-develop-py2
- # - INSTANCE: default-debian-9-2019-2-py3
- - INSTANCE: default-ubuntu-1804-2019-2-py3
- - INSTANCE: default-centos-7-2019-2-py3
- # - INSTANCE: default-fedora-30-2019-2-py3
- # - INSTANCE: default-opensuse-leap-15-2019-2-py3
- # - INSTANCE: default-amazonlinux-2-2019-2-py2
- - INSTANCE: default-arch-base-latest-2019-2-py2
- # - INSTANCE: default-debian-9-2018-3-py2
- # - INSTANCE: default-ubuntu-1604-2018-3-py2
- # - INSTANCE: default-centos-7-2018-3-py2
- - INSTANCE: default-fedora-29-2018-3-py2
- - INSTANCE: default-opensuse-leap-15-2018-3-py2
- # - INSTANCE: default-amazonlinux-2-2018-3-py2
- # - INSTANCE: default-arch-base-latest-2018-3-py2
- # - INSTANCE: default-debian-8-2017-7-py2
- # - INSTANCE: default-ubuntu-1604-2017-7-py2
- - INSTANCE: default-centos-6-2017-7-py2
- # - INSTANCE: default-fedora-29-2017-7-py2
- # - INSTANCE: default-opensuse-leap-15-2017-7-py2
- # - INSTANCE: default-amazonlinux-2-2017-7-py2
- # - INSTANCE: default-arch-base-latest-2017-7-py2
+## Language and cache config
+language: ruby
+cache: bundler
+## Script to run for the test stage
script:
- - bin/kitchen verify ${INSTANCE}
+ - bin/kitchen verify "${INSTANCE}"
+## Stages and jobs matrix
+stages:
+ - test
+ - name: release
+ if: branch = master AND type != pull_request
jobs:
+ allow_failures:
+ - env: Lint_rubocop
+ fast_finish: true
include:
- # Define the `lint` stage (runs `yamllint` and `commitlint`)
- - stage: lint
- language: node_js
+ ## Define the test stage that runs the linters (and testing matrix, if applicable)
+
+ # Run all of the linters in a single job (except `rubocop`)
+ - language: node_js
node_js: lts/*
+ env: Lint
+ name: 'Lint: salt-lint, yamllint & commitlint'
before_install: skip
script:
+ # Install and run `salt-lint`
+ - pip install --user salt-lint
+ - git ls-files | grep '\.sls$\|\.jinja$\|\.j2$\|\.tmpl$'
+ | xargs -I {} salt-lint {}
# Install and run `yamllint`
# Need at least `v1.17.0` for the `yaml-files` setting
- pip install --user yamllint>=1.17.0
@@ -67,10 +46,56 @@ jobs:
- npm install @commitlint/config-conventional -D
- npm install @commitlint/travis-cli -D
- commitlint-travis
- # Define the release stage that runs `semantic-release`
+ # 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
+
+ ## 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-develop-py3
+ # - env: INSTANCE=default-ubuntu-1804-develop-py3
+ # - env: INSTANCE=default-centos-7-develop-py3
+ # - env: INSTANCE=default-fedora-30-develop-py3
+ # - env: INSTANCE=default-opensuse-leap-15-develop-py3
+ # - env: INSTANCE=default-amazonlinux-2-develop-py2
+ # - env: INSTANCE=default-arch-base-latest-develop-py2
+ # - env: INSTANCE=default-debian-9-2019-2-py3
+ - env: INSTANCE=default-ubuntu-1804-2019-2-py3
+ - env: INSTANCE=default-centos-7-2019-2-py3
+ # - env: INSTANCE=default-fedora-30-2019-2-py3
+ # - env: INSTANCE=default-opensuse-leap-15-2019-2-py3
+ # - env: INSTANCE=default-amazonlinux-2-2019-2-py2
+ - env: INSTANCE=default-arch-base-latest-2019-2-py2
+ # - 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-fedora-29-2018-3-py2
+ - env: INSTANCE=default-opensuse-leap-15-2018-3-py2
+ # - env: INSTANCE=default-amazonlinux-2-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-29-2017-7-py2
+ # - env: INSTANCE=default-opensuse-leap-15-2017-7-py2
+ # - env: INSTANCE=default-amazonlinux-2-2017-7-py2
+ # - env: INSTANCE=default-arch-base-latest-2017-7-py2
+
+ ## Define the release stage that runs `semantic-release`
- stage: release
language: node_js
node_js: lts/*
+ env: Release
+ name: 'Run semantic-release inc. file updates to AUTHORS, CHANGELOG & FORMULA'
before_install: skip
script:
# Update `AUTHORS.md`
diff --git a/AUTHORS.md b/AUTHORS.md
index f9eeed4..192a9a1 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -4,11 +4,11 @@ This list is sorted by the number of commits per contributor in _descending_ ord
Avatar|Contributor|Contributions
:-:|---|:-:
-
|[@aboe76](https://github.com/aboe76)|41
+
|[@aboe76](https://github.com/aboe76)|45
+
|[@myii](https://github.com/myii)|33
|[@gravyboat](https://github.com/gravyboat)|27
|[@nmadhok](https://github.com/nmadhok)|24
|[@noelmcloughlin](https://github.com/noelmcloughlin)|18
-
|[@myii](https://github.com/myii)|18
|[@whiteinge](https://github.com/whiteinge)|17
|[@ross-p](https://github.com/ross-p)|13
|[@daks](https://github.com/daks)|10
@@ -46,6 +46,7 @@ Avatar|Contributor|Contributions
|[@malept](https://github.com/malept)|2
|[@meganlkm](https://github.com/meganlkm)|2
|[@garrettw](https://github.com/garrettw)|2
+
|[@ErisDS](https://github.com/ErisDS)|2
|[@myoung34](https://github.com/myoung34)|2
|[@bebosudo](https://github.com/bebosudo)|1
|[@aanriot](https://github.com/aanriot)|1
@@ -59,7 +60,6 @@ Avatar|Contributor|Contributions
|[@czarneckid](https://github.com/czarneckid)|1
|[@statik](https://github.com/statik)|1
|[@ekristen](https://github.com/ekristen)|1
-
|[@ErisDS](https://github.com/ErisDS)|1
|[@jeduardo](https://github.com/jeduardo)|1
|[@stromnet](https://github.com/stromnet)|1
|[@bsdlp](https://github.com/bsdlp)|1
@@ -77,4 +77,4 @@ Avatar|Contributor|Contributions
---
-Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2019-09-01.
+Auto-generated by a [forked version](https://github.com/myii/maintainer) of [gaocegege/maintainer](https://github.com/gaocegege/maintainer) on 2019-10-10.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6f9710b..fb466b3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [2.3.1](https://github.com/saltstack-formulas/nginx-formula/compare/v2.3.0...v2.3.1) (2019-10-10)
+
+
+### Bug Fixes
+
+* **certificates.sls:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/nginx-formula/commit/bedc1b6))
+* **map.jinja:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/nginx-formula/commit/0772d8a))
+* **pkg.sls:** fix `salt-lint` errors ([](https://github.com/saltstack-formulas/nginx-formula/commit/06d055e))
+
+
+### Continuous Integration
+
+* **kitchen:** change `log_level` to `debug` instead of `info` ([](https://github.com/saltstack-formulas/nginx-formula/commit/671a4ce))
+* **kitchen:** install required packages to bootstrapped `opensuse` [skip ci] ([](https://github.com/saltstack-formulas/nginx-formula/commit/17291a0))
+* **kitchen:** use bootstrapped `opensuse` images until `2019.2.2` [skip ci] ([](https://github.com/saltstack-formulas/nginx-formula/commit/a39e124))
+* **platform:** add `arch-base-latest` ([](https://github.com/saltstack-formulas/nginx-formula/commit/c921086))
+* **yamllint:** add rule `empty-values` & use new `yaml-files` setting ([](https://github.com/saltstack-formulas/nginx-formula/commit/3d48b1b))
+* merge travis matrix, add `salt-lint` & `rubocop` to `lint` job ([](https://github.com/saltstack-formulas/nginx-formula/commit/08ce3ed))
+* use `dist: bionic` & apply `opensuse-leap-15` SCP error workaround ([](https://github.com/saltstack-formulas/nginx-formula/commit/8ddb921))
+
+
+### Documentation
+
+* **pillar.example:** fix TOFS comment to explain the default path [skip ci] ([](https://github.com/saltstack-formulas/nginx-formula/commit/714f547)), closes [/github.com/saltstack-formulas/libvirt-formula/pull/60#issuecomment-537965254](https://github.com//github.com/saltstack-formulas/libvirt-formula/pull/60/issues/issuecomment-537965254) [/github.com/saltstack-formulas/libvirt-formula/pull/60#issuecomment-537988138](https://github.com//github.com/saltstack-formulas/libvirt-formula/pull/60/issues/issuecomment-537988138)
+
# [2.3.0](https://github.com/saltstack-formulas/nginx-formula/compare/v2.2.1...v2.3.0) (2019-09-01)
diff --git a/FORMULA b/FORMULA
index ac7bf6c..d8c1ac1 100644
--- a/FORMULA
+++ b/FORMULA
@@ -1,7 +1,7 @@
name: nginx
os: Debian, Ubuntu, RedHat, Fedora, CentOS, Suse, openSUSE
os_family: Debian, RedHat, Suse
-version: 2.3.0
+version: 2.3.1
release: 1
minimum_version: 2017.3
summary: nginx formula
diff --git a/Gemfile b/Gemfile
index 3b36de3..5a232b6 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,6 +1,7 @@
-source "https://rubygems.org"
+# frozen_string_literal: true
+
+source 'https://rubygems.org'
gem 'kitchen-docker', '>= 2.9'
-gem 'kitchen-salt', '>= 0.6.0'
gem 'kitchen-inspec', '>= 1.1'
-
+gem 'kitchen-salt', '>= 0.6.0'
diff --git a/bin/kitchen b/bin/kitchen
index 1cd44f3..dcfdb4c 100755
--- a/bin/kitchen
+++ b/bin/kitchen
@@ -8,22 +8,25 @@
# this file is here to facilitate running it.
#
-require "pathname"
-ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
- Pathname.new(__FILE__).realpath)
+require 'pathname'
+ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
+ Pathname.new(__FILE__).realpath)
-bundle_binstub = File.expand_path("../bundle", __FILE__)
+bundle_binstub = File.expand_path('bundle', __dir__)
if File.file?(bundle_binstub)
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
load(bundle_binstub)
else
- abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
-Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
+ abort(
+ 'Your `bin/bundle` was not generated by Bundler, '\
+ 'so this binstub cannot run. Replace `bin/bundle` by running '\
+ '`bundle binstubs bundler --force`, then run this command again.'
+ )
end
end
-require "rubygems"
-require "bundler/setup"
+require 'rubygems'
+require 'bundler/setup'
-load Gem.bin_path("test-kitchen", "kitchen")
+load Gem.bin_path('test-kitchen', 'kitchen')
diff --git a/docs/AUTHORS.rst b/docs/AUTHORS.rst
index 6999781..80190a9 100644
--- a/docs/AUTHORS.rst
+++ b/docs/AUTHORS.rst
@@ -15,7 +15,10 @@ This list is sorted by the number of commits per contributor in *descending* ord
- Contributions
* - :raw-html-m2r:`
`
- `@aboe76 `_
- - 41
+ - 45
+ * - :raw-html-m2r:`
`
+ - `@myii `_
+ - 33
* - :raw-html-m2r:`
`
- `@gravyboat `_
- 27
@@ -25,9 +28,6 @@ This list is sorted by the number of commits per contributor in *descending* ord
* - :raw-html-m2r:`
`
- `@noelmcloughlin `_
- 18
- * - :raw-html-m2r:`
`
- - `@myii `_
- - 18
* - :raw-html-m2r:`
`
- `@whiteinge `_
- 17
@@ -139,6 +139,9 @@ This list is sorted by the number of commits per contributor in *descending* ord
* - :raw-html-m2r:`
`
- `@garrettw `_
- 2
+ * - :raw-html-m2r:`
`
+ - `@ErisDS `_
+ - 2
* - :raw-html-m2r:`
`
- `@myoung34 `_
- 2
@@ -178,9 +181,6 @@ This list is sorted by the number of commits per contributor in *descending* ord
* - :raw-html-m2r:`
`
- `@ekristen `_
- 1
- * - :raw-html-m2r:`
`
- - `@ErisDS `_
- - 1
* - :raw-html-m2r:`
`
- `@jeduardo `_
- 1
@@ -227,4 +227,4 @@ This list is sorted by the number of commits per contributor in *descending* ord
----
-Auto-generated by a `forked version `_ of `gaocegege/maintainer `_ on 2019-09-01.
+Auto-generated by a `forked version `_ of `gaocegege/maintainer `_ on 2019-10-10.
diff --git a/docs/CHANGELOG.rst b/docs/CHANGELOG.rst
index 2b479bb..2e44e77 100644
--- a/docs/CHANGELOG.rst
+++ b/docs/CHANGELOG.rst
@@ -2,6 +2,35 @@
Changelog
=========
+`2.3.1 `_ (2019-10-10)
+-------------------------------------------------------------------------------------------------------
+
+Bug Fixes
+^^^^^^^^^
+
+
+* **certificates.sls:** fix ``salt-lint`` errors (\ ` `_\ )
+* **map.jinja:** fix ``salt-lint`` errors (\ ` `_\ )
+* **pkg.sls:** fix ``salt-lint`` errors (\ ` `_\ )
+
+Continuous Integration
+^^^^^^^^^^^^^^^^^^^^^^
+
+
+* **kitchen:** change ``log_level`` to ``debug`` instead of ``info`` (\ ` `_\ )
+* **kitchen:** install required packages to bootstrapped ``opensuse`` [skip ci] (\ ` `_\ )
+* **kitchen:** use bootstrapped ``opensuse`` images until ``2019.2.2`` [skip ci] (\ ` `_\ )
+* **platform:** add ``arch-base-latest`` (\ ` `_\ )
+* **yamllint:** add rule ``empty-values`` & use new ``yaml-files`` setting (\ ` `_\ )
+* merge travis matrix, add ``salt-lint`` & ``rubocop`` to ``lint`` job (\ ` `_\ )
+* use ``dist: bionic`` & apply ``opensuse-leap-15`` SCP error workaround (\ ` `_\ )
+
+Documentation
+^^^^^^^^^^^^^
+
+
+* **pillar.example:** fix TOFS comment to explain the default path [skip ci] (\ ` `_\ ), closes `/github.com/saltstack-formulas/libvirt-formula/pull/60#issuecomment-537965254 `_ `/github.com/saltstack-formulas/libvirt-formula/pull/60#issuecomment-537988138 `_
+
`2.3.0 `_ (2019-09-01)
-------------------------------------------------------------------------------------------------------
diff --git a/nginx/certificates.sls b/nginx/certificates.sls
index e088dd2..d47f3e3 100644
--- a/nginx/certificates.sls
+++ b/nginx/certificates.sls
@@ -37,21 +37,21 @@ nginx_{{ domain }}_ssl_certificate:
- name: {{ certificates_path }}/{{ domain }}.crt
- makedirs: True
{% if salt['pillar.get']("nginx:certificates:{}:public_cert_pillar".format(domain)) %}
- - contents_pillar: {{salt['pillar.get']('nginx:certificates:{}:public_cert_pillar'.format(domain))}}
+ - contents_pillar: {{ salt['pillar.get']('nginx:certificates:{}:public_cert_pillar'.format(domain)) }}
{% else %}
- contents_pillar: nginx:certificates:{{ domain }}:public_cert
{% endif %}
- watch_in:
- service: nginx_service
-{% if salt['pillar.get']("nginx:certificates:{}:private_key".format(domain)) or salt['pillar.get']("nginx:certificates:{}:private_key_pillar".format(domain))%}
+{% if salt['pillar.get']("nginx:certificates:{}:private_key".format(domain)) or salt['pillar.get']("nginx:certificates:{}:private_key_pillar".format(domain)) %}
nginx_{{ domain }}_ssl_key:
file.managed:
- name: {{ certificates_path }}/{{ domain }}.key
- mode: 600
- makedirs: True
{% if salt['pillar.get']("nginx:certificates:{}:private_key_pillar".format(domain)) %}
- - contents_pillar: {{salt['pillar.get']('nginx:certificates:{}:private_key_pillar'.format(domain))}}
+ - contents_pillar: {{ salt['pillar.get']('nginx:certificates:{}:private_key_pillar'.format(domain)) }}
{% else %}
- contents_pillar: nginx:certificates:{{ domain }}:private_key
{% endif %}
diff --git a/nginx/map.jinja b/nginx/map.jinja
index 3d9f84b..1c0adae 100644
--- a/nginx/map.jinja
+++ b/nginx/map.jinja
@@ -172,26 +172,26 @@
{% if 'user' not in nginx.server.config %}
{% do nginx.server.config.update({
'user': nginx.lookup.webuser,
-})%}
+}) %}
{% endif %}
{% if 'pid' not in nginx.server.config and 'pid_file' in nginx.lookup %}
{% do nginx.server.config.update({
'pid': nginx.lookup.pid_file,
-})%}
+}) %}
{% endif %}
{% if salt['grains.get']('os_family') == 'RedHat' %}
{% do nginx.passenger.update({
'passenger_root': '/usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini',
'passenger_instance_registry_dir': '/var/run/passenger-instreg',
-})%}
+}) %}
{% if 'osfinger' in grains and salt['grains.get']('osfinger') == 'CentOS-6' %}
{% do nginx.server.config.update({
'pid': '/var/run/nginx.pid',
- })%}
+ }) %}
{% do nginx.passenger.update({
'passenger_root': '/usr/lib/ruby/1.8/phusion_passenger/locations.ini',
- })%}
+ }) %}
{% endif %}
{% endif %}
diff --git a/nginx/pkg.sls b/nginx/pkg.sls
index 280c8be..11d91ec 100644
--- a/nginx/pkg.sls
+++ b/nginx/pkg.sls
@@ -146,7 +146,7 @@ nginx_phusionpassenger_yum_repo:
- humanname: nginx phusionpassenger repo
- baseurl: 'https://oss-binaries.phusionpassenger.com/yum/passenger/el/$releasever/$basearch'
- repo_gpgcheck: 1
- - gpgcheck: 0
+ - gpgcheck: 0
- gpgkey: 'https://packagecloud.io/gpg.key'
- enabled: True
- sslverify: 1