diff --git a/.gitlab/scripts/generate-readme.sh b/.gitlab/scripts/generate-readme.sh new file mode 100755 index 0000000000000000000000000000000000000000..e412adea462259620626a6850414560aca8ab1f6 --- /dev/null +++ b/.gitlab/scripts/generate-readme.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +set -o errexit +set -o errtrace + +script_dir=$(dirname "$0") + +csplit -sf readme -n 1 "${script_dir}/../README.md.template" '/<RENDER>/' + +# shellcheck disable=SC2016 +{ + echo '<!-- This document is generated by `make docs` from `.gitlab/README.md` -->' + echo + cat readme0 + echo + echo '### Available OpenTofu Versions' + echo + echo 'The following OpenTofu versions are available with this component via the `opentofu_version` input:' + echo + yq '.".data".supported_versions | .[] | "- [`" + . + "`](https://github.com/opentofu/opentofu/releases/tag/v" + . + ")"' "${script_dir}/../../opentofu_versions.yaml" + tail -n+2 readme1 +} > "${script_dir}/../../README.md" + +rm -f readme0 readme1 readme_inputs.md diff --git a/Makefile b/Makefile index e6baaae07314a89e5999489152f29c51da2a7cf9..eb62807e95bed2c9c8f81512aca97356a51c8532 100644 --- a/Makefile +++ b/Makefile @@ -1,22 +1,12 @@ -RELEASE_SCRIPT = ./.gitlab/scripts/release.sh +GENERATE_README_SCRIPT ?= ./.gitlab/scripts/generate-readme.sh +RELEASE_SCRIPT ?= ./.gitlab/scripts/release.sh .PHONY: all all: docs .PHONY: docs docs: - csplit -sf readme -n 1 .gitlab/README.md.template '/<RENDER>/' - echo '<!-- This document is generated by `make docs` from `.gitlab/README.md` -->' > README.md - echo >> README.md - cat readme0 >> README.md - echo >> README.md - echo '### Available OpenTofu Versions' >> README.md - echo >> README.md - echo 'The following OpenTofu versions are available with this component via the `opentofu_version` input:' >> README.md - echo >> README.md - yq '.".data".supported_versions | .[] | "- [`" + . + "`](https://github.com/opentofu/opentofu/releases/tag/v" + . + ")"' opentofu_versions.yaml >> README.md - tail -n+2 readme1 >> README.md - rm -f readme0 readme1 readme_inputs.md + $(GENERATE_README_SCRIPT) .PHONY: release release: