Unverified Commit c19e835a authored by Christian Rebischke's avatar Christian Rebischke Committed by GitHub
Browse files

Merge pull request #58 from shibumi/shibumi/add-more-github-ci-workflows

add more ci workflows
parents 3f202663 ed2c614d
...@@ -4,14 +4,56 @@ on: [push, pull_request] ...@@ -4,14 +4,56 @@ on: [push, pull_request]
jobs: jobs:
vagrant-validation: vagrant-validation:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- name: install packer - name: install packer
run: run: ./generic-ci.sh install-packer
./generic-ci.sh install
- name: verify packer configuration - name: verify local.json
run: run: ./generic-ci.sh verify-local
./generic-ci.sh verify
- name: verify vagrant.json
run: ./generic-ci.sh verify-official
python-syntax-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: install flake8
run: ./generic-ci.sh install-flake8
- name: run flake8 checks
run: ./generic-ci.sh flake8
python-format-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: install yapf
run: ./generic-ci.sh install-yapf
- name: run yapf checks
run: ./generic-ci.sh yapf
shell-syntax-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: run shellcheck
run: ./generic-ci.sh shellcheck
shell-format-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: install-shfmt
run: ./generic-ci.sh install-shfmt
- name: run shfmt checks
run: ./generic-ci.sh shfmt
...@@ -3,7 +3,7 @@ set -x ...@@ -3,7 +3,7 @@ set -x
case $1 in case $1 in
install) install-packer)
PACKER_CURRENT_VERSION="$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')" PACKER_CURRENT_VERSION="$(curl -s https://checkpoint-api.hashicorp.com/v1/check/packer | jq -r -M '.current_version')"
PACKER_URL="https://releases.hashicorp.com/packer/$PACKER_CURRENT_VERSION/packer_${PACKER_CURRENT_VERSION}_linux_amd64.zip" PACKER_URL="https://releases.hashicorp.com/packer/$PACKER_CURRENT_VERSION/packer_${PACKER_CURRENT_VERSION}_linux_amd64.zip"
PACKER_SHA256="https://releases.hashicorp.com/packer/$PACKER_CURRENT_VERSION/packer_${PACKER_CURRENT_VERSION}_SHA256SUMS" PACKER_SHA256="https://releases.hashicorp.com/packer/$PACKER_CURRENT_VERSION/packer_${PACKER_CURRENT_VERSION}_SHA256SUMS"
...@@ -20,13 +20,48 @@ case $1 in ...@@ -20,13 +20,48 @@ case $1 in
grep linux_amd64 "packer_${PACKER_CURRENT_VERSION}_SHA256SUMS" > packer_SHA256SUM_linux_amd64 grep linux_amd64 "packer_${PACKER_CURRENT_VERSION}_SHA256SUMS" > packer_SHA256SUM_linux_amd64
sha256sum --check --status packer_SHA256SUM_linux_amd64 sha256sum --check --status packer_SHA256SUM_linux_amd64
unzip "packer_${PACKER_CURRENT_VERSION}_linux_amd64.zip" unzip "packer_${PACKER_CURRENT_VERSION}_linux_amd64.zip"
./packer --version
;; ;;
verify) install-shfmt)
./packer --version curl -L https://github.com/mvdan/sh/releases/download/v2.6.4/shfmt_v2.6.4_linux_amd64 -o shfmt
chmod +x ./shfmt
;;
install-yapf)
pip3 install yapf --user
;;
install-flake8)
pip3 install flake8 --user
;;
verify-official)
jq ".\"post-processors\"[0] |= map(select(.\"type\" != \"vagrant-cloud\"))" vagrant.json | ./packer validate -var "iso_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/archlinux-$(date +'%Y.%m').01-x86_64.iso" -var "iso_checksum_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/sha1sums.txt" - jq ".\"post-processors\"[0] |= map(select(.\"type\" != \"vagrant-cloud\"))" vagrant.json | ./packer validate -var "iso_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/archlinux-$(date +'%Y.%m').01-x86_64.iso" -var "iso_checksum_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/sha1sums.txt" -
;; ;;
verify-local)
jq ".\"post-processors\"[0] |= map(select(.\"type\" != \"vagrant-cloud\"))" local.json | ./packer validate -var "iso_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/archlinux-$(date +'%Y.%m').01-x86_64.iso" -var "iso_checksum_url=https://downloads.archlinux.de/iso/$(date +'%Y.%m').01/sha1sums.txt" -
;;
# We use + instead of \; here because find doesn't pass
# the exit code through when used with \;
shellcheck)
find . -iname "*.sh" -exec shellcheck {} +
;;
shfmt)
find . -iname "*.sh" -exec ./shfmt -i 2 -ci -d {} +
;;
yapf)
find . -iname "*.py" -exec python3 -m yapf -d {} +
;;
flake8)
find . -iname "*.py" -exec python3 -m flake8 {} +
;;
*) *)
exit 1 exit 1
;; ;;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment