Last active
April 29, 2021 12:51
-
-
Save codrcodz/4508473b3bcf3aa5e10ea58791e5ecff to your computer and use it in GitHub Desktop.
tflint Metadata Parser
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env bash | |
| metadata_format="v0.1.0"; | |
| releases_metadata_file_prefix="releases_metadata"; | |
| # Function ensures all deps are in $PATH before continuing | |
| dependency_check() { | |
| deps="git go yq"; | |
| for dep in ${deps}; do | |
| hash "${dep}" &>/dev/null \ | |
| || | |
| { \ | |
| echo -e "\n[FAIL] Could not find dep ($dep) in \$PATH; exiting." 1>&2; | |
| exit 1; | |
| }; | |
| done; | |
| }; | |
| # Function that uses `git` commit metadata to parse and sort commits by timestamp into an autosorted bash array | |
| # Parses `tflint` version tag info from `git` tags to identify each `tflint` release | |
| # Parses compatible `terraform` version from output of `go list` for each `tflint` release | |
| # Uses parsed metadata to print YAML file contents with relevant release metadata for each `tflint` release | |
| parse_metadata() { | |
| { \ | |
| echo "---" \ | |
| && echo "metadata_format: \"${1}\"" \ | |
| && echo "tflint_releases:" \ | |
| && while read -r timestamp _ tag hash; do \ | |
| releases_array[${timestamp}]="${tag} ${hash}"; \ | |
| done < <( \ | |
| git \ | |
| for-each-ref \ | |
| --format='%(*committerdate:raw)%(committerdate:raw) %(refname) %(*objectname) %(objectname)' \ | |
| refs/tags \ | |
| 2>/dev/null\ | |
| ) \ | |
| && while read -r tag hash; do \ | |
| git checkout -q "${hash}" \ | |
| && echo " - tflint_version: \"${tag//*v}\"" \ | |
| && echo " terraform_version: \"$( \ | |
| go \ | |
| list \ | |
| -m \ | |
| -f '{{ .Version }}' github.com/hashicorp/terraform \ | |
| 2>/dev/null \ | |
| || \ | |
| echo \ | |
| "unknown"; \ | |
| )\""; \ | |
| done < <( \ | |
| for release in "${releases_array[@]}"; do \ | |
| echo "${release}"; \ | |
| done; \ | |
| ) \ | |
| && echo "..."; | |
| } \ | |
| || | |
| { \ | |
| echo -e "\n[FAIL] Failed to parse tflint release metadata and/or output metadata to yaml file; exiting." 1>&2; | |
| exit 1; | |
| }; | |
| }; | |
| # Converts valid YAML file contents into valid JSON file contents | |
| convert_yaml_to_json() { | |
| if [[ -f "${1}" ]]; then | |
| yq '.' "${1}" \ | |
| || | |
| { \ | |
| echo -e "\n[FAIL] Failed to convert YAML file (${1}) to JSON format; exiting." 1>&2; | |
| exit 1; | |
| }; | |
| else | |
| echo -e "\n[FAIL] YAML file (${1}) not available for conversion to JSON format; exiting." 1>&2; | |
| exit 1; | |
| fi; | |
| }; | |
| # Converts valid YAML file contents into valid Bash file contents | |
| # To use, download file and `source ${filename}` to ingest variables | |
| # Avoids associative arrays for compatibility purposes (Only requires Bash v3+) | |
| convert_yaml_to_bash() { | |
| { \ | |
| echo -e "#!/usr/bin/env bash\n" \ | |
| && echo "metadata_format=\"${2}\"" \ | |
| && arrays=( \ | |
| "tflint_version" \ | |
| "terraform_version" \ | |
| ) \ | |
| && for array in "${arrays[@]}"; do | |
| echo "declare -a ${array}"; | |
| while read -r line; do | |
| if [[ "${line}" =~ ${array}:.* ]]; then | |
| echo "${array}+=${BASH_REMATCH//$array: }"; | |
| fi | |
| done < "${1}"; | |
| done; | |
| } \ | |
| || | |
| { \ | |
| echo -e "\n[FAIL] Failed to convert YAML file (${1}) to Bash format; exiting." 1>&2; | |
| exit 1; | |
| }; | |
| }; | |
| # Main function that executes the functions defined elsewhere | |
| # Builds YAML file first, then bases JSON and Bash files contents on YAML file contents | |
| main() { | |
| { \ | |
| dependency_check \ | |
| && echo -e "\n[INFO] Creating YAML version of releases metadata file (${1}.yaml)." \ | |
| && parse_metadata "${2}" > "./${1}.yaml" \ | |
| && echo -e "\n[INFO] Creating JSON version of releases metadata file (${1}.json)." \ | |
| && convert_yaml_to_json "./${1}.yaml" > "./${1}.json" \ | |
| && echo -e "\n[INFO] Creating Bash version of releases metadata file (${1}.bash)." \ | |
| && convert_yaml_to_bash "./${1}.yaml" "${2}" > "./${1}.bash"; | |
| } \ | |
| || | |
| { \ | |
| echo -e "\n[FAIL] Failed to create one or more releases metadata files; exiting." 1>&2; | |
| exit 1; | |
| }; | |
| }; | |
| main "${releases_metadata_file_prefix}" "${metadata_format}"; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [codz@dt tflint]$ | |
| [codz@dt tflint]$ cd .release_metadata/ | |
| [codz@dt .release_metadata]$ tree | |
| . | |
| ├── metadata_parser.sh | |
| ├── releases_metadata.bash | |
| ├── releases_metadata.json | |
| └── releases_metadata.yaml | |
| 0 directories, 4 files | |
| [codz@dt .release_metadata]$ ./metadata_parser.sh | |
| [INFO] Creating YAML version of releases metadata file (releases_metadata.yaml). | |
| [INFO] Creating JSON version of releases metadata file (releases_metadata.json). | |
| [INFO] Creating Bash version of releases metadata file (releases_metadata.bash). | |
| [codz@dt .release_metadata]$ cat releases_metadata.* | |
| #!/usr/bin/env bash | |
| metadata_format="v0.1.0" | |
| declare -a tflint_version | |
| tflint_version+="0.1.0" | |
| tflint_version+="0.2.0" | |
| tflint_version+="0.2.1" | |
| tflint_version+="0.3.0" | |
| tflint_version+="0.3.1" | |
| tflint_version+="0.3.2" | |
| tflint_version+="0.3.3" | |
| tflint_version+="0.3.4" | |
| tflint_version+="0.3.5" | |
| tflint_version+="0.3.6" | |
| tflint_version+="0.4.0" | |
| tflint_version+="0.4.1" | |
| tflint_version+="0.4.2" | |
| tflint_version+="0.4.3" | |
| tflint_version+="0.5.0" | |
| tflint_version+="0.5.1" | |
| tflint_version+="0.5.2" | |
| tflint_version+="0.5.3" | |
| tflint_version+="0.5.4" | |
| tflint_version+="0.6.0" | |
| tflint_version+="0.7.0" | |
| tflint_version+="0.7.1" | |
| tflint_version+="0.7.2" | |
| tflint_version+="0.7.3" | |
| tflint_version+="0.7.4" | |
| tflint_version+="0.7.5" | |
| tflint_version+="0.7.6" | |
| tflint_version+="0.8.0" | |
| tflint_version+="0.8.1" | |
| tflint_version+="0.8.2" | |
| tflint_version+="0.8.3" | |
| tflint_version+="0.9.0" | |
| tflint_version+="0.9.1" | |
| tflint_version+="0.9.2" | |
| tflint_version+="0.9.3" | |
| tflint_version+="0.10.0" | |
| tflint_version+="0.10.1" | |
| tflint_version+="0.10.2" | |
| tflint_version+="0.10.3" | |
| tflint_version+="0.11.0" | |
| tflint_version+="0.11.1" | |
| tflint_version+="0.11.2" | |
| tflint_version+="0.12.0" | |
| tflint_version+="0.12.1" | |
| tflint_version+="0.13.0" | |
| tflint_version+="0.13.1" | |
| tflint_version+="0.13.2" | |
| tflint_version+="0.13.3" | |
| tflint_version+="0.13.4" | |
| tflint_version+="0.14.0" | |
| tflint_version+="0.15.0" | |
| tflint_version+="0.15.1" | |
| tflint_version+="0.15.2" | |
| tflint_version+="0.15.3" | |
| tflint_version+="0.15.4" | |
| tflint_version+="0.15.5" | |
| tflint_version+="0.16.0" | |
| tflint_version+="0.16.1" | |
| tflint_version+="0.16.2" | |
| tflint_version+="0.17.0" | |
| tflint_version+="0.18.0" | |
| tflint_version+="0.19.0" | |
| tflint_version+="0.19.1" | |
| tflint_version+="0.20.0" | |
| tflint_version+="0.20.1" | |
| tflint_version+="0.20.2" | |
| tflint_version+="0.20.3" | |
| tflint_version+="0.21.0" | |
| tflint_version+="0.22.0" | |
| tflint_version+="0.23.0" | |
| tflint_version+="0.23.1" | |
| tflint_version+="0.24.0" | |
| tflint_version+="0.24.1" | |
| tflint_version+="0.25.0" | |
| tflint_version+="0.26.0" | |
| tflint_version+="0.27.0" | |
| tflint_version+="0.28.0" | |
| declare -a terraform_version | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="unknown" | |
| terraform_version+="v0.12.0" | |
| terraform_version+="v0.12.0" | |
| terraform_version+="v0.12.1" | |
| terraform_version+="v0.12.3" | |
| terraform_version+="v0.12.3" | |
| terraform_version+="v0.12.5" | |
| terraform_version+="v0.12.6" | |
| terraform_version+="v0.12.6" | |
| terraform_version+="v0.12.6" | |
| terraform_version+="v0.12.7" | |
| terraform_version+="v0.12.7" | |
| terraform_version+="v0.12.8" | |
| terraform_version+="v0.12.8" | |
| terraform_version+="v0.12.9" | |
| terraform_version+="v0.12.9" | |
| terraform_version+="v0.12.10" | |
| terraform_version+="v0.12.15" | |
| terraform_version+="v0.12.15" | |
| terraform_version+="v0.12.17" | |
| terraform_version+="v0.12.18" | |
| terraform_version+="v0.12.18" | |
| terraform_version+="v0.12.20" | |
| terraform_version+="v0.12.21" | |
| terraform_version+="v0.12.21" | |
| terraform_version+="v0.12.23" | |
| terraform_version+="v0.12.24" | |
| terraform_version+="v0.12.24" | |
| terraform_version+="v0.12.24" | |
| terraform_version+="v0.12.25" | |
| terraform_version+="v0.12.25" | |
| terraform_version+="v0.12.26" | |
| terraform_version+="v0.12.28" | |
| terraform_version+="v0.12.28" | |
| terraform_version+="v0.13.0" | |
| terraform_version+="v0.13.0" | |
| terraform_version+="v0.13.2" | |
| terraform_version+="v0.13.2" | |
| terraform_version+="v0.13.3" | |
| terraform_version+="v0.13.4" | |
| terraform_version+="v0.13.5" | |
| terraform_version+="v0.14.2" | |
| terraform_version+="v0.14.3" | |
| terraform_version+="v0.14.3" | |
| terraform_version+="v0.14.5" | |
| terraform_version+="v0.14.5" | |
| terraform_version+="v0.14.7" | |
| terraform_version+="v0.14.9" | |
| terraform_version+="v0.15.0" | |
| terraform_version+="v0.15.0" | |
| { | |
| "metadata_format": "v0.1.0", | |
| "tflint_releases": [ | |
| { | |
| "tflint_version": "0.1.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.2.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.2.1", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.1", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.2", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.3", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.4", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.5", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.3.6", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.4.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.4.1", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.4.2", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.4.3", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.5.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.5.1", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.5.2", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.5.3", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.5.4", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.6.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.1", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.2", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.3", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.4", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.5", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.7.6", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.8.0", | |
| "terraform_version": "unknown" | |
| }, | |
| { | |
| "tflint_version": "0.8.1", | |
| "terraform_version": "v0.12.0" | |
| }, | |
| { | |
| "tflint_version": "0.8.2", | |
| "terraform_version": "v0.12.0" | |
| }, | |
| { | |
| "tflint_version": "0.8.3", | |
| "terraform_version": "v0.12.1" | |
| }, | |
| { | |
| "tflint_version": "0.9.0", | |
| "terraform_version": "v0.12.3" | |
| }, | |
| { | |
| "tflint_version": "0.9.1", | |
| "terraform_version": "v0.12.3" | |
| }, | |
| { | |
| "tflint_version": "0.9.2", | |
| "terraform_version": "v0.12.5" | |
| }, | |
| { | |
| "tflint_version": "0.9.3", | |
| "terraform_version": "v0.12.6" | |
| }, | |
| { | |
| "tflint_version": "0.10.0", | |
| "terraform_version": "v0.12.6" | |
| }, | |
| { | |
| "tflint_version": "0.10.1", | |
| "terraform_version": "v0.12.6" | |
| }, | |
| { | |
| "tflint_version": "0.10.2", | |
| "terraform_version": "v0.12.7" | |
| }, | |
| { | |
| "tflint_version": "0.10.3", | |
| "terraform_version": "v0.12.7" | |
| }, | |
| { | |
| "tflint_version": "0.11.0", | |
| "terraform_version": "v0.12.8" | |
| }, | |
| { | |
| "tflint_version": "0.11.1", | |
| "terraform_version": "v0.12.8" | |
| }, | |
| { | |
| "tflint_version": "0.11.2", | |
| "terraform_version": "v0.12.9" | |
| }, | |
| { | |
| "tflint_version": "0.12.0", | |
| "terraform_version": "v0.12.9" | |
| }, | |
| { | |
| "tflint_version": "0.12.1", | |
| "terraform_version": "v0.12.10" | |
| }, | |
| { | |
| "tflint_version": "0.13.0", | |
| "terraform_version": "v0.12.15" | |
| }, | |
| { | |
| "tflint_version": "0.13.1", | |
| "terraform_version": "v0.12.15" | |
| }, | |
| { | |
| "tflint_version": "0.13.2", | |
| "terraform_version": "v0.12.17" | |
| }, | |
| { | |
| "tflint_version": "0.13.3", | |
| "terraform_version": "v0.12.18" | |
| }, | |
| { | |
| "tflint_version": "0.13.4", | |
| "terraform_version": "v0.12.18" | |
| }, | |
| { | |
| "tflint_version": "0.14.0", | |
| "terraform_version": "v0.12.20" | |
| }, | |
| { | |
| "tflint_version": "0.15.0", | |
| "terraform_version": "v0.12.21" | |
| }, | |
| { | |
| "tflint_version": "0.15.1", | |
| "terraform_version": "v0.12.21" | |
| }, | |
| { | |
| "tflint_version": "0.15.2", | |
| "terraform_version": "v0.12.23" | |
| }, | |
| { | |
| "tflint_version": "0.15.3", | |
| "terraform_version": "v0.12.24" | |
| }, | |
| { | |
| "tflint_version": "0.15.4", | |
| "terraform_version": "v0.12.24" | |
| }, | |
| { | |
| "tflint_version": "0.15.5", | |
| "terraform_version": "v0.12.24" | |
| }, | |
| { | |
| "tflint_version": "0.16.0", | |
| "terraform_version": "v0.12.25" | |
| }, | |
| { | |
| "tflint_version": "0.16.1", | |
| "terraform_version": "v0.12.25" | |
| }, | |
| { | |
| "tflint_version": "0.16.2", | |
| "terraform_version": "v0.12.26" | |
| }, | |
| { | |
| "tflint_version": "0.17.0", | |
| "terraform_version": "v0.12.28" | |
| }, | |
| { | |
| "tflint_version": "0.18.0", | |
| "terraform_version": "v0.12.28" | |
| }, | |
| { | |
| "tflint_version": "0.19.0", | |
| "terraform_version": "v0.13.0" | |
| }, | |
| { | |
| "tflint_version": "0.19.1", | |
| "terraform_version": "v0.13.0" | |
| }, | |
| { | |
| "tflint_version": "0.20.0", | |
| "terraform_version": "v0.13.2" | |
| }, | |
| { | |
| "tflint_version": "0.20.1", | |
| "terraform_version": "v0.13.2" | |
| }, | |
| { | |
| "tflint_version": "0.20.2", | |
| "terraform_version": "v0.13.3" | |
| }, | |
| { | |
| "tflint_version": "0.20.3", | |
| "terraform_version": "v0.13.4" | |
| }, | |
| { | |
| "tflint_version": "0.21.0", | |
| "terraform_version": "v0.13.5" | |
| }, | |
| { | |
| "tflint_version": "0.22.0", | |
| "terraform_version": "v0.14.2" | |
| }, | |
| { | |
| "tflint_version": "0.23.0", | |
| "terraform_version": "v0.14.3" | |
| }, | |
| { | |
| "tflint_version": "0.23.1", | |
| "terraform_version": "v0.14.3" | |
| }, | |
| { | |
| "tflint_version": "0.24.0", | |
| "terraform_version": "v0.14.5" | |
| }, | |
| { | |
| "tflint_version": "0.24.1", | |
| "terraform_version": "v0.14.5" | |
| }, | |
| { | |
| "tflint_version": "0.25.0", | |
| "terraform_version": "v0.14.7" | |
| }, | |
| { | |
| "tflint_version": "0.26.0", | |
| "terraform_version": "v0.14.9" | |
| }, | |
| { | |
| "tflint_version": "0.27.0", | |
| "terraform_version": "v0.15.0" | |
| }, | |
| { | |
| "tflint_version": "0.28.0", | |
| "terraform_version": "v0.15.0" | |
| } | |
| ] | |
| } | |
| --- | |
| metadata_format: "v0.1.0" | |
| tflint_releases: | |
| - tflint_version: "0.1.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.2.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.2.1" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.1" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.2" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.3" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.4" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.5" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.3.6" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.4.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.4.1" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.4.2" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.4.3" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.5.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.5.1" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.5.2" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.5.3" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.5.4" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.6.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.1" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.2" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.3" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.4" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.5" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.7.6" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.8.0" | |
| terraform_version: "unknown" | |
| - tflint_version: "0.8.1" | |
| terraform_version: "v0.12.0" | |
| - tflint_version: "0.8.2" | |
| terraform_version: "v0.12.0" | |
| - tflint_version: "0.8.3" | |
| terraform_version: "v0.12.1" | |
| - tflint_version: "0.9.0" | |
| terraform_version: "v0.12.3" | |
| - tflint_version: "0.9.1" | |
| terraform_version: "v0.12.3" | |
| - tflint_version: "0.9.2" | |
| terraform_version: "v0.12.5" | |
| - tflint_version: "0.9.3" | |
| terraform_version: "v0.12.6" | |
| - tflint_version: "0.10.0" | |
| terraform_version: "v0.12.6" | |
| - tflint_version: "0.10.1" | |
| terraform_version: "v0.12.6" | |
| - tflint_version: "0.10.2" | |
| terraform_version: "v0.12.7" | |
| - tflint_version: "0.10.3" | |
| terraform_version: "v0.12.7" | |
| - tflint_version: "0.11.0" | |
| terraform_version: "v0.12.8" | |
| - tflint_version: "0.11.1" | |
| terraform_version: "v0.12.8" | |
| - tflint_version: "0.11.2" | |
| terraform_version: "v0.12.9" | |
| - tflint_version: "0.12.0" | |
| terraform_version: "v0.12.9" | |
| - tflint_version: "0.12.1" | |
| terraform_version: "v0.12.10" | |
| - tflint_version: "0.13.0" | |
| terraform_version: "v0.12.15" | |
| - tflint_version: "0.13.1" | |
| terraform_version: "v0.12.15" | |
| - tflint_version: "0.13.2" | |
| terraform_version: "v0.12.17" | |
| - tflint_version: "0.13.3" | |
| terraform_version: "v0.12.18" | |
| - tflint_version: "0.13.4" | |
| terraform_version: "v0.12.18" | |
| - tflint_version: "0.14.0" | |
| terraform_version: "v0.12.20" | |
| - tflint_version: "0.15.0" | |
| terraform_version: "v0.12.21" | |
| - tflint_version: "0.15.1" | |
| terraform_version: "v0.12.21" | |
| - tflint_version: "0.15.2" | |
| terraform_version: "v0.12.23" | |
| - tflint_version: "0.15.3" | |
| terraform_version: "v0.12.24" | |
| - tflint_version: "0.15.4" | |
| terraform_version: "v0.12.24" | |
| - tflint_version: "0.15.5" | |
| terraform_version: "v0.12.24" | |
| - tflint_version: "0.16.0" | |
| terraform_version: "v0.12.25" | |
| - tflint_version: "0.16.1" | |
| terraform_version: "v0.12.25" | |
| - tflint_version: "0.16.2" | |
| terraform_version: "v0.12.26" | |
| - tflint_version: "0.17.0" | |
| terraform_version: "v0.12.28" | |
| - tflint_version: "0.18.0" | |
| terraform_version: "v0.12.28" | |
| - tflint_version: "0.19.0" | |
| terraform_version: "v0.13.0" | |
| - tflint_version: "0.19.1" | |
| terraform_version: "v0.13.0" | |
| - tflint_version: "0.20.0" | |
| terraform_version: "v0.13.2" | |
| - tflint_version: "0.20.1" | |
| terraform_version: "v0.13.2" | |
| - tflint_version: "0.20.2" | |
| terraform_version: "v0.13.3" | |
| - tflint_version: "0.20.3" | |
| terraform_version: "v0.13.4" | |
| - tflint_version: "0.21.0" | |
| terraform_version: "v0.13.5" | |
| - tflint_version: "0.22.0" | |
| terraform_version: "v0.14.2" | |
| - tflint_version: "0.23.0" | |
| terraform_version: "v0.14.3" | |
| - tflint_version: "0.23.1" | |
| terraform_version: "v0.14.3" | |
| - tflint_version: "0.24.0" | |
| terraform_version: "v0.14.5" | |
| - tflint_version: "0.24.1" | |
| terraform_version: "v0.14.5" | |
| - tflint_version: "0.25.0" | |
| terraform_version: "v0.14.7" | |
| - tflint_version: "0.26.0" | |
| terraform_version: "v0.14.9" | |
| - tflint_version: "0.27.0" | |
| terraform_version: "v0.15.0" | |
| - tflint_version: "0.28.0" | |
| terraform_version: "v0.15.0" | |
| ... | |
| [codz@dt .release_metadata]$ shellcheck -f json metadata_parser.sh | |
| [] | |
| [codz@dt .release_metadata]$ shellcheck -V | |
| ShellCheck - shell script analysis tool | |
| version: 0.7.1 | |
| license: GNU General Public License, version 3 | |
| website: https://www.shellcheck.net | |
| [codz@dt .release_metadata]$ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment