Add "ymlfmt" for enforcing consistent YAML whitespace

This commit is contained in:
Tianon Gravi 2017-11-28 13:50:23 -08:00
parent 14c4a7cfee
commit 9efeec18b6
18 changed files with 218 additions and 191 deletions

View File

@ -1,12 +1,13 @@
language: go
sudo: false
language: bash
services: docker
install:
- .travis/get-markdownfmt.sh
- docker pull tianon/markdownfmt
- docker pull tianon/ymlfmt
script:
- .travis/check-markdownfmt.sh
- .travis/check-ymlfmt.sh
- .travis/check-short.sh
- .travis/check-required-files.sh
- .travis/check-pr-no-readme.sh

View File

@ -8,11 +8,11 @@ files="$(
-name '*.md' \
-not -name 'README.md' \
\) -exec test -s '{}' ';' -print0 \
| xargs -0 markdownfmt -l)"
| xargs -0 ./markdownfmt.sh -l)"
if [ "$files" ]; then
echo >&2 'Need markdownfmt:'
echo >&2 "$files"
echo >&2
echo "$files" | xargs markdownfmt -d >&2
echo "$files" | xargs ./markdownfmt.sh -d >&2
exit 1
fi

22
.travis/check-ymlfmt.sh Executable file
View File

@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -Eeuo pipefail
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")/.."
files="$(find -name '*.yml')"
need=()
needdiff=
for f in $files; do
fdiff="$(./ymlfmt.sh -d "$f")"
if [ -n "$fdiff" ]; then
need+=( "$f" )
needdiff+="$fdiff"$'\n'
fi
done
if [ -n "$needdiff" ]; then
echo >&2 'Need ymlfmt:'
echo >&2 "${need[@]}"
echo >&2
echo >&2 -n "$needdiff"
exit 1
fi

View File

@ -1,4 +1,4 @@
#!/bin/bash
set -e
exec docker run -i --rm -v "$PWD":/scratch -w /scratch tianon/markdownfmt markdownfmt "$@"
exec docker run -i --rm -v "$PWD":/scratch -w /scratch -u "$(id -u):$(id -g)" tianon/markdownfmt markdownfmt "$@"

View File

@ -22,7 +22,7 @@ services:
restart: always
environment:
# @see https://phabricator.wikimedia.org/source/mediawiki/browse/master/includes/DefaultSettings.php
MYSQL_DATABASE: 'my_wiki'
MYSQL_USER: 'wikiuser'
MYSQL_PASSWORD: 'example'
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
MYSQL_DATABASE: my_wiki
MYSQL_USER: wikiuser
MYSQL_PASSWORD: example
MYSQL_RANDOM_ROOT_PASSWORD: yes

4
ymlfmt.sh Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
set -e
exec docker run -i --rm -v "$PWD":/scratch -w /scratch -u "$(id -u):$(id -g)" tianon/ymlfmt ymlfmt "$@"