From ad3073687072d30721fd6b95a5ca8eb3548d6a34 Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Tue, 31 Dec 2024 13:30:58 +0000 Subject: [PATCH 1/4] ci: make sure golden files are actually up to date --- .github/workflows/ci.yaml | 6 ++ Makefile | 29 +++++++--- .../coder_templates_plan_--help.golden | 6 -- .../testdata/coder_provisionerd_--help.golden | 15 ----- .../coder_provisionerd_keys_--help.golden | 16 ------ ...der_provisionerd_keys_create_--help.golden | 16 ------ ...der_provisionerd_keys_delete_--help.golden | 18 ------ ...coder_provisionerd_keys_list_--help.golden | 15 ----- .../coder_provisionerd_start_--help.golden | 55 ------------------- .../cli/testdata/coder_wsproxy_--help.golden | 17 ------ 10 files changed, 28 insertions(+), 165 deletions(-) delete mode 100644 cli/testdata/coder_templates_plan_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_keys_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_keys_create_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_keys_delete_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_keys_list_--help.golden delete mode 100644 enterprise/cli/testdata/coder_provisionerd_start_--help.golden delete mode 100644 enterprise/cli/testdata/coder_wsproxy_--help.golden diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 1284c0374cb34..87db8b35dd1bc 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -271,6 +271,12 @@ jobs: # coderd/rbac/object_gen.go:1:1: syntax error: package statement must be first run: "make --output-sync -B gen" + - name: make update-golden-files + # As above, skip `-j` flag. + run: | + make clean/golden-files + make --output-sync -B update-golden-files + - name: Check for unstaged files run: ./scripts/check_unstaged.sh diff --git a/Makefile b/Makefile index 6ce22a9a4ea50..bc109983ca695 100644 --- a/Makefile +++ b/Makefile @@ -702,18 +702,33 @@ coderd/apidoc/swagger.json: $(shell find ./scripts/apidocgen $(FIND_EXCLUSIONS) update-golden-files: \ cli/testdata/.gen-golden \ - helm/coder/tests/testdata/.gen-golden \ - helm/provisioner/tests/testdata/.gen-golden \ - enterprise/cli/testdata/.gen-golden \ - enterprise/tailnet/testdata/.gen-golden \ - tailnet/testdata/.gen-golden \ coderd/.gen-golden \ coderd/notifications/.gen-golden \ - provisioner/terraform/testdata/.gen-golden + enterprise/cli/testdata/.gen-golden \ + enterprise/tailnet/testdata/.gen-golden \ + helm/coder/tests/testdata/.gen-golden \ + helm/provisioner/tests/testdata/.gen-golden \ + provisioner/terraform/testdata/.gen-golden \ + tailnet/testdata/.gen-golden .PHONY: update-golden-files +clean/golden-files: + find . -type f -name '.gen-golden' -delete + find \ + cli/testdata \ + coderd/notifications/testdata \ + coderd/testdata \ + enterprise/cli/testdata \ + enterprise/tailnet/testdata \ + helm/coder/tests/testdata \ + helm/provisioner/tests/testdata \ + provisioner/terraform/testdata \ + tailnet/testdata \ + -type f -name '*.golden' -delete +.PHONY: clean/golden-files + cli/testdata/.gen-golden: $(wildcard cli/testdata/*.golden) $(wildcard cli/*.tpl) $(GO_SRC_FILES) $(wildcard cli/*_test.go) - go test ./cli -run="Test(CommandHelp|ServerYAML|ErrorExamples)" -update + go test ./cli -run="Test(CommandHelp|ServerYAML|ErrorExamples|.*Golden)" -update touch "$@" enterprise/cli/testdata/.gen-golden: $(wildcard enterprise/cli/testdata/*.golden) $(wildcard cli/*.tpl) $(GO_SRC_FILES) $(wildcard enterprise/cli/*_test.go) diff --git a/cli/testdata/coder_templates_plan_--help.golden b/cli/testdata/coder_templates_plan_--help.golden deleted file mode 100644 index 0085c37238e34..0000000000000 --- a/cli/testdata/coder_templates_plan_--help.golden +++ /dev/null @@ -1,6 +0,0 @@ -Usage: coder templates plan - -Plan a template push from the current directory - ---- -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_--help.golden b/enterprise/cli/testdata/coder_provisionerd_--help.golden deleted file mode 100644 index 7209d4962abac..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_--help.golden +++ /dev/null @@ -1,15 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd - - Manage provisioner daemons - - Aliases: provisioner - -SUBCOMMANDS: - keys Manage provisioner keys - start Run a provisioner daemon - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_keys_--help.golden b/enterprise/cli/testdata/coder_provisionerd_keys_--help.golden deleted file mode 100644 index 38feaec6dc4a8..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_keys_--help.golden +++ /dev/null @@ -1,16 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd keys - - Manage provisioner keys - - Aliases: key - -SUBCOMMANDS: - create Create a new provisioner key - delete Delete a provisioner key - list List provisioner keys in an organization - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_keys_create_--help.golden b/enterprise/cli/testdata/coder_provisionerd_keys_create_--help.golden deleted file mode 100644 index 8f70eb7184e5d..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_keys_create_--help.golden +++ /dev/null @@ -1,16 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd keys create [flags] - - Create a new provisioner key - -OPTIONS: - -O, --org string, $CODER_ORGANIZATION - Select which organization (uuid or name) to use. - - -t, --tag string-array, $CODER_PROVISIONERD_TAGS - Tags to filter provisioner jobs by. - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_keys_delete_--help.golden b/enterprise/cli/testdata/coder_provisionerd_keys_delete_--help.golden deleted file mode 100644 index 0ab277f6609e7..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_keys_delete_--help.golden +++ /dev/null @@ -1,18 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd keys delete [flags] - - Delete a provisioner key - - Aliases: rm - -OPTIONS: - -O, --org string, $CODER_ORGANIZATION - Select which organization (uuid or name) to use. - - -y, --yes bool - Bypass prompts. - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_keys_list_--help.golden b/enterprise/cli/testdata/coder_provisionerd_keys_list_--help.golden deleted file mode 100644 index 8e5c48f0cd457..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_keys_list_--help.golden +++ /dev/null @@ -1,15 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd keys list [flags] - - List provisioner keys in an organization - - Aliases: ls - -OPTIONS: - -O, --org string, $CODER_ORGANIZATION - Select which organization (uuid or name) to use. - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_provisionerd_start_--help.golden b/enterprise/cli/testdata/coder_provisionerd_start_--help.golden deleted file mode 100644 index 169b7fca2520c..0000000000000 --- a/enterprise/cli/testdata/coder_provisionerd_start_--help.golden +++ /dev/null @@ -1,55 +0,0 @@ -coder v0.0.0-devel - -USAGE: - coder provisionerd start [flags] - - Run a provisioner daemon - -OPTIONS: - -O, --org string, $CODER_ORGANIZATION - Select which organization (uuid or name) to use. - - -c, --cache-dir string, $CODER_CACHE_DIRECTORY (default: [cache dir]) - Directory to store cached data. - - --log-filter string-array, $CODER_PROVISIONER_DAEMON_LOG_FILTER - Filter debug logs by matching against a given regex. Use .* to match - all debug logs. - - --log-human string, $CODER_PROVISIONER_DAEMON_LOGGING_HUMAN (default: /dev/stderr) - Output human-readable logs to a given file. - - --log-json string, $CODER_PROVISIONER_DAEMON_LOGGING_JSON - Output JSON logs to a given file. - - --log-stackdriver string, $CODER_PROVISIONER_DAEMON_LOGGING_STACKDRIVER - Output Stackdriver compatible logs to a given file. - - --name string, $CODER_PROVISIONER_DAEMON_NAME - Name of this provisioner daemon. Defaults to the current hostname - without FQDN. - - --poll-interval duration, $CODER_PROVISIONERD_POLL_INTERVAL (default: 1s) - Deprecated and ignored. - - --poll-jitter duration, $CODER_PROVISIONERD_POLL_JITTER (default: 100ms) - Deprecated and ignored. - - --prometheus-address string, $CODER_PROMETHEUS_ADDRESS (default: 127.0.0.1:2112) - The bind address to serve prometheus metrics. - - --prometheus-enable bool, $CODER_PROMETHEUS_ENABLE (default: false) - Serve prometheus metrics on the address defined by prometheus address. - - --psk string, $CODER_PROVISIONER_DAEMON_PSK - Pre-shared key to authenticate with Coder server. - DEPRECATED: Use --key instead. - - -t, --tag string-array, $CODER_PROVISIONERD_TAGS - Tags to filter provisioner jobs by. - - --verbose bool, $CODER_PROVISIONER_DAEMON_VERBOSE (default: false) - Output debug-level logs. - -——— -Run `coder --help` for a list of global options. diff --git a/enterprise/cli/testdata/coder_wsproxy_--help.golden b/enterprise/cli/testdata/coder_wsproxy_--help.golden deleted file mode 100644 index 8f39caa1ecd9e..0000000000000 --- a/enterprise/cli/testdata/coder_wsproxy_--help.golden +++ /dev/null @@ -1,17 +0,0 @@ -Usage: coder workspace-proxy - -Manage workspace proxies - -Aliases: wsproxy - -Subcommands - create Create a workspace proxy - delete Delete a workspace proxy - edit Edit a workspace proxy - ls List all workspace proxies - regenerate-token Regenerate a workspace proxy authentication token. This - will invalidate the existing authentication token. - server Start a workspace proxy server - ---- -Run `coder --help` for a list of global options. From bfba244abbd4475ed9eefebbefbbd6a84c01109d Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Tue, 31 Dec 2024 14:06:08 +0000 Subject: [PATCH 2/4] move detached comment --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 87db8b35dd1bc..5bcb1de6f7212 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -272,9 +272,9 @@ jobs: run: "make --output-sync -B gen" - name: make update-golden-files - # As above, skip `-j` flag. run: | make clean/golden-files + # As above, skip `-j` flag. make --output-sync -B update-golden-files - name: Check for unstaged files From 42616f2be1c3851e50b39c5e4b75d4858b1937ea Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Tue, 31 Dec 2024 15:32:37 +0000 Subject: [PATCH 3/4] sync chart_test.go between coder and provisioner --- helm/provisioner/tests/chart_test.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/helm/provisioner/tests/chart_test.go b/helm/provisioner/tests/chart_test.go index 0c27771ce369a..136e77f76a4ab 100644 --- a/helm/provisioner/tests/chart_test.go +++ b/helm/provisioner/tests/chart_test.go @@ -121,6 +121,7 @@ func TestRenderChart(t *testing.T) { helmPath := lookupHelm(t) err := updateHelmDependencies(t, helmPath, "..") require.NoError(t, err, "failed to build Helm dependencies") + for _, tc := range testCases { tc := tc t.Run(tc.name, func(t *testing.T) { @@ -162,6 +163,9 @@ func TestUpdateGoldenFiles(t *testing.T) { } helmPath := lookupHelm(t) + err := updateHelmDependencies(t, helmPath, "..") + require.NoError(t, err, "failed to build Helm dependencies") + for _, tc := range testCases { if tc.expectedError != "" { t.Logf("skipping test case %q with render error", tc.name) @@ -171,7 +175,8 @@ func TestUpdateGoldenFiles(t *testing.T) { valuesPath := tc.valuesFilePath() templateOutput, err := runHelmTemplate(t, helmPath, "..", valuesPath) if err != nil { - t.Logf("Command output:\n%s", templateOutput) + t.Logf("error running `helm template -f %q`: %v", valuesPath, err) + t.Logf("output: %s", templateOutput) } require.NoError(t, err, "failed to run `helm template -f %q`", valuesPath) From 22fd4710136e643dc14f3d909f5ec9d7afbaae1f Mon Sep 17 00:00:00 2001 From: Mathias Fredriksson Date: Tue, 31 Dec 2024 15:52:07 +0000 Subject: [PATCH 4/4] fix notif gen --- .github/workflows/ci.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 5bcb1de6f7212..e5180b037a916 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -274,6 +274,9 @@ jobs: - name: make update-golden-files run: | make clean/golden-files + # Notifications require DB, we could start a DB instance here but + # let's just restore for now. + git checkout -- coderd/notifications/testdata/rendered-templates # As above, skip `-j` flag. make --output-sync -B update-golden-files pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy