{"id":13602433,"url":"https://github.com/devops-infra/docker-terragrunt","last_synced_at":"2026-03-16T22:05:28.550Z","repository":{"id":36965113,"uuid":"212298733","full_name":"devops-infra/docker-terragrunt","owner":"devops-infra","description":"Dockerized framework with Terraform, Terragrunt, Python, Make, Docker, Git, and all needed components to easily manage cloud infrastructure.","archived":false,"fork":false,"pushed_at":"2026-01-12T20:51:26.000Z","size":3515,"stargazers_count":173,"open_issues_count":1,"forks_count":36,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-13T01:30:28.041Z","etag":null,"topics":["automation","aws","aws-cli","azure","christophshyper","devops","devops-workflow","docker","framework","gcp","git","hcl","hclfmt","iaac","iac","makefile","python3","terraform","terraform-scripts","terragrunt"],"latest_commit_sha":null,"homepage":"https://shyper.pro","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devops-infra.png","metadata":{"files":{"readme":"README.docker-terragrunt-fmt.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-10-02T09:15:55.000Z","updated_at":"2026-01-12T20:50:53.000Z","dependencies_parsed_at":"2023-02-19T12:01:08.160Z","dependency_job_id":"6d445ff5-10d0-47ad-83ed-d4e45f6f9d4c","html_url":"https://github.com/devops-infra/docker-terragrunt","commit_stats":null,"previous_names":[],"tags_count":272,"template":false,"template_full_name":null,"purl":"pkg:github/devops-infra/docker-terragrunt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devops-infra%2Fdocker-terragrunt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devops-infra%2Fdocker-terragrunt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devops-infra%2Fdocker-terragrunt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devops-infra%2Fdocker-terragrunt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devops-infra","download_url":"https://codeload.github.com/devops-infra/docker-terragrunt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devops-infra%2Fdocker-terragrunt/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28480556,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","aws","aws-cli","azure","christophshyper","devops","devops-workflow","docker","framework","gcp","git","hcl","hclfmt","iaac","iac","makefile","python3","terraform","terraform-scripts","terragrunt"],"created_at":"2024-08-01T18:01:23.049Z","updated_at":"2026-01-16T18:13:02.566Z","avatar_url":"https://github.com/devops-infra.png","language":"Makefile","funding_links":[],"categories":["azure","Makefile"],"sub_categories":[],"readme":"# Docker image for `terragrunt-fmt`\n\n[![Build Status](https://travis-ci.com/cytopia/docker-terragrunt-fmt.svg?branch=master)](https://travis-ci.com/cytopia/docker-terragrunt-fmt)\n[![Tag](https://img.shields.io/github/tag/cytopia/docker-terragrunt-fmt.svg)](https://github.com/cytopia/docker-terragrunt-fmt/releases)\n[![](https://images.microbadger.com/badges/version/cytopia/terragrunt-fmt:latest.svg?\u0026kill_cache=1)](https://microbadger.com/images/cytopia/terragrunt-fmt:latest \"terragrunt-fmt\")\n[![](https://images.microbadger.com/badges/image/cytopia/terragrunt-fmt:latest.svg?\u0026kill_cache=1)](https://microbadger.com/images/cytopia/terragrunt-fmt:latest \"terragrunt-fmt\")\n[![](https://img.shields.io/docker/pulls/cytopia/terragrunt-fmt.svg)](https://hub.docker.com/r/cytopia/terragrunt-fmt)\n[![](https://img.shields.io/badge/github-cytopia%2Fdocker--terragrunt--fmt-red.svg)](https://github.com/cytopia/docker-terragrunt-fmt \"github.com/cytopia/docker-terragrunt-fmt\")\n[![License](https://img.shields.io/badge/license-MIT-%233DA639.svg)](https://opensource.org/licenses/MIT)\n\n\u003e #### All [#awesome-ci](https://github.com/topics/awesome-ci) Docker images\n\u003e\n\u003e [ansible][ansible-git-lnk] **•**\n\u003e [ansible-lint][alint-git-lnk] **•**\n\u003e [awesome-ci][aci-git-lnk] **•**\n\u003e [black][black-git-lnk] **•**\n\u003e [checkmake][cm-git-lnk] **•**\n\u003e [eslint][elint-git-lnk] **•**\n\u003e [file-lint][flint-git-lnk] **•**\n\u003e [gofmt][gfmt-git-lnk] **•**\n\u003e [goimports][gimp-git-lnk] **•**\n\u003e [golint][glint-git-lnk] **•**\n\u003e [jsonlint][jlint-git-lnk] **•**\n\u003e [phpcbf][pcbf-git-lnk] **•**\n\u003e [phpcs][pcs-git-lnk] **•**\n\u003e [phplint][plint-git-lnk] **•**\n\u003e [php-cs-fixer][pcsf-git-lnk] **•**\n\u003e [pycodestyle][pycs-git-lnk] **•**\n\u003e [pylint][pylint-git-lnk] **•**\n\u003e [terraform-docs][tfdocs-git-lnk] **•**\n\u003e [terragrunt][tg-git-lnk] **•**\n\u003e [terragrunt-fmt][tgfmt-git-lnk] **•**\n\u003e [yamlfmt][yfmt-git-lnk] **•**\n\u003e [yamllint][ylint-git-lnk]\n\n\u003e #### All [#awesome-ci](https://github.com/topics/awesome-ci) Makefiles\n\u003e\n\u003e Visit **[cytopia/makefiles](https://github.com/cytopia/makefiles)** for seamless project integration, minimum required best-practice code linting and CI.\n\nView **[Dockerfile](https://github.com/cytopia/docker-terragrunt-fmt/blob/master/Dockerfile)** on GitHub.\n\n[![Docker hub](http://dockeri.co/image/cytopia/terragrunt-fmt?\u0026kill_cache=1)](https://hub.docker.com/r/cytopia/terragrunt-fmt)\n\nTiny Alpine-based multistage-build dockerized version of [Terraform](https://github.com/hashicorp/terraform)\u003csup\u003e[1]\u003c/sup\u003e with the ability to do `terraform fmt` on Terragrunt files (`.hcl`).\nThis is achieved by creating a temporary file within the container with an `.tf` extension and then running `terraform fmt` on it.\nAdditionally the wrapper has been extended with a **`-ignore` argument** to be able to ignore files and directory or wildcards.\nThe image is built nightly against multiple stable versions and pushed to Dockerhub.\n\n\u003csub\u003e[1] Official project: https://github.com/hashicorp/terraform\u003c/sub\u003e\n\n\n## Available Docker image versions\n\nThe following Docker image tags are rolling releases and built and updated nightly. This means\nthey always contain the latest stable version as shown below.\n\n| Docker tag   | Terraform version      |\n|--------------|------------------------|\n| `latest`     | latest stable          |\n| `0.12`       | latest stable `0.12.x` |\n\n\n## Docker mounts\n\nThe working directory inside the Docker container is **`/data/`** and should be mounted to your local filesystem where your Terragrant project resides.\n(See [Examples](#examples) for mount location usage.)\n\n\n## Usage\n```\n$ docker run --rm cytopia/terragrunt-fmt --help\n```\n```\nUsage: cytopia/terragrunt-fmt [options] [DIR]\n       cytopia/terragrunt-fmt --help\n       cytopia/terragrunt-fmt --version\n\n       Rewrites all Terragrunt configuration files to a canonical format. All\n       hcl configuration files (.hcl) are updated.\n\n       If DIR is not specified then the current working directory will be used.\n\nOptions:\n\n  -list=true     List files whose formatting differs\n\n  -write=false   Don't write to source files\n                 (always disabled if using -check)\n\n  -diff          Display diffs of formatting changes\n\n  -check         Check if the input is formatted. Exit status will be 0 if all\n                 input is properly formatted and non-zero otherwise.\n\n  -recursive     Also process files in subdirectories. By default, only the\n                 given directory (or current directory) is processed.\n\n  -ignore=a,b    Comma separated list of paths to ignore.\n                 The wildcard character '*' is supported.\n```\n\n\n## Examples\n\n### List filenames that need to be fixed\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -list\n\n[INFO] Finding files: for file in *.hcl; do\nterraform fmt -list=true -write=true validate.hcl\n../tmp/validate.hcl.tf\n```\n\n### Show diff of files that need to be fixed\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -diff\n\n[INFO] Finding files: for file in *.hcl; do\nterraform fmt -list=true -write=false -diff validate.hcl\n../tmp/validate.hcl.tf\n--- old/../tmp/validate.hcl.tf\n+++ new/../tmp/validate.hcl.tf\n@@ -35,9 +35,9 @@\n # which is not being used (disable_init)\n remote_state {\n   backend = \"s3\"\n-  config   = {\n-    bucket   = \"none\"\n-    key     = \"none\"\n+  config = {\n+    bucket = \"none\"\n+    key    = \"none\"\n     region = \"eu-central-1\"\n   }\n```\n\n### Fix files\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -write\n\n[INFO] Finding files: for file in *.hcl; do\nterraform fmt -list=true -write=true validate.hcl\n../tmp/validate.hcl.tf\n```\n\n### Fix files and show diff\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -write -diff\n\n[INFO] Finding files: for file in *.hcl; do\nterraform fmt -list=true -write=false -diff validate.hcl\n../tmp/validate.hcl.tf\n--- old/../tmp/validate.hcl.tf\n+++ new/../tmp/validate.hcl.tf\n@@ -35,9 +35,9 @@\n # which is not being used (disable_init)\n remote_state {\n   backend = \"s3\"\n-  config   = {\n-    bucket   = \"none\"\n-    key     = \"none\"\n+  config = {\n+    bucket = \"none\"\n+    key    = \"none\"\n     region = \"eu-central-1\"\n   }\n```\n\n### List filenames that need to be fixed recursively\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -list -recursive\n\n[INFO] Finding files: find . -name '*.hcl' -type f\nterraform fmt -list=true -write=false ./prod/eu-central-1/microservice/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\nterraform fmt -list=true -write=false ./prod/eu-central-1/infra/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n```\n\n### Show diff of files that need to be fixed recursively\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -diff -recursive\n\n[INFO] Finding files: find . -name '*.hcl' -type f\nterraform fmt -list=true -write=false -diff ./prod/eu-central-1/microservice/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n--- old/../tmp/terragrunt.hcl.tf\n+++ new/../tmp/terragrunt.hcl.tf\n@@ -1,5 +1,5 @@\n terraform {\n-   source  = \"github.com/cytopia/terraform-aws-iam-cross-account?ref=v0.1.3\"\n+  source  = \"github.com/cytopia/terraform-aws-iam-cross-account?ref=v0.1.3\"\n }\nterraform fmt -list=true -write=false -diff ./prod/eu-central-1/infra/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n--- old/../tmp/terragrunt.hcl.tf\n+++ new/../tmp/terragrunt.hcl.tf\n@@ -1,5 +1,5 @@\n terraform {\n-   source  = \"github.com/cytopia/terraform-aws-iam-cross-account?ref=v0.1.3\"\n+  source  = \"github.com/cytopia/terraform-aws-iam-cross-account?ref=v0.1.3\"\n }\n```\n\n### Fix recursively\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -write -recursive\n\n[INFO] Finding files: find . -name '*.hcl' -type f\nterraform fmt -list=true -write=true ./prod/eu-central-1/microservice/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\nterraform fmt -list=true -write=true ./prod/eu-central-1/infra/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n```\n\n### Ignore files and directories\n\nIgnore all files named `terragrunt.hcl`.\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -recursive -ignore=*terragrunt.hcl\n\n[INFO] Finding files: find . -not \\( -path \"./*terragrunt.hcl*\" \\) -name '*.hcl' -type f\nterraform fmt -list=true -write=false ./aws/validate.hcl\n../tmp/validate.hcl.tf\n```\n\nIgnore all directories named `dev/` and everything inside.\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -recursive -ignore=*/dev/\n\n[INFO] Finding files: find . -not \\( -path \"./*/dev/*\" \\) -name '*.hcl' -type f\nterraform fmt -list=true -write=false ./prod/eu-central-1/microservice/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\nterraform fmt -list=true -write=false ./prod/eu-central-1/infra/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n```\n\nIgnore all directories named `dev/` and `testing/` and everything inside.\n```bash\n$ docker run --rm -v $(pwd):/data cytopia/terragrunt-fmt -recursive -ignore=*/dev/,*/testing/\n\n[INFO] Finding files: find . -not \\( -path \"./*/dev/*\" -o -path \"./*/testing/*\" \\) -name '*.hcl' -type f\nterraform fmt -list=true -write=false ./prod/eu-central-1/microservice/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\nterraform fmt -list=true -write=false ./prod/eu-central-1/infra/terragrunt.hcl\n../tmp/terragrunt.hcl.tf\n```\n\n\n## Project and CI integration\n\n#### Makefile\nYou can add the following Makefile to your project for easy linting anf fixing of Terragrunt `.hcl` files.\n```make\nifneq (,)\n.error This Makefile requires GNU Make.\nendif\n\n.PHONY: help lint fix _pull\n\nCURRENT_DIR = $(dir $(abspath $(lastword $(MAKEFILE_LIST))))\n\n# Adjust according to your needs\nIGNORE      = */.terragrunt-cache/,*/.terraform/\nFMT_VERSION = latest\n\nhelp:\n\t@echo \"help    Show this help\"\n\t@echo \"lint    Exit \u003e 0 if any files have wrong formatting\"\n\t@echo \"fix     Fix all .hcl files\"\n\nlint: _pull\n\tdocker run --rm -v $(CURRENT_DIR):/data cytopia/terragrunt-fmt:$(FMT_VERSION) \\\n\t\t-check -diff -recursive -ignore='$(IGNORE)'\n\nfix: _pull\n\tdocker run --rm -v $(CURRENT_DIR):/data cytopia/terragrunt-fmt:$(FMT_VERSION) \\\n\t\t-write -diff -recursive -ignore='$(IGNORE)'\n\n_pull:\n\tdocker pull cytopia/terragrunt-fmt:$(FMT_VERSION)\n```\n\n#### Travis CI integration\nWith the above Makefile in place, you can easily add a Travis CI rule to ensure the Terragrunt code\nuses correct coding style.\n\n```yml\n---\nsudo: required\nlanguage: minimal\nservices:\n  - docker\nscript:\n  - make lint\n```\n\n\n## Related [#awesome-ci](https://github.com/topics/awesome-ci) projects\n\n### Docker images\n\nSave yourself from installing lot's of dependencies and pick a dockerized version of your favourite\nlinter below for reproducible local or remote CI tests:\n\n| GitHub | DockerHub | Type | Description |\n|--------|-----------|------|-------------|\n| [awesome-ci][aci-git-lnk]        | [![aci-hub-img]][aci-hub-lnk]         | Basic      | Tools for git, file and static source code analysis |\n| [file-lint][flint-git-lnk]       | [![flint-hub-img]][flint-hub-lnk]     | Basic      | Baisc source code analysis |\n| [ansible][ansible-git-lnk]       | [![ansible-hub-img]][ansible-hub-lnk] | Ansible    | Multiple versions and flavours of Ansible |\n| [ansible-lint][alint-git-lnk]    | [![alint-hub-img]][alint-hub-lnk]     | Ansible    | Lint Ansible |\n| [gofmt][gfmt-git-lnk]            | [![gfmt-hub-img]][gfmt-hub-lnk]       | Go         | Format Go source code **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [goimports][gimp-git-lnk]        | [![gimp-hub-img]][gimp-hub-lnk]       | Go         | Format Go source code **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [golint][glint-git-lnk]          | [![glint-hub-img]][glint-hub-lnk]     | Go         | Lint Go code |\n| [eslint][elint-git-lnk]          | [![elint-hub-img]][elint-hub-lnk]     | Javascript | Lint Javascript code |\n| [jsonlint][jlint-git-lnk]        | [![jlint-hub-img]][jlint-hub-lnk]     | JSON       | Lint JSON files **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [checkmake][cm-git-lnk]          | [![cm-hub-img]][cm-hub-lnk]           | Make       | Lint Makefiles |\n| [phpcbf][pcbf-git-lnk]           | [![pcbf-hub-img]][pcbf-hub-lnk]       | PHP        | PHP Code Beautifier and Fixer |\n| [phpcs][pcs-git-lnk]             | [![pcs-hub-img]][pcs-hub-lnk]         | PHP        | PHP Code Sniffer |\n| [phplint][plint-git-lnk]         | [![plint-hub-img]][plint-hub-lnk]     | PHP        | PHP Code Linter **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [php-cs-fixer][pcsf-git-lnk]     | [![pcsf-hub-img]][pcsf-hub-lnk]       | PHP        | PHP Coding Standards Fixer |\n| [black][black-git-lnk]           | [![black-hub-img]][black-hub-lnk]     | Python     | The uncompromising Python code formatter |\n| [pycodestyle][pycs-git-lnk]      | [![pycs-hub-img]][pycs-hub-lnk]       | Python     | Python style guide checker |\n| [pylint][pylint-git-lnk]         | [![pylint-hub-img]][pylint-hub-lnk]   | Python     | Python source code, bug and quality checker |\n| [terraform-docs][tfdocs-git-lnk] | [![tfdocs-hub-img]][tfdocs-hub-lnk]   | Terraform  | Terraform doc generator (TF 0.12 ready) **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [terragrunt][tg-git-lnk]         | [![tg-hub-img]][tg-hub-lnk]           | Terraform  | Terragrunt and Terraform |\n| [terragrunt-fmt][tgfmt-git-lnk]  | [![tgfmt-hub-img]][tgfmt-hub-lnk]     | Terraform  | `terraform fmt` for Terragrunt files **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [yamlfmt][yfmt-git-lnk]          | [![yfmt-hub-img]][yfmt-hub-lnk]       | Yaml       | Format Yaml files **\u003csup\u003e[1]\u003c/sup\u003e** |\n| [yamllint][ylint-git-lnk]        | [![ylint-hub-img]][ylint-hub-lnk]     | Yaml       | Lint Yaml files |\n\n\u003e **\u003csup\u003e[1]\u003c/sup\u003e** Uses a shell wrapper to add **enhanced functionality** not available by original project.\n\n[aci-git-lnk]: https://github.com/cytopia/awesome-ci\n[aci-hub-img]: https://img.shields.io/docker/pulls/cytopia/awesome-ci.svg\n[aci-hub-lnk]: https://hub.docker.com/r/cytopia/awesome-ci\n\n[flint-git-lnk]: https://github.com/cytopia/docker-file-lint\n[flint-hub-img]: https://img.shields.io/docker/pulls/cytopia/file-lint.svg\n[flint-hub-lnk]: https://hub.docker.com/r/cytopia/file-lint\n\n[jlint-git-lnk]: https://github.com/cytopia/docker-jsonlint\n[jlint-hub-img]: https://img.shields.io/docker/pulls/cytopia/jsonlint.svg\n[jlint-hub-lnk]: https://hub.docker.com/r/cytopia/jsonlint\n\n[ansible-git-lnk]: https://github.com/cytopia/docker-ansible\n[ansible-hub-img]: https://img.shields.io/docker/pulls/cytopia/ansible.svg\n[ansible-hub-lnk]: https://hub.docker.com/r/cytopia/ansible\n\n[alint-git-lnk]: https://github.com/cytopia/docker-ansible-lint\n[alint-hub-img]: https://img.shields.io/docker/pulls/cytopia/ansible-lint.svg\n[alint-hub-lnk]: https://hub.docker.com/r/cytopia/ansible-lint\n\n[gfmt-git-lnk]: https://github.com/cytopia/docker-gofmt\n[gfmt-hub-img]: https://img.shields.io/docker/pulls/cytopia/gofmt.svg\n[gfmt-hub-lnk]: https://hub.docker.com/r/cytopia/gofmt\n\n[gimp-git-lnk]: https://github.com/cytopia/docker-goimports\n[gimp-hub-img]: https://img.shields.io/docker/pulls/cytopia/goimports.svg\n[gimp-hub-lnk]: https://hub.docker.com/r/cytopia/goimports\n\n[glint-git-lnk]: https://github.com/cytopia/docker-golint\n[glint-hub-img]: https://img.shields.io/docker/pulls/cytopia/golint.svg\n[glint-hub-lnk]: https://hub.docker.com/r/cytopia/golint\n\n[elint-git-lnk]: https://github.com/cytopia/docker-eslint\n[elint-hub-img]: https://img.shields.io/docker/pulls/cytopia/eslint.svg\n[elint-hub-lnk]: https://hub.docker.com/r/cytopia/eslint\n\n[cm-git-lnk]: https://github.com/cytopia/docker-checkmake\n[cm-hub-img]: https://img.shields.io/docker/pulls/cytopia/checkmake.svg\n[cm-hub-lnk]: https://hub.docker.com/r/cytopia/checkmake\n\n[pcbf-git-lnk]: https://github.com/cytopia/docker-phpcbf\n[pcbf-hub-img]: https://img.shields.io/docker/pulls/cytopia/phpcbf.svg\n[pcbf-hub-lnk]: https://hub.docker.com/r/cytopia/phpcbf\n\n[pcs-git-lnk]: https://github.com/cytopia/docker-phpcs\n[pcs-hub-img]: https://img.shields.io/docker/pulls/cytopia/phpcs.svg\n[pcs-hub-lnk]: https://hub.docker.com/r/cytopia/phpcs\n\n[plint-git-lnk]: https://github.com/cytopia/docker-phplint\n[plint-hub-img]: https://img.shields.io/docker/pulls/cytopia/phplint.svg\n[plint-hub-lnk]: https://hub.docker.com/r/cytopia/phplint\n\n[pcsf-git-lnk]: https://github.com/cytopia/docker-php-cs-fixer\n[pcsf-hub-img]: https://img.shields.io/docker/pulls/cytopia/php-cs-fixer.svg\n[pcsf-hub-lnk]: https://hub.docker.com/r/cytopia/php-cs-fixer\n\n[black-git-lnk]: https://github.com/cytopia/docker-black\n[black-hub-img]: https://img.shields.io/docker/pulls/cytopia/black.svg\n[black-hub-lnk]: https://hub.docker.com/r/cytopia/black\n\n[pycs-git-lnk]: https://github.com/cytopia/docker-pycodestyle\n[pycs-hub-img]: https://img.shields.io/docker/pulls/cytopia/pycodestyle.svg\n[pycs-hub-lnk]: https://hub.docker.com/r/cytopia/pycodestyle\n\n[pylint-git-lnk]: https://github.com/cytopia/docker-pylint\n[pylint-hub-img]: https://img.shields.io/docker/pulls/cytopia/pylint.svg\n[pylint-hub-lnk]: https://hub.docker.com/r/cytopia/pylint\n\n[tfdocs-git-lnk]: https://github.com/cytopia/docker-terraform-docs\n[tfdocs-hub-img]: https://img.shields.io/docker/pulls/cytopia/terraform-docs.svg\n[tfdocs-hub-lnk]: https://hub.docker.com/r/cytopia/terraform-docs\n\n[tg-git-lnk]: https://github.com/cytopia/docker-terragrunt\n[tg-hub-img]: https://img.shields.io/docker/pulls/cytopia/terragrunt.svg\n[tg-hub-lnk]: https://hub.docker.com/r/cytopia/terragrunt\n\n[tgfmt-git-lnk]: https://github.com/cytopia/docker-terragrunt-fmt\n[tgfmt-hub-img]: https://img.shields.io/docker/pulls/cytopia/terragrunt-fmt.svg\n[tgfmt-hub-lnk]: https://hub.docker.com/r/cytopia/terragrunt-fmt\n\n[yfmt-git-lnk]: https://github.com/cytopia/docker-yamlfmt\n[yfmt-hub-img]: https://img.shields.io/docker/pulls/cytopia/yamlfmt.svg\n[yfmt-hub-lnk]: https://hub.docker.com/r/cytopia/yamlfmt\n\n[ylint-git-lnk]: https://github.com/cytopia/docker-yamllint\n[ylint-hub-img]: https://img.shields.io/docker/pulls/cytopia/yamllint.svg\n[ylint-hub-lnk]: https://hub.docker.com/r/cytopia/yamllint\n\n\n### Makefiles\n\nVisit **[cytopia/makefiles](https://github.com/cytopia/makefiles)** for dependency-less, seamless project integration and minimum required best-practice code linting for CI.\nThe provided Makefiles will only require GNU Make and Docker itself removing the need to install anything else.\n\n\n## License\n\n**[MIT License](LICENSE)**\n\nCopyright (c) 2019 [cytopia](https://github.com/cytopia)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevops-infra%2Fdocker-terragrunt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevops-infra%2Fdocker-terragrunt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevops-infra%2Fdocker-terragrunt/lists"}