From 9cd110d3fe88738d6bbef260f53e0a7459dc5fe4 Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Fri, 21 Mar 2025 13:55:23 +0000 Subject: [PATCH 1/3] chore(Makefile): fix apidoc dependencies --- .gitignore | 3 ++- Makefile | 30 +++++++++++++++++++++++++++--- scripts/apidocgen/generate.sh | 1 - 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index f98101cd7f920..d633f94583ec9 100644 --- a/.gitignore +++ b/.gitignore @@ -32,7 +32,8 @@ site/e2e/.auth.json site/playwright-report/* site/.swc -# Make target for updating golden files (any dir). +# Make target for updating generated/golden files (any dir). +.gen .gen-golden # Build diff --git a/Makefile b/Makefile index 782ce165e12b0..05881d5791025 100644 --- a/Makefile +++ b/Makefile @@ -400,6 +400,10 @@ site/node_modules/.installed: site/package.json site/pnpm-lock.yaml (cd site/ && ../scripts/pnpm_install.sh) touch "$@" +scripts/apidocgen/.installed: scripts/apidocgen/package.json scripts/apidocgen/pnpm-lock.yaml + (cd scripts/apidocgen && ../../scripts/pnpm_install.sh) + touch "$@" + SITE_GEN_FILES := \ site/src/api/typesGenerated.ts \ site/src/api/rbacresourcesGenerated.ts \ @@ -560,6 +564,7 @@ GEN_FILES := \ docs/reference/cli/index.md \ docs/admin/security/audit-logs.md \ coderd/apidoc/swagger.json \ + docs/manifest.json \ provisioner/terraform/testdata/version \ site/e2e/provisionerGenerated.ts \ examples/examples.gen.json \ @@ -607,6 +612,7 @@ gen/mark-fresh: docs/reference/cli/index.md \ docs/admin/security/audit-logs.md \ coderd/apidoc/swagger.json \ + docs/manifest.json \ site/e2e/provisionerGenerated.ts \ site/src/theme/icons.json \ examples/examples.gen.json \ @@ -752,7 +758,6 @@ docs/reference/cli/index.md: node_modules/.installed site/node_modules/.installe CI=true BASE_PATH="." go run ./scripts/clidocgen pnpm exec markdownlint-cli2 --fix ./docs/reference/cli/*.md pnpm exec markdown-table-formatter ./docs/reference/cli/*.md - (cd site/ && pnpm exec biome format --write ../docs/manifest.json) touch "$@" docs/admin/security/audit-logs.md: node_modules/.installed coderd/database/querier.go scripts/auditdocgen/main.go enterprise/audit/table.go coderd/rbac/object_gen.go @@ -761,11 +766,30 @@ docs/admin/security/audit-logs.md: node_modules/.installed coderd/database/queri pnpm exec markdown-table-formatter ./docs/admin/security/audit-logs.md touch "$@" -coderd/apidoc/swagger.json: node_modules/.installed site/node_modules/.installed $(shell find ./scripts/apidocgen $(FIND_EXCLUSIONS) -type f) $(wildcard coderd/*.go) $(wildcard enterprise/coderd/*.go) $(wildcard codersdk/*.go) $(wildcard enterprise/wsproxy/wsproxysdk/*.go) $(DB_GEN_FILES) .swaggo docs/manifest.json coderd/rbac/object_gen.go +coderd/apidoc/.gen: \ + node_modules/.installed \ + scripts/apidocgen/.installed \ + $(wildcard coderd/*.go) \ + $(wildcard enterprise/coderd/*.go) \ + $(wildcard codersdk/*.go) \ + $(wildcard enterprise/wsproxy/wsproxysdk/*.go) \ + $(DB_GEN_FILES) \ + coderd/rbac/object_gen.go \ + .swaggo \ + scripts/apidocgen/generate.sh \ + $(wildcard scripts/apidocgen/postprocess/*) \ + $(wildcard scripts/apidocgen/markdown-template/*) ./scripts/apidocgen/generate.sh pnpm exec markdownlint-cli2 --fix ./docs/reference/api/*.md pnpm exec markdown-table-formatter ./docs/reference/api/*.md - (cd site/ && pnpm exec biome format --write ../docs/manifest.json ../coderd/apidoc/swagger.json) + touch "$@" + +docs/manifest.json: site/node_modules/.installed coderd/apidoc/.gen docs/reference/cli/index.md + (cd site/ && pnpm exec biome format --write ../docs/manifest.json) + touch "$@" + +coderd/apidoc/swagger.json: site/node_modules/.installed coderd/apidoc/.gen + (cd site/ && pnpm exec biome format --write ../coderd/apidoc/swagger.json) touch "$@" update-golden-files: diff --git a/scripts/apidocgen/generate.sh b/scripts/apidocgen/generate.sh index 87fa6377d179c..186877d32425b 100755 --- a/scripts/apidocgen/generate.sh +++ b/scripts/apidocgen/generate.sh @@ -27,7 +27,6 @@ go run github.com/swaggo/swag/cmd/swag@v1.8.9 init \ popd pushd "${APIDOCGEN_DIR}" -pnpm i # Make sure that widdershins is installed correctly. pnpm exec -- widdershins --version From 619c7780d7762a97440878500601772419de2ba6 Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Fri, 21 Mar 2025 13:58:27 +0000 Subject: [PATCH 2/3] remove unused dep --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 05881d5791025..7c4beedc7596f 100644 --- a/Makefile +++ b/Makefile @@ -754,7 +754,7 @@ docs/admin/integrations/prometheus.md: node_modules/.installed scripts/metricsdo pnpm exec markdown-table-formatter ./docs/admin/integrations/prometheus.md touch "$@" -docs/reference/cli/index.md: node_modules/.installed site/node_modules/.installed scripts/clidocgen/main.go examples/examples.gen.json $(GO_SRC_FILES) +docs/reference/cli/index.md: node_modules/.installed scripts/clidocgen/main.go examples/examples.gen.json $(GO_SRC_FILES) CI=true BASE_PATH="." go run ./scripts/clidocgen pnpm exec markdownlint-cli2 --fix ./docs/reference/cli/*.md pnpm exec markdown-table-formatter ./docs/reference/cli/*.md From 37c33656753dbd0f4d9eaea42fcdbdc7a7aa6a59 Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Fri, 21 Mar 2025 14:34:09 +0000 Subject: [PATCH 3/3] fix installed path --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 7c4beedc7596f..f3801e4950c56 100644 --- a/Makefile +++ b/Makefile @@ -400,7 +400,7 @@ site/node_modules/.installed: site/package.json site/pnpm-lock.yaml (cd site/ && ../scripts/pnpm_install.sh) touch "$@" -scripts/apidocgen/.installed: scripts/apidocgen/package.json scripts/apidocgen/pnpm-lock.yaml +scripts/apidocgen/node_modules/.installed: scripts/apidocgen/package.json scripts/apidocgen/pnpm-lock.yaml (cd scripts/apidocgen && ../../scripts/pnpm_install.sh) touch "$@" @@ -768,7 +768,7 @@ docs/admin/security/audit-logs.md: node_modules/.installed coderd/database/queri coderd/apidoc/.gen: \ node_modules/.installed \ - scripts/apidocgen/.installed \ + scripts/apidocgen/node_modules/.installed \ $(wildcard coderd/*.go) \ $(wildcard enterprise/coderd/*.go) \ $(wildcard codersdk/*.go) \