-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: introduce usage of template formula & introduce plugin support
- Loading branch information
Showing
37 changed files
with
829 additions
and
273 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# -*- coding: utf-8 -*- | ||
# vim: ft=yaml | ||
--- | ||
# General overrides used across formulas in the org | ||
Layout/LineLength: | ||
# Increase from default of `80` | ||
# Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`) | ||
Max: 88 | ||
Metrics/BlockLength: | ||
ExcludedMethods: | ||
- control | ||
- describe | ||
# Increase from default of `25` | ||
Max: 30 | ||
|
||
# Any offenses that should be fixed, e.g. collected via. `rubocop --auto-gen-config` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# -*- coding: utf-8 -*- | ||
# vim: ft=yaml | ||
--- | ||
exclude_paths: [] | ||
rules: {} | ||
skip_list: | ||
# Using `salt-lint` for linting other files as well, such as Jinja macros/templates | ||
- 205 # Use ".sls" as a Salt State file extension | ||
# Skipping `207` and `208` because `210` is sufficient, at least for the time-being | ||
# I.e. Allows 3-digit unquoted codes to still be used, such as `644` and `755` | ||
- 207 # File modes should always be encapsulated in quotation marks | ||
- 208 # File modes should always contain a leading zero | ||
tags: [] | ||
verbosity: 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
# -*- coding: utf-8 -*- | ||
# vim: ft=yaml | ||
--- | ||
## Machine config | ||
os: 'linux' | ||
arch: 'amd64' | ||
dist: 'bionic' | ||
version: '~> 1.0' | ||
|
||
## Language and cache config | ||
language: 'ruby' | ||
cache: 'bundler' | ||
|
||
## Services config | ||
services: | ||
- docker | ||
|
||
## Script to run for the test stage | ||
script: | ||
- 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 | ||
- env: Lint | ||
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`) | ||
- language: 'node_js' | ||
node_js: 'lts/*' | ||
env: 'Lint' | ||
name: 'Lint: salt-lint, yamllint, shellcheck & commitlint' | ||
before_install: 'skip' | ||
script: | ||
# Install and run `salt-lint` | ||
- pip install --user salt-lint | ||
- git ls-files -- '*.sls' '*.jinja' '*.j2' '*.tmpl' '*.tst' | ||
| xargs salt-lint | ||
# Install and run `yamllint` | ||
# Need at least `v1.17.0` for the `yaml-files` setting | ||
- pip install --user yamllint>=1.17.0 | ||
- yamllint -s . | ||
# Run `shellcheck` (already pre-installed in Travis) | ||
- shellcheck --version | ||
- git ls-files -- '*.sh' '*.bash' '*.ksh' | ||
| xargs shellcheck | ||
# Install and run `commitlint` | ||
- npm i -D @commitlint/config-conventional | ||
@commitlint/travis-cli | ||
- commitlint-travis | ||
# Run the `rubocop` linter in a separate job that is allowed to fail | ||
# Once these lint errors are fixed, this can be merged into a single job | ||
- language: node_js | ||
node_js: lts/* | ||
env: Lint_rubocop | ||
name: 'Lint: rubocop' | ||
before_install: skip | ||
script: | ||
# Install and run `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-master-py3 | ||
- env: INSTANCE=default-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 | ||
|
||
## Define the release stage that runs `semantic-release` | ||
- stage: 'release' | ||
language: 'node_js' | ||
node_js: 'lts/*' | ||
env: 'Release' | ||
name: 'Run semantic-release inc. file updates to AUTHORS, CHANGELOG & FORMULA' | ||
before_install: 'skip' | ||
script: | ||
# Update `AUTHORS.md` | ||
- export MAINTAINER_TOKEN=${GH_TOKEN} | ||
- go get github.com/myii/maintainer | ||
- maintainer contributor | ||
|
||
# Install all dependencies required for `semantic-release` | ||
- npm i -D @semantic-release/changelog@3 | ||
@semantic-release/exec@3 | ||
@semantic-release/git@7 | ||
deploy: | ||
provider: 'script' | ||
# Opt-in to `dpl v2` to complete the Travis build config validation (beta) | ||
# * https://docs.travis-ci.com/user/build-config-validation | ||
# Deprecated `skip_cleanup` can now be avoided, `cleanup: false` is by default | ||
edge: true | ||
# Run `semantic-release` | ||
script: 'npx semantic-release@15.14' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# -*- coding: utf-8 -*- | ||
# vim: ft=yaml | ||
--- | ||
# Extend the `default` configuration provided by `yamllint` | ||
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 | ||
ignore: | | ||
node_modules/ | ||
test/**/states/**/*.sls | ||
.kitchen/ | ||
yaml-files: | ||
# Default settings | ||
- '*.yaml' | ||
- '*.yml' | ||
- .salt-lint | ||
- .yamllint | ||
# SaltStack Formulas additional settings | ||
- '*.example' | ||
- test/**/*.sls | ||
|
||
rules: | ||
empty-values: | ||
forbid-in-block-mappings: true | ||
forbid-in-flow-mappings: true | ||
line-length: | ||
# Increase from default of `80` | ||
# Based on https://github.com/PyCQA/flake8-bugbear#opinionated-warnings (`B950`) | ||
max: 88 | ||
octal-values: | ||
forbid-implicit-octal: true | ||
forbid-explicit-octal: true |
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners | ||
|
||
# SECTION: Owner(s) for everything in the repo, unless a later match takes precedence | ||
# FILE PATTERN OWNER(S) | ||
* @joni1993 | ||
|
||
# SECTION: Owner(s) for specific directories | ||
# FILE PATTERN OWNER(S) | ||
|
||
# SECTION: Owner(s) for files/directories related to `semantic-release` | ||
# FILE PATTERN OWNER(S) | ||
/.github/workflows/ @saltstack-formulas/ssf | ||
/bin/kitchen @saltstack-formulas/ssf | ||
/docs/AUTHORS.rst @saltstack-formulas/ssf | ||
/docs/CHANGELOG.rst @saltstack-formulas/ssf | ||
/docs/TOFS_pattern.rst @saltstack-formulas/ssf | ||
/template/libsaltcli.jinja @saltstack-formulas/ssf | ||
/template/libtofs.jinja @saltstack-formulas/ssf | ||
/test/integration/**/inspec.yml @saltstack-formulas/ssf | ||
/test/integration/**/README.md @saltstack-formulas/ssf | ||
/.gitignore @saltstack-formulas/ssf | ||
/.cirrus.yml @saltstack-formulas/ssf | ||
/.rubocop.yml @saltstack-formulas/ssf | ||
/.salt-lint @saltstack-formulas/ssf | ||
/.travis.yml @saltstack-formulas/ssf | ||
/.yamllint @saltstack-formulas/ssf | ||
/AUTHORS.md @saltstack-formulas/ssf | ||
/CHANGELOG.md @saltstack-formulas/ssf | ||
/CODEOWNERS @saltstack-formulas/ssf | ||
/commitlint.config.js @saltstack-formulas/ssf | ||
/FORMULA @saltstack-formulas/ssf | ||
/Gemfile @saltstack-formulas/ssf | ||
/Gemfile.lock @saltstack-formulas/ssf | ||
/kitchen.yml @saltstack-formulas/ssf | ||
/pre-commit_semantic-release.sh @saltstack-formulas/ssf | ||
/release-rules.js @saltstack-formulas/ssf | ||
/release.config.js @saltstack-formulas/ssf | ||
|
||
# SECTION: Owner(s) for specific files | ||
# FILE PATTERN OWNER(S) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
name: netbox | ||
os: Debian, Ubuntu | ||
os_family: Debian | ||
version: 0.8 | ||
release: 1 | ||
minimum_version: 2017.3 | ||
summary: netbox formula | ||
description: Formula to use to install and configure netbox | ||
top_level_dir: netbox |
Oops, something went wrong.