Skip to content

Commit 5f6c424

Browse files
committed
Merge remote-tracking branch 'origin/main' into coder-inbox/internal-448
2 parents ca9369b + bbe7dac commit 5f6c424

File tree

71 files changed

+2851
-1358
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+2851
-1358
lines changed

.github/.linkspector.yml

+1
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,6 @@ ignorePatterns:
2121
- pattern: "linux.die.net/man"
2222
- pattern: "www.gnu.org"
2323
- pattern: "wiki.ubuntu.com"
24+
- pattern: "mutagen.io"
2425
aliveStatusCodes:
2526
- 200

.github/workflows/ci.yaml

+4-7
Original file line numberDiff line numberDiff line change
@@ -267,18 +267,15 @@ jobs:
267267
popd
268268
269269
- name: make gen
270-
# no `-j` flag as `make` fails with:
271-
# coderd/rbac/object_gen.go:1:1: syntax error: package statement must be first
272-
run: "make --output-sync -B gen"
273-
274-
- name: make update-golden-files
275270
run: |
271+
# Remove golden files to detect discrepancy in generated files.
276272
make clean/golden-files
277273
# Notifications require DB, we could start a DB instance here but
278274
# let's just restore for now.
279275
git checkout -- coderd/notifications/testdata/rendered-templates
280-
# As above, skip `-j` flag.
281-
make --output-sync -B update-golden-files
276+
# no `-j` flag as `make` fails with:
277+
# coderd/rbac/object_gen.go:1:1: syntax error: package statement must be first
278+
make --output-sync -B gen
282279
283280
- name: Check for unstaged files
284281
run: ./scripts/check_unstaged.sh

Makefile

