This #awesome-ci-based[1] repository holds a collection of cross-platform compatible Makefiles for various different types of projects, which will add the very basic and best-practice linting and file checking to your code.
The default provided stage is lint[2] and will ensure your code is clean, git-diff
safe and according to best practices (depending on whatever linter configuration is provided).
- [1] See all awesome-ci projects here: https://github.com/topics/awesome-ci
- [2] Some Makefiles might provide more targets (e.g.:
test,gen, ...).
| Project type | Description |
|---|---|
| generic | Makefile for generic projects |
| terraform-module | Makefile for Terraform module (for Terraform < 0.12 and >= 0.12) |
- Docker
- GNU Make
Copy the appropriate Makefile to your project root and you're all set. The only required dependencies are Docker and GNU Make.
The general usage will always be:
$ make lintFor a more specific description see the project's README.md in each collection.
Related #awesome-ci Docker images
Dependency-less Makefiles made possible by the following Docker images.
| Docker image | Type | Description |
|---|---|---|
| awesome-ci | Basic | Tools for git, file and static source code analysis |
| file-lint | Basic | Basic source code analysis |
| jsonlint | Basic | Lint JSON files |
| yamllint | Basic | Lint Yaml files |
| ansible | Ansible | Multiple versions of Ansible |
| ansible-lint | Ansible | Lint Ansible |
| gofmt | Go | Format Go source code |
| golint | Go | Lint Go code |
| eslint | Javascript | Lint Javascript code |
| checkmake | Make | Lint Makefiles |
| phpcs | PHP | PHPCodeSniffer and Code Beautifier and Fixer |
| black | Python | The uncompromising Python code formatter |
| pycodestyle | Python | Python style guide checker |
| pylint | Python | Python source code, bug and quality checker |
| terraform-docs | Terraform | Terraform doc generator (TF 0.12 ready) |
| terragrunt | Terraform | Terragrunt and Terraform |
See guidelines here: CONTRIBUTING
Copyright (c) 2019 cytopia