From 2322ff67fd8089ab6df8d56d796532f42bbfa06a Mon Sep 17 00:00:00 2001
From: Imran Iqbal <iqbalmy@hotmail.com>
Date: Tue, 10 Sep 2019 05:53:26 +0100
Subject: [PATCH] ci(yamllint): add rule `empty-values` & use new `yaml-files`
setting
* Semi-automated using https://github.com/myii/ssf-formula/pull/27
* Fix (or ignore) errors shown below:
```bash
mysql-formula$ yamllint -s .
./mysql/osfamilymap.yaml
46:14 error empty value in block mapping (empty-values)
66:14 error empty value in block mapping (empty-values)
67:14 error empty value in block mapping (empty-values)
68:16 error empty value in block mapping (empty-values)
69:17 error empty value in block mapping (empty-values)
70:16 error empty value in block mapping (empty-values)
87:7 error empty value in block mapping (empty-values)
216:14 error empty value in block mapping (empty-values)
217:17 error empty value in block mapping (empty-values)
./mysql/defaults.yaml
29:10 error empty value in block mapping (empty-values)
30:11 error empty value in block mapping (empty-values)
```
---
.travis.yml | 6 +++---
.yamllint | 16 +++++++++++++++-
mysql/defaults.yaml | 5 +++--
mysql/osfamilymap.yaml | 10 +++++++++-
4 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 5b346ef..2b11670 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -56,9 +56,9 @@ jobs:
before_install: skip
script:
# Install and run `yamllint`
- - pip install --user yamllint
- # yamllint disable-line rule:line-length
- - yamllint -s . .yamllint pillar.example test/salt/pillar/mysql.sls
+ # Need at least `v1.17.0` for the `yaml-files` setting
+ - pip install --user yamllint>=1.17.0
+ - yamllint -s .
# Install and run `commitlint`
- npm install @commitlint/config-conventional -D
- npm install @commitlint/travis-cli -D
diff --git a/.yamllint b/.yamllint
index 8cee7a4..d333099 100644
--- a/.yamllint
+++ b/.yamllint
@@ -6,12 +6,26 @@ extends: default
# Files to ignore completely
# 1. All YAML files under directory `node_modules/`, introduced during the Travis run
-# 2. Any YAML files using Jinja (result in `yamllint` syntax errors)
+# 2. Any SLS files under directory `test/`, which are actually state files
+# 3. Any YAML files using Jinja (result in `yamllint` syntax errors)
ignore: |
node_modules/
+ test/**/states/**/*.sls
mysql/supported_sections.yaml
+yaml-files:
+ # Default settings
+ - '*.yaml'
+ - '*.yml'
+ - .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`)
diff --git a/mysql/defaults.yaml b/mysql/defaults.yaml
index 0e96037..83f556d 100644
--- a/mysql/defaults.yaml
+++ b/mysql/defaults.yaml
@@ -26,8 +26,9 @@ mysql:
macos:
userhomes: /Users
- user:
- group:
+ # `user` and `group` are set from `map.jinja`
+ # user: ~
+ # group: ~
dl:
tmpdir: /tmp/mysqltmp
prefix: /usr/local
diff --git a/mysql/osfamilymap.yaml b/mysql/osfamilymap.yaml
index 9e032db..7730afb 100644
--- a/mysql/osfamilymap.yaml
+++ b/mysql/osfamilymap.yaml
@@ -43,7 +43,7 @@ RedHat:
config:
file: /etc/my.cnf
sections:
- client:
+ client: {}
mysqld_safe:
log_error: /var/log/mysql/mysqld.log
pid_file: /var/run/mysql/mysqld.pid
@@ -63,11 +63,14 @@ Suse:
client:
socket: /var/run/mysql/mysql.sock
mysqld:
+ # Empty values below to be resolved, disabling the rule in the meantime
+ # yamllint disable rule:empty-values
port:
user:
socket:
datadir:
tmpdir:
+ # yamllint enable rule:empty-values
innodb_file_format: Barracuda
innodb_file_per_table: 'ON'
server-id: 1
@@ -84,6 +87,8 @@ Arch:
clientpkg: mariadb-clients
service: mysqld
pythonpkg: mysql-python
+ # Empty value below to be resolved, disabling the rule in the meantime
+ # yamllint disable-line rule:empty-values
dev:
config:
@@ -213,8 +218,11 @@ FreeBSD:
client:
socket: /tmp/mysql.sock
mysqld:
+ # Empty values below to be resolved, disabling the rule in the meantime
+ # yamllint disable rule:empty-values
user:
datadir:
+ # yamllint enable rule:empty-values
socket: /tmp/mysql.sock
skip-external-locking: noarg_present
key_buffer_size: 16M
--
GitLab