+51-32
Original file line numberDiff line numberDiff line change
@@ -388,16 +388,17 @@ $(foreach chart,$(charts),build/$(chart)_helm_$(VERSION).tgz): build/%_helm_$(VE
388388
--chart $* \
389389
--output "$@"
390390

391-
node_modules/.installed: package.json
391+
node_modules/.installed: package.json pnpm-lock.yaml
392392
./scripts/pnpm_install.sh
393+
touch "$@"
393394

394-
offlinedocs/node_modules/.installed: offlinedocs/package.json
395-
cd offlinedocs/
396-
../scripts/pnpm_install.sh
395+
offlinedocs/node_modules/.installed: offlinedocs/package.json offlinedocs/pnpm-lock.yaml
396+
(cd offlinedocs/ && ../scripts/pnpm_install.sh)
397+
touch "$@"
397398

398-
site/node_modules/.installed: site/package.json
399-
cd site/
400-
../scripts/pnpm_install.sh
399+
site/node_modules/.installed: site/package.json site/pnpm-lock.yaml
400+
(cd site/ && ../scripts/pnpm_install.sh)
401+
touch "$@"
401402

402403
SITE_GEN_FILES := \
403404
site/src/api/typesGenerated.ts \
@@ -568,12 +569,24 @@ GEN_FILES := \
568569
agent/agentcontainers/dcspec/dcspec_gen.go
569570

570571
# all gen targets should be added here and to gen/mark-fresh
571-
gen: gen/db $(GEN_FILES)
572+
gen: gen/db gen/golden-files $(GEN_FILES)
572573
.PHONY: gen
573574

574575
gen/db: $(DB_GEN_FILES)
575576
.PHONY: gen/db
576577

578+
gen/golden-files: \
579+
cli/testdata/.gen-golden \
580+
coderd/.gen-golden \
581+
coderd/notifications/.gen-golden \
582+
enterprise/cli/testdata/.gen-golden \
583+
enterprise/tailnet/testdata/.gen-golden \
584+
helm/coder/tests/testdata/.gen-golden \
585+
helm/provisioner/tests/testdata/.gen-golden \
586+
provisioner/terraform/testdata/.gen-golden \
587+
tailnet/testdata/.gen-golden
588+
.PHONY: gen/golden-files
589+
577590
# Mark all generated files as fresh so make thinks they're up-to-date. This is
578591
# used during releases so we don't run generation scripts.
579592
gen/mark-fresh:
@@ -619,27 +632,34 @@ gen/mark-fresh:
619632
# applied.
620633
coderd/database/dump.sql: coderd/database/gen/dump/main.go $(wildcard coderd/database/migrations/*.sql)
621634
go run ./coderd/database/gen/dump/main.go
635+
touch "$@"
622636

623637
# Generates Go code for querying the database.
624638
# coderd/database/queries.sql.go
625639
# coderd/database/models.go
626640
coderd/database/querier.go: coderd/database/sqlc.yaml coderd/database/dump.sql $(wildcard coderd/database/queries/*.sql)
627641
./coderd/database/generate.sh
642+
touch "$@"
628643

629644
coderd/database/dbmock/dbmock.go: coderd/database/db.go coderd/database/querier.go
630645
go generate ./coderd/database/dbmock/
646+
touch "$@"
631647

632648
coderd/database/pubsub/psmock/psmock.go: coderd/database/pubsub/pubsub.go
633649
go generate ./coderd/database/pubsub/psmock
650+
touch "$@"
634651

635652
agent/agentcontainers/acmock/acmock.go: agent/agentcontainers/containers.go
636653
go generate ./agent/agentcontainers/acmock/
654+
touch "$@"
637655

638656
agent/agentcontainers/dcspec/dcspec_gen.go: agent/agentcontainers/dcspec/devContainer.base.schema.json
639657
go generate ./agent/agentcontainers/dcspec/
658+
touch "$@"
640659

641660
$(TAILNETTEST_MOCKS): tailnet/coordinator.go tailnet/service.go
642661
go generate ./tailnet/tailnettest/
662+
touch "$@"
643663

644664
tailnet/proto/tailnet.pb.go: tailnet/proto/tailnet.proto
645665
protoc \
@@ -682,77 +702,76 @@ vpn/vpn.pb.go: vpn/vpn.proto
682702
site/src/api/typesGenerated.ts: site/node_modules/.installed $(wildcard scripts/apitypings/*) $(shell find ./codersdk $(FIND_EXCLUSIONS) -type f -name '*.go')
683703
# -C sets the directory for the go run command
684704
go run -C ./scripts/apitypings main.go > $@
685-
cd site/
686-
pnpm exec biome format --write src/api/typesGenerated.ts
705+
(cd site/ && pnpm exec biome format --write src/api/typesGenerated.ts)
706+
touch "$@"
687707

688708
site/e2e/provisionerGenerated.ts: site/node_modules/.installed provisionerd/proto/provisionerd.pb.go provisionersdk/proto/provisioner.pb.go
689-
cd site/
690-
pnpm run gen:provisioner
709+
(cd site/ && pnpm run gen:provisioner)
710+
touch "$@"
691711

692712
site/src/theme/icons.json: site/node_modules/.installed $(wildcard scripts/gensite/*) $(wildcard site/static/icon/*)
693713
go run ./scripts/gensite/ -icons "$@"
694-
cd site/
695-
pnpm exec biome format --write src/theme/icons.json
714+
(cd site/ && pnpm exec biome format --write src/theme/icons.json)
715+
touch "$@"
696716

697717
examples/examples.gen.json: scripts/examplegen/main.go examples/examples.go $(shell find ./examples/templates)
698718
go run ./scripts/examplegen/main.go > examples/examples.gen.json
719+
touch "$@"
699720

700721
coderd/rbac/object_gen.go: scripts/typegen/rbacobject.gotmpl scripts/typegen/main.go coderd/rbac/object.go coderd/rbac/policy/policy.go
701722
tempdir=$(shell mktemp -d /tmp/typegen_rbac_object.XXXXXX)
702723
go run ./scripts/typegen/main.go rbac object > "$$tempdir/object_gen.go"
703724
mv -v "$$tempdir/object_gen.go" coderd/rbac/object_gen.go
704725
rmdir -v "$$tempdir"
726+
touch "$@"
705727

706728
codersdk/rbacresources_gen.go: scripts/typegen/codersdk.gotmpl scripts/typegen/main.go coderd/rbac/object.go coderd/rbac/policy/policy.go
707729
# Do no overwrite codersdk/rbacresources_gen.go directly, as it would make the file empty, breaking
708730
# the `codersdk` package and any parallel build targets.
709731
go run scripts/typegen/main.go rbac codersdk > /tmp/rbacresources_gen.go
710732
mv /tmp/rbacresources_gen.go codersdk/rbacresources_gen.go
733+
touch "$@"
711734

712735
site/src/api/rbacresourcesGenerated.ts: site/node_modules/.installed scripts/typegen/codersdk.gotmpl scripts/typegen/main.go coderd/rbac/object.go coderd/rbac/policy/policy.go
713736
go run scripts/typegen/main.go rbac typescript > "$@"
714-
cd site/
715-
pnpm exec biome format --write src/api/rbacresourcesGenerated.ts
737+
(cd site/ && pnpm exec biome format --write src/api/rbacresourcesGenerated.ts)
738+
touch "$@"
716739

717740
site/src/api/countriesGenerated.ts: site/node_modules/.installed scripts/typegen/countries.tstmpl scripts/typegen/main.go codersdk/countries.go
718741
go run scripts/typegen/main.go countries > "$@"
719-
cd site/
720-
pnpm exec biome format --write src/api/countriesGenerated.ts
742+
(cd site/ && pnpm exec biome format --write src/api/countriesGenerated.ts)
743+
touch "$@"
721744

722745
docs/admin/integrations/prometheus.md: node_modules/.installed scripts/metricsdocgen/main.go scripts/metricsdocgen/metrics
723746
go run scripts/metricsdocgen/main.go
724747
pnpm exec markdownlint-cli2 --fix ./docs/admin/integrations/prometheus.md
725748
pnpm exec markdown-table-formatter ./docs/admin/integrations/prometheus.md
749+
touch "$@"
726750

727751
docs/reference/cli/index.md: node_modules/.installed site/node_modules/.installed scripts/clidocgen/main.go examples/examples.gen.json $(GO_SRC_FILES)
728752
CI=true BASE_PATH="." go run ./scripts/clidocgen
729753
pnpm exec markdownlint-cli2 --fix ./docs/reference/cli/*.md
730754
pnpm exec markdown-table-formatter ./docs/reference/cli/*.md
731-
cd site/
732-
pnpm exec biome format --write ../docs/manifest.json
755+
(cd site/ && pnpm exec biome format --write ../docs/manifest.json)
756+
touch "$@"
733757

734758
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
735759
go run scripts/auditdocgen/main.go
736760
pnpm exec markdownlint-cli2 --fix ./docs/admin/security/audit-logs.md
737761
pnpm exec markdown-table-formatter ./docs/admin/security/audit-logs.md
762+
touch "$@"
738763

739764
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
740765
./scripts/apidocgen/generate.sh
741766
pnpm exec markdownlint-cli2 --fix ./docs/reference/api/*.md
742767
pnpm exec markdown-table-formatter ./docs/reference/api/*.md
743-
cd site/
744-
pnpm exec biome format --write ../docs/manifest.json ../coderd/apidoc/swagger.json
768+
(cd site/ && pnpm exec biome format --write ../docs/manifest.json ../coderd/apidoc/swagger.json)
769+
touch "$@"
745770

746-
update-golden-files: \
747-
cli/testdata/.gen-golden \
748-
coderd/.gen-golden \
749-
coderd/notifications/.gen-golden \
750-
enterprise/cli/testdata/.gen-golden \
751-
enterprise/tailnet/testdata/.gen-golden \
752-
helm/coder/tests/testdata/.gen-golden \
753-
helm/provisioner/tests/testdata/.gen-golden \
754-
provisioner/terraform/testdata/.gen-golden \
755-
tailnet/testdata/.gen-golden
771+
update-golden-files:
772+
echo 'WARNING: This target is deprecated. Use "make gen/golden-files" instead.' 2>&1
773+
echo 'Running "make gen/golden-files"' 2>&1
774+
make gen/golden-files
756775
.PHONY: update-golden-files
757776

758777
clean/golden-files:

0 commit comments

Comments
 (0)