Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhancement of the Packer FMT + Packer Validate Hooks #4

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 0 additions & 13 deletions .bandit.yml

This file was deleted.

25 changes: 0 additions & 25 deletions .flake8

This file was deleted.

3 changes: 0 additions & 3 deletions .gitignore

This file was deleted.

10 changes: 0 additions & 10 deletions .isort.cfg

This file was deleted.

10 changes: 0 additions & 10 deletions .mdl_config.json

This file was deleted.

148 changes: 14 additions & 134 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,135 +1,15 @@
---
default_language_version:
# force all unspecified python hooks to run python3
python: python3

repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
hooks:
- id: check-case-conflict
- id: check-executables-have-shebangs
- id: check-json
- id: check-merge-conflict
- id: check-toml
- id: check-xml
- id: debug-statements
- id: detect-aws-credentials
args:
- --allow-missing-credentials
- id: detect-private-key
- id: end-of-file-fixer
exclude: files/(issue|motd)
- id: mixed-line-ending
args:
- --fix=lf
- id: pretty-format-json
args:
- --autofix
- id: requirements-txt-fixer
- id: trailing-whitespace

# Text file hooks
- repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.26.0
hooks:
- id: markdownlint
args:
- --config=.mdl_config.json
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v2.2.1
hooks:
- id: prettier
- repo: https://github.com/adrienverge/yamllint
rev: v1.26.0
hooks:
- id: yamllint
args:
- --strict

# Shell script hooks
- repo: https://github.com/lovesegfault/beautysh
rev: 6.0.1
hooks:
- id: beautysh
args:
- --indent-size
- '2'
- repo: https://github.com/detailyang/pre-commit-shell
rev: 1.0.5
hooks:
- id: shell-lint

# Python hooks
- repo: https://github.com/PyCQA/bandit
rev: 1.7.0
hooks:
- id: bandit
args:
- --config=.bandit.yml
- repo: https://github.com/psf/black
rev: 20.8b1
hooks:
- id: black
- repo: https://gitlab.com/pycqa/flake8
rev: 3.8.4
hooks:
- id: flake8
additional_dependencies:
- flake8-docstrings
- repo: https://github.com/PyCQA/isort
rev: 5.7.0
hooks:
- id: isort
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v0.800
hooks:
- id: mypy
- repo: https://github.com/asottile/pyupgrade
rev: v2.10.0
hooks:
- id: pyupgrade

# Ansible hooks
- repo: https://github.com/ansible-community/ansible-lint
# This is intentionally being held back because of issues in v5 per
# https://github.com/cisagov/skeleton-ansible-role/issues/69
rev: v4.3.7
hooks:
- id: ansible-lint
# files: molecule/default/playbook.yml

# Terraform hooks
- repo: https://github.com/antonbabenko/pre-commit-terraform
rev: v1.45.0
hooks:
- id: terraform_fmt
# There are ongoing issues with how this command works. This issue
# documents the core issue:
# https://github.com/hashicorp/terraform/issues/21408
# We have seen issues primarily with proxy providers and Terraform code
# that uses remote state. The PR
# https://github.com/hashicorp/terraform/pull/24887
# has been approved and is part of the 0.13 release to resolve the issue
# with remote states.
# The PR
# https://github.com/hashicorp/terraform/pull/24896
# is a proprosed fix to deal with `terraform validate` with proxy
# providers (among other configurations).
# We have decided to disable the terraform_validate hook until the issues
# above have been resolved, which we hope will be with the release of
# Terraform 0.13.
# - id: terraform_validate

# Docker hooks
- repo: https://github.com/IamTheFij/docker-pre-commit
rev: v2.0.0
hooks:
- id: docker-compose-check

# Packer hooks
- repo: https://github.com/cisagov/pre-commit-packer
rev: v0.0.2
hooks:
- id: packer_validate
- id: packer_fmt
- repo: git://github.com/pre-commit/pre-commit-hooks
rev: v3.4.0
hooks:
- id: check-yaml
- id: end-of-file-fixer
- id: trailing-whitespace
- id: check-case-conflict
- id: check-merge-conflict
- id: check-executables-have-shebangs
- repo: git://github.com/jumanjihouse/pre-commit-hooks
rev: 2.1.5
hooks:
- id: shfmt
args: ['-l', '-i', '2', '-ci', '-sr', '-w']
23 changes: 10 additions & 13 deletions .pre-commit-hooks.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
---
- id: packer_validate
name: Packer Validate
description: This hook runs `packer validate` on appropriate files.
entry: hooks/packer_validate.sh
- id: packer_fmt
name: Packer fmt
description: Rewrites all Packer configuration files to a canonical format.
entry: packer_fmt.sh
language: script
files: (packer\.json|\.pkr\.hcl)$
pass_filenames: true
always_run: true

- id: packer_fmt
name: Packer Format
description: This hook runs `packer fmt` on appropriate files.
entry: hooks/packer_fmt.sh
- id: packer_validate
name: Packer validate
description: Validates all Packer configuration files.
require_serial: true
entry: packer_validate.sh
language: script
files: (\.pkr\.hcl)$
pass_filenames: true
files: (packer\.json|\.pkr\.hcl)$
7 changes: 0 additions & 7 deletions .prettierignore

This file was deleted.

7 changes: 0 additions & 7 deletions .yamllint

This file was deleted.

Loading