[docs] Fix unversioned built-in docs issue (#6274)

Fixes https://github.com/open-policy-agent/opa/issues/6269

This fixes the issue by using the builtin_metadata.json file from each
version, the assumption that docs content that depends on the data
doesn't exist before this file was introduced.

I have removed the 'available' check since we haven't consistently
updated the file in the past, e.g.

* https://github.com/open-policy-agent/opa/blob/v0.41.0/builtin_metadata.json#L12710
* https://github.com/open-policy-agent/opa/blob/v0.57.0/builtin_metadata.json#L563

These examples show that sometimes the current version is included,
other times the file is updated after the release.

Video showing the correct content being displayed for various versions:

https://github.com/open-policy-agent/opa/assets/1774239/abf1af7d-9c59-4223-a019-c73d7550b322

To locally test this:

```
git clean -dfx
cd docs
make generate hugo-production-build
hugo server --source website --contentDir generated --ignoreCache --minify
```

Signed-off-by: Charlie Egan <charlie@styra.com>
This commit is contained in:
Charlie Egan
2023-10-05 09:28:40 +01:00
committed by GitHub
parent fb16650d23
commit a7fa31d56e
5 changed files with 24 additions and 16 deletions
+3 -7
View File
@@ -20,20 +20,16 @@ generate-cli-docs:
$(CURDIR)/../build/gen-cli-docs.sh "$(CURDIR)/content"
.PHONY: generate
generate: generate-cli-docs copy-builtin-metadata copy-hugo-static-content
generate: generate-cli-docs copy-hugo-static-content
$(CURDIR)/website/scripts/load-docs.sh
.PHONY: copy-builtin-metadata
copy-builtin-metadata:
cp -v $(CURDIR)/../builtin_metadata.json $(CURDIR)/website/data/builtin_metadata.json
.PHONY: copy-hugo-static-content
copy-hugo-static-content:
mkdir -p $(CURDIR)/website/generated/
cp -r $(CURDIR)/website/content/* $(CURDIR)/website/generated/
.PHONY: dev-generate
dev-generate: generate-cli-docs copy-builtin-metadata copy-hugo-static-content
dev-generate: generate-cli-docs copy-hugo-static-content
DEV=true $(CURDIR)/website/scripts/load-docs.sh
# The website has some npm dependencies saved in ./website/node_modules
@@ -63,7 +59,7 @@ serve-remote: production-build
cd $(CURDIR)/.. && netlify deploy
.PHONY: dev-build
dev-build: clean dev-generate copy-builtin-metadata hugo-production-build live-blocks-inject
dev-build: clean dev-generate hugo-production-build live-blocks-inject
######################################################
#