From b26471de4c2bc7be0f1cc2e11d25771bdb23b060 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 16:39:30 +0200 Subject: [PATCH 01/11] chore(e2e): regenerate provisioner stub --- site/.prettierignore | 3 --- site/e2e/provisionerGenerated.ts | 9 +++++++++ site/package.json | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/site/.prettierignore b/site/.prettierignore index 9bed2be372b11..076cb49b349e2 100644 --- a/site/.prettierignore +++ b/site/.prettierignore @@ -76,7 +76,4 @@ stats/ # Testdata shouldn't be formatted. ../scripts/apitypings/testdata/**/*.ts -# Generated files shouldn't be formatted. -e2e/provisionerGenerated.ts - **/pnpm-lock.yaml diff --git a/site/e2e/provisionerGenerated.ts b/site/e2e/provisionerGenerated.ts index 6acdde763f32c..66b6c222c9ac7 100644 --- a/site/e2e/provisionerGenerated.ts +++ b/site/e2e/provisionerGenerated.ts @@ -64,7 +64,10 @@ export interface RichParameter { validationMax?: number | undefined validationMonotonic: string required: boolean + /** legacy_variable_name was removed (= 14) */ displayName: string + order: number + ephemeral: boolean } /** RichParameterValue holds the key/value mapping of a parameter. */ @@ -356,6 +359,12 @@ export const RichParameter = { if (message.displayName !== "") { writer.uint32(122).string(message.displayName) } + if (message.order !== 0) { + writer.uint32(128).int32(message.order) + } + if (message.ephemeral === true) { + writer.uint32(136).bool(message.ephemeral) + } return writer }, } diff --git a/site/package.json b/site/package.json index d3b89d966336b..0380528e21d1b 100644 --- a/site/package.json +++ b/site/package.json @@ -19,7 +19,7 @@ "lint:types": "tsc --noEmit", "playwright:install": "playwright install --with-deps chromium", "playwright:test": "playwright test --config=e2e/playwright.config.ts", - "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts-proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && prettier --cache --write './e2e/provisionerGenerated.ts'", + "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts-proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --cache --write './e2e/provisionerGenerated.ts'", "storybook": "STORYBOOK=true storybook dev -p 6006", "storybook:build": "storybook build", "test": "jest --selectProjects test", From 7a19216171d93ee74727f9c4c85fbd2ad83eb878 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 16:57:32 +0200 Subject: [PATCH 02/11] fix --- .prettierignore | 3 --- .prettierignore.include | 3 --- site/.eslintignore | 3 --- 3 files changed, 9 deletions(-) diff --git a/.prettierignore b/.prettierignore index d68357703d7ce..ee2367625b128 100644 --- a/.prettierignore +++ b/.prettierignore @@ -76,7 +76,4 @@ helm/**/templates/*.yaml # Testdata shouldn't be formatted. scripts/apitypings/testdata/**/*.ts -# Generated files shouldn't be formatted. -site/e2e/provisionerGenerated.ts - **/pnpm-lock.yaml diff --git a/.prettierignore.include b/.prettierignore.include index 975c00ca21b84..bb43923bd49a9 100644 --- a/.prettierignore.include +++ b/.prettierignore.include @@ -9,7 +9,4 @@ helm/**/templates/*.yaml # Testdata shouldn't be formatted. scripts/apitypings/testdata/**/*.ts -# Generated files shouldn't be formatted. -site/e2e/provisionerGenerated.ts - **/pnpm-lock.yaml diff --git a/site/.eslintignore b/site/.eslintignore index 9bed2be372b11..076cb49b349e2 100644 --- a/site/.eslintignore +++ b/site/.eslintignore @@ -76,7 +76,4 @@ stats/ # Testdata shouldn't be formatted. ../scripts/apitypings/testdata/**/*.ts -# Generated files shouldn't be formatted. -e2e/provisionerGenerated.ts - **/pnpm-lock.yaml From fc5909e585c7d37de842ac3772def4f655d913e1 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 17:00:27 +0200 Subject: [PATCH 03/11] fix --- scripts/helm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/helm.sh b/scripts/helm.sh index 1397281c7e3c4..fa3283b1ac4bb 100755 --- a/scripts/helm.sh +++ b/scripts/helm.sh @@ -75,7 +75,7 @@ cdroot temp_dir="$(mktemp -d)" cdroot -cd ./helm/$chart +cd "./helm/${chart}" log "--- Updating dependencies" helm dependency update . log "--- Packaging helm chart $chart for version $version ($output_path)" From 82b3624be0b645ae3e647dc1ff1ae5d84a3a5dc9 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 17:33:20 +0200 Subject: [PATCH 04/11] revert --- .prettierignore | 3 + .prettierignore.include | 3 + site/.eslintignore | 3 + site/.prettierignore | 3 + site/e2e/provisionerGenerated.ts | 146 ++++++++----------------------- 5 files changed, 47 insertions(+), 111 deletions(-) diff --git a/.prettierignore b/.prettierignore index ee2367625b128..d68357703d7ce 100644 --- a/.prettierignore +++ b/.prettierignore @@ -76,4 +76,7 @@ helm/**/templates/*.yaml # Testdata shouldn't be formatted. scripts/apitypings/testdata/**/*.ts +# Generated files shouldn't be formatted. +site/e2e/provisionerGenerated.ts + **/pnpm-lock.yaml diff --git a/.prettierignore.include b/.prettierignore.include index bb43923bd49a9..975c00ca21b84 100644 --- a/.prettierignore.include +++ b/.prettierignore.include @@ -9,4 +9,7 @@ helm/**/templates/*.yaml # Testdata shouldn't be formatted. scripts/apitypings/testdata/**/*.ts +# Generated files shouldn't be formatted. +site/e2e/provisionerGenerated.ts + **/pnpm-lock.yaml diff --git a/site/.eslintignore b/site/.eslintignore index 076cb49b349e2..9bed2be372b11 100644 --- a/site/.eslintignore +++ b/site/.eslintignore @@ -76,4 +76,7 @@ stats/ # Testdata shouldn't be formatted. ../scripts/apitypings/testdata/**/*.ts +# Generated files shouldn't be formatted. +e2e/provisionerGenerated.ts + **/pnpm-lock.yaml diff --git a/site/.prettierignore b/site/.prettierignore index 076cb49b349e2..9bed2be372b11 100644 --- a/site/.prettierignore +++ b/site/.prettierignore @@ -76,4 +76,7 @@ stats/ # Testdata shouldn't be formatted. ../scripts/apitypings/testdata/**/*.ts +# Generated files shouldn't be formatted. +e2e/provisionerGenerated.ts + **/pnpm-lock.yaml diff --git a/site/e2e/provisionerGenerated.ts b/site/e2e/provisionerGenerated.ts index 66b6c222c9ac7..321afa3b6ef41 100644 --- a/site/e2e/provisionerGenerated.ts +++ b/site/e2e/provisionerGenerated.ts @@ -29,7 +29,8 @@ export enum WorkspaceTransition { } /** Empty indicates a successful request/response. */ -export interface Empty {} +export interface Empty { +} /** TemplateVariable represents a Terraform variable. */ export interface TemplateVariable { @@ -178,7 +179,8 @@ export interface Resource_Metadata { } /** Parse consumes source-code from a directory to produce inputs. */ -export interface Parse {} +export interface Parse { +} export interface Parse_Request { directory: string @@ -197,7 +199,8 @@ export interface Parse_Response { * Provision consumes source-code from a directory to produce resources. * Exactly one of Plan or Apply must be provided in a single session. */ -export interface Provision {} +export interface Provision { +} export interface Provision_Metadata { coderUrl: string @@ -236,7 +239,8 @@ export interface Provision_Apply { plan: Uint8Array } -export interface Provision_Cancel {} +export interface Provision_Cancel { +} export interface Provision_Request { plan?: Provision_Plan | undefined @@ -265,10 +269,7 @@ export const Empty = { } export const TemplateVariable = { - encode( - message: TemplateVariable, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: TemplateVariable, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -292,10 +293,7 @@ export const TemplateVariable = { } export const RichParameterOption = { - encode( - message: RichParameterOption, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: RichParameterOption, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -313,10 +311,7 @@ export const RichParameterOption = { } export const RichParameter = { - encode( - message: RichParameter, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: RichParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -370,10 +365,7 @@ export const RichParameter = { } export const RichParameterValue = { - encode( - message: RichParameterValue, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: RichParameterValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -385,10 +377,7 @@ export const RichParameterValue = { } export const VariableValue = { - encode( - message: VariableValue, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: VariableValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -415,10 +404,7 @@ export const Log = { } export const InstanceIdentityAuth = { - encode( - message: InstanceIdentityAuth, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: InstanceIdentityAuth, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.instanceId !== "") { writer.uint32(10).string(message.instanceId) } @@ -427,10 +413,7 @@ export const InstanceIdentityAuth = { } export const GitAuthProvider = { - encode( - message: GitAuthProvider, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: GitAuthProvider, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id) } @@ -450,10 +433,7 @@ export const Agent = { writer.uint32(18).string(message.name) } Object.entries(message.env).forEach(([key, value]) => { - Agent_EnvEntry.encode( - { key: key as any, value }, - writer.uint32(26).fork(), - ).ldelim() + Agent_EnvEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).ldelim() }) if (message.startupScript !== "") { writer.uint32(34).string(message.startupScript) @@ -505,10 +485,7 @@ export const Agent = { } export const Agent_Metadata = { - encode( - message: Agent_Metadata, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Agent_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -529,10 +506,7 @@ export const Agent_Metadata = { } export const Agent_EnvEntry = { - encode( - message: Agent_EnvEntry, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Agent_EnvEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -577,10 +551,7 @@ export const App = { } export const Healthcheck = { - encode( - message: Healthcheck, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Healthcheck, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.url !== "") { writer.uint32(10).string(message.url) } @@ -595,10 +566,7 @@ export const Healthcheck = { } export const Resource = { - encode( - message: Resource, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Resource, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -628,10 +596,7 @@ export const Resource = { } export const Resource_Metadata = { - encode( - message: Resource_Metadata, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Resource_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -655,10 +620,7 @@ export const Parse = { } export const Parse_Request = { - encode( - message: Parse_Request, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Parse_Request, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.directory !== "") { writer.uint32(10).string(message.directory) } @@ -667,10 +629,7 @@ export const Parse_Request = { } export const Parse_Complete = { - encode( - message: Parse_Complete, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Parse_Complete, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.templateVariables) { TemplateVariable.encode(v!, writer.uint32(10).fork()).ldelim() } @@ -679,10 +638,7 @@ export const Parse_Complete = { } export const Parse_Response = { - encode( - message: Parse_Response, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Parse_Response, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.log !== undefined) { Log.encode(message.log, writer.uint32(10).fork()).ldelim() } @@ -700,10 +656,7 @@ export const Provision = { } export const Provision_Metadata = { - encode( - message: Provision_Metadata, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.coderUrl !== "") { writer.uint32(10).string(message.coderUrl) } @@ -742,10 +695,7 @@ export const Provision_Metadata = { } export const Provision_Config = { - encode( - message: Provision_Config, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Config, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.directory !== "") { writer.uint32(10).string(message.directory) } @@ -753,10 +703,7 @@ export const Provision_Config = { writer.uint32(18).bytes(message.state) } if (message.metadata !== undefined) { - Provision_Metadata.encode( - message.metadata, - writer.uint32(26).fork(), - ).ldelim() + Provision_Metadata.encode(message.metadata, writer.uint32(26).fork()).ldelim() } if (message.provisionerLogLevel !== "") { writer.uint32(34).string(message.provisionerLogLevel) @@ -766,10 +713,7 @@ export const Provision_Config = { } export const Provision_Plan = { - encode( - message: Provision_Plan, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Plan, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.config !== undefined) { Provision_Config.encode(message.config, writer.uint32(10).fork()).ldelim() } @@ -787,10 +731,7 @@ export const Provision_Plan = { } export const Provision_Apply = { - encode( - message: Provision_Apply, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Apply, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.config !== undefined) { Provision_Config.encode(message.config, writer.uint32(10).fork()).ldelim() } @@ -802,19 +743,13 @@ export const Provision_Apply = { } export const Provision_Cancel = { - encode( - _: Provision_Cancel, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(_: Provision_Cancel, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer }, } export const Provision_Request = { - encode( - message: Provision_Request, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Request, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.plan !== undefined) { Provision_Plan.encode(message.plan, writer.uint32(10).fork()).ldelim() } @@ -829,10 +764,7 @@ export const Provision_Request = { } export const Provision_Complete = { - encode( - message: Provision_Complete, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Complete, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.state.length !== 0) { writer.uint32(10).bytes(message.state) } @@ -856,18 +788,12 @@ export const Provision_Complete = { } export const Provision_Response = { - encode( - message: Provision_Response, - writer: _m0.Writer = _m0.Writer.create(), - ): _m0.Writer { + encode(message: Provision_Response, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.log !== undefined) { Log.encode(message.log, writer.uint32(10).fork()).ldelim() } if (message.complete !== undefined) { - Provision_Complete.encode( - message.complete, - writer.uint32(18).fork(), - ).ldelim() + Provision_Complete.encode(message.complete, writer.uint32(18).fork()).ldelim() } return writer }, @@ -875,7 +801,5 @@ export const Provision_Response = { export interface Provisioner { Parse(request: Parse_Request): Observable - Provision( - request: Observable, - ): Observable + Provision(request: Observable): Observable } From e56ca1e392defe435917984888c5591b18c3c885 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 17:41:47 +0200 Subject: [PATCH 05/11] fix --- site/e2e/provisionerGenerated.ts | 146 +++++++++++++++++++++++-------- site/package.json | 2 +- 2 files changed, 112 insertions(+), 36 deletions(-) diff --git a/site/e2e/provisionerGenerated.ts b/site/e2e/provisionerGenerated.ts index 321afa3b6ef41..66b6c222c9ac7 100644 --- a/site/e2e/provisionerGenerated.ts +++ b/site/e2e/provisionerGenerated.ts @@ -29,8 +29,7 @@ export enum WorkspaceTransition { } /** Empty indicates a successful request/response. */ -export interface Empty { -} +export interface Empty {} /** TemplateVariable represents a Terraform variable. */ export interface TemplateVariable { @@ -179,8 +178,7 @@ export interface Resource_Metadata { } /** Parse consumes source-code from a directory to produce inputs. */ -export interface Parse { -} +export interface Parse {} export interface Parse_Request { directory: string @@ -199,8 +197,7 @@ export interface Parse_Response { * Provision consumes source-code from a directory to produce resources. * Exactly one of Plan or Apply must be provided in a single session. */ -export interface Provision { -} +export interface Provision {} export interface Provision_Metadata { coderUrl: string @@ -239,8 +236,7 @@ export interface Provision_Apply { plan: Uint8Array } -export interface Provision_Cancel { -} +export interface Provision_Cancel {} export interface Provision_Request { plan?: Provision_Plan | undefined @@ -269,7 +265,10 @@ export const Empty = { } export const TemplateVariable = { - encode(message: TemplateVariable, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: TemplateVariable, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -293,7 +292,10 @@ export const TemplateVariable = { } export const RichParameterOption = { - encode(message: RichParameterOption, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: RichParameterOption, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -311,7 +313,10 @@ export const RichParameterOption = { } export const RichParameter = { - encode(message: RichParameter, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: RichParameter, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -365,7 +370,10 @@ export const RichParameter = { } export const RichParameterValue = { - encode(message: RichParameterValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: RichParameterValue, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -377,7 +385,10 @@ export const RichParameterValue = { } export const VariableValue = { - encode(message: VariableValue, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: VariableValue, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -404,7 +415,10 @@ export const Log = { } export const InstanceIdentityAuth = { - encode(message: InstanceIdentityAuth, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: InstanceIdentityAuth, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.instanceId !== "") { writer.uint32(10).string(message.instanceId) } @@ -413,7 +427,10 @@ export const InstanceIdentityAuth = { } export const GitAuthProvider = { - encode(message: GitAuthProvider, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: GitAuthProvider, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id) } @@ -433,7 +450,10 @@ export const Agent = { writer.uint32(18).string(message.name) } Object.entries(message.env).forEach(([key, value]) => { - Agent_EnvEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).ldelim() + Agent_EnvEntry.encode( + { key: key as any, value }, + writer.uint32(26).fork(), + ).ldelim() }) if (message.startupScript !== "") { writer.uint32(34).string(message.startupScript) @@ -485,7 +505,10 @@ export const Agent = { } export const Agent_Metadata = { - encode(message: Agent_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Agent_Metadata, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -506,7 +529,10 @@ export const Agent_Metadata = { } export const Agent_EnvEntry = { - encode(message: Agent_EnvEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Agent_EnvEntry, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -551,7 +577,10 @@ export const App = { } export const Healthcheck = { - encode(message: Healthcheck, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Healthcheck, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.url !== "") { writer.uint32(10).string(message.url) } @@ -566,7 +595,10 @@ export const Healthcheck = { } export const Resource = { - encode(message: Resource, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Resource, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name) } @@ -596,7 +628,10 @@ export const Resource = { } export const Resource_Metadata = { - encode(message: Resource_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Resource_Metadata, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key) } @@ -620,7 +655,10 @@ export const Parse = { } export const Parse_Request = { - encode(message: Parse_Request, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Parse_Request, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.directory !== "") { writer.uint32(10).string(message.directory) } @@ -629,7 +667,10 @@ export const Parse_Request = { } export const Parse_Complete = { - encode(message: Parse_Complete, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Parse_Complete, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { for (const v of message.templateVariables) { TemplateVariable.encode(v!, writer.uint32(10).fork()).ldelim() } @@ -638,7 +679,10 @@ export const Parse_Complete = { } export const Parse_Response = { - encode(message: Parse_Response, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Parse_Response, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.log !== undefined) { Log.encode(message.log, writer.uint32(10).fork()).ldelim() } @@ -656,7 +700,10 @@ export const Provision = { } export const Provision_Metadata = { - encode(message: Provision_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Metadata, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.coderUrl !== "") { writer.uint32(10).string(message.coderUrl) } @@ -695,7 +742,10 @@ export const Provision_Metadata = { } export const Provision_Config = { - encode(message: Provision_Config, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Config, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.directory !== "") { writer.uint32(10).string(message.directory) } @@ -703,7 +753,10 @@ export const Provision_Config = { writer.uint32(18).bytes(message.state) } if (message.metadata !== undefined) { - Provision_Metadata.encode(message.metadata, writer.uint32(26).fork()).ldelim() + Provision_Metadata.encode( + message.metadata, + writer.uint32(26).fork(), + ).ldelim() } if (message.provisionerLogLevel !== "") { writer.uint32(34).string(message.provisionerLogLevel) @@ -713,7 +766,10 @@ export const Provision_Config = { } export const Provision_Plan = { - encode(message: Provision_Plan, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Plan, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.config !== undefined) { Provision_Config.encode(message.config, writer.uint32(10).fork()).ldelim() } @@ -731,7 +787,10 @@ export const Provision_Plan = { } export const Provision_Apply = { - encode(message: Provision_Apply, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Apply, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.config !== undefined) { Provision_Config.encode(message.config, writer.uint32(10).fork()).ldelim() } @@ -743,13 +802,19 @@ export const Provision_Apply = { } export const Provision_Cancel = { - encode(_: Provision_Cancel, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + _: Provision_Cancel, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { return writer }, } export const Provision_Request = { - encode(message: Provision_Request, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Request, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.plan !== undefined) { Provision_Plan.encode(message.plan, writer.uint32(10).fork()).ldelim() } @@ -764,7 +829,10 @@ export const Provision_Request = { } export const Provision_Complete = { - encode(message: Provision_Complete, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Complete, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.state.length !== 0) { writer.uint32(10).bytes(message.state) } @@ -788,12 +856,18 @@ export const Provision_Complete = { } export const Provision_Response = { - encode(message: Provision_Response, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Provision_Response, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { if (message.log !== undefined) { Log.encode(message.log, writer.uint32(10).fork()).ldelim() } if (message.complete !== undefined) { - Provision_Complete.encode(message.complete, writer.uint32(18).fork()).ldelim() + Provision_Complete.encode( + message.complete, + writer.uint32(18).fork(), + ).ldelim() } return writer }, @@ -801,5 +875,7 @@ export const Provision_Response = { export interface Provisioner { Parse(request: Parse_Request): Observable - Provision(request: Observable): Observable + Provision( + request: Observable, + ): Observable } diff --git a/site/package.json b/site/package.json index 0380528e21d1b..ec8ab5241adba 100644 --- a/site/package.json +++ b/site/package.json @@ -19,7 +19,7 @@ "lint:types": "tsc --noEmit", "playwright:install": "playwright install --with-deps chromium", "playwright:test": "playwright test --config=e2e/playwright.config.ts", - "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts-proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --cache --write './e2e/provisionerGenerated.ts'", + "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts-proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --ignore-path '/dev/null' --cache --write './e2e/provisionerGenerated.ts'", "storybook": "STORYBOOK=true storybook dev -p 6006", "storybook:build": "storybook build", "test": "jest --selectProjects test", From 9919d255c573515748850921e264f746286d77c6 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 17:48:50 +0200 Subject: [PATCH 06/11] make gen --- Makefile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 4ec4157cd79ff..b1b4fbb0c677f 100644 --- a/Makefile +++ b/Makefile @@ -470,7 +470,8 @@ gen: \ .prettierignore \ site/.prettierrc.yaml \ site/.prettierignore \ - site/.eslintignore + site/.eslintignore \ + site/e2e/provisionerGenerated.ts .PHONY: gen # Mark all generated files as fresh so make thinks they're up-to-date. This is @@ -492,6 +493,7 @@ gen/mark-fresh: site/.prettierrc.yaml \ site/.prettierignore \ site/.eslintignore \ + site/e2e/provisionerGenerated.ts \ " for file in $$files; do echo "$$file" @@ -538,6 +540,10 @@ site/src/api/typesGenerated.ts: scripts/apitypings/main.go $(shell find ./coders cd site pnpm run format:types +site/e2e/provisionerGenerated.ts: + cd site + pnpm run gen:provisioner + coderd/rbac/object_gen.go: scripts/rbacgen/main.go coderd/rbac/object.go go run scripts/rbacgen/main.go ./coderd/rbac > coderd/rbac/object_gen.go From 26c905e78ead63f266b21ad086b785058e86a372 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Thu, 17 Aug 2023 17:59:49 +0200 Subject: [PATCH 07/11] Install protoc --- .github/workflows/ci.yaml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index a5bb76489e086..bfff6924e1cc7 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -532,6 +532,19 @@ jobs: - name: Setup Terraform uses: ./.github/actions/setup-tf + - name: Install Protoc + run: | + # protoc must be in lockstep with our dogfood Dockerfile or the + # version in the comments will differ. This is also defined in + # security.yaml + set -x + cd dogfood + DOCKER_BUILDKIT=1 docker build . --target proto -t protoc + protoc_path=/usr/local/bin/protoc + docker run --rm --entrypoint cat protoc /tmp/bin/protoc > $protoc_path + chmod +x $protoc_path + protoc --version + - name: Build run: | make -B site/out/index.html From 4680e8d0c583bbf9ae40bce82c8d541284ea417e Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Fri, 18 Aug 2023 10:17:54 +0200 Subject: [PATCH 08/11] do not install protoc --- .github/workflows/ci.yaml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index b7cef0d59c91e..8212e77e9b2ee 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -508,19 +508,6 @@ jobs: - name: Setup Terraform uses: ./.github/actions/setup-tf - - name: Install Protoc - run: | - # protoc must be in lockstep with our dogfood Dockerfile or the - # version in the comments will differ. This is also defined in - # security.yaml - set -x - cd dogfood - DOCKER_BUILDKIT=1 docker build . --target proto -t protoc - protoc_path=/usr/local/bin/protoc - docker run --rm --entrypoint cat protoc /tmp/bin/protoc > $protoc_path - chmod +x $protoc_path - protoc --version - - name: Build run: | make -B site/out/index.html From b9bc34c701f3988b2c56290ff4e5b18c7ec5fc15 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Fri, 18 Aug 2023 10:21:00 +0200 Subject: [PATCH 09/11] Use nix to build site --- .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 8212e77e9b2ee..714d723976045 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -510,7 +510,7 @@ jobs: - name: Build run: | - make -B site/out/index.html + nix-shell --command 'make -B site/out/index.html' - run: pnpm playwright:install working-directory: site From 7ddea77d7cc24f24ee922f1f7a47cc0dc82847e1 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Fri, 18 Aug 2023 10:24:22 +0200 Subject: [PATCH 10/11] Install nix --- .github/workflows/ci.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 714d723976045..5510e0005b9ce 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -508,6 +508,12 @@ jobs: - name: Setup Terraform uses: ./.github/actions/setup-tf + - name: Install Nix + uses: DeterminateSystems/nix-installer-action@v4 + + - name: Run the Magic Nix Cache + uses: DeterminateSystems/magic-nix-cache-action@v2 + - name: Build run: | nix-shell --command 'make -B site/out/index.html' From da8a9b41e4fd47c77511b3bba3100c07c1b46513 Mon Sep 17 00:00:00 2001 From: Marcin Tojek Date: Fri, 18 Aug 2023 10:41:59 +0200 Subject: [PATCH 11/11] Run pnpm_install on make gen --- Makefile | 1 + site/package.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index b1b4fbb0c677f..0a112b24a868d 100644 --- a/Makefile +++ b/Makefile @@ -542,6 +542,7 @@ site/src/api/typesGenerated.ts: scripts/apitypings/main.go $(shell find ./coders site/e2e/provisionerGenerated.ts: cd site + ../scripts/pnpm_install.sh pnpm run gen:provisioner coderd/rbac/object_gen.go: scripts/rbacgen/main.go coderd/rbac/object.go diff --git a/site/package.json b/site/package.json index ad3c1ecdc5894..8976fe4659399 100644 --- a/site/package.json +++ b/site/package.json @@ -19,7 +19,7 @@ "lint:types": "tsc --noEmit", "playwright:install": "playwright install --with-deps chromium", "playwright:test": "playwright test --config=e2e/playwright.config.ts", - "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts-proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --ignore-path '/dev/null' --cache --write './e2e/provisionerGenerated.ts'", + "gen:provisioner": "protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./e2e/ --ts_proto_opt=outputJsonMethods=false,outputEncodeMethods=encode-no-creation,outputClientImpl=false,nestJs=false,outputPartialMethods=false,fileSuffix=Generated,suffix=hey -I ../provisionersdk/proto ../provisionersdk/proto/provisioner.proto && pnpm exec prettier --ignore-path '/dev/null' --cache --write './e2e/provisionerGenerated.ts'", "storybook": "STORYBOOK=true storybook dev -p 6006", "storybook:build": "storybook build --webpack-stats-json", "test": "jest --selectProjects test",