* Automated using https://github.com/myii/ssf-formula/pull/61tags/v1.2.1
@@ -1,68 +0,0 @@ | |||
--- | |||
name: Bug report | |||
about: Create a report to help us improve | |||
title: '[BUG] ' | |||
labels: 'bug' | |||
assignees: '' | |||
--- | |||
<!-- | |||
Notes: | |||
1. Only post _bug reports_ here. | |||
2. Use the appropriate template for _feature requests_. | |||
3. Please direct questions to the [`#formulas` channel on Slack](https://saltstackcommunity.slack.com/messages/C7LG8SV54/), which is bridged to `#saltstack-formulas` on Freenode. | |||
--> | |||
## Your setup | |||
### Formula commit hash / release tag | |||
<!-- Please specify the formula's commit hash and/or release tag that you are using. --> | |||
### Versions reports (master & minion) | |||
<!-- Provided by running `salt --versions-report`. Please also mention any differences in master/minion versions. --> | |||
### Pillar / config used | |||
<!-- Provide links to the SLS files and/or relevant configs (be sure to remove sensitive info). --> | |||
--- | |||
## Bug details | |||
### Describe the bug | |||
<!-- A clear and concise description of what the bug is. --> | |||
### Steps to reproduce the bug | |||
<!-- Include debug logs if possible and relevant, e.g. using `salt-minion -l debug`. --> | |||
<!-- Alternatively, linking to Kitchen debug logs is useful, e.g. via. Travis CI. --> | |||
<!-- Most useful is providing a failing InSpec test, which can be used to verify any proposed fix. --> | |||
### Expected behaviour | |||
<!-- A clear and concise description of what you expected to happen. --> | |||
### Attempts to fix the bug | |||
<!-- Please mention any attempts you have made to fix the bug and what the results were. --> | |||
### Additional context | |||
<!-- Add any other context about the problem here. --> | |||
--- | |||
### Meta: How can this template be improved? | |||
<!-- Feel free to suggest how this template can be improved. --> | |||
@@ -1,42 +0,0 @@ | |||
--- | |||
name: Feature request | |||
about: Suggest an idea for this project | |||
title: '[FEATURE] ' | |||
labels: 'enhancement' | |||
assignees: '' | |||
--- | |||
<!-- | |||
Notes: | |||
1. Only post _feature requests_ here. | |||
2. Use the appropriate template for _bug reports_. | |||
3. Please direct questions to the [`#formulas` channel on Slack](https://saltstackcommunity.slack.com/messages/C7LG8SV54/), which is bridged to `#saltstack-formulas` on Freenode. | |||
--> | |||
### Is your feature request related to a problem? | |||
<!-- A clear and concise description of what the problem is. --> | |||
### Describe the solution you'd like | |||
<!-- A clear and concise description of what you want to happen. --> | |||
### Describe alternatives you've considered | |||
<!-- Describe any alternative solutions or features you've considered. --> | |||
### Additional context | |||
<!-- Add any other context about the feature request here. --> | |||
--- | |||
### Meta: How can this template be improved? | |||
<!-- Feel free to suggest how this template can be improved. --> | |||
@@ -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` |
@@ -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 |
@@ -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` |
@@ -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' |
@@ -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') |