Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit791144d

Browse files
authored
feat(site): disable rich parameters when using open in coder (#10114)
* feat(site): disable rich parameters when using open in coder* updated docs* chore(site): increase refetch interval for deployment health* Revert "chore(site): increase refetch interval for deployment health"This reverts commit8e642be.
1 parent5673aca commit791144d

File tree

3 files changed

+42
-3
lines changed

3 files changed

+42
-3
lines changed

‎docs/templates/open-in-coder.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,13 @@ approach for "Open in Coder" flows.
106106

107107
![Pre-filled parameters](../images/templates/pre-filled-parameters.png)
108108

109+
1. Optional: disable specific parameter fields by including their names as
110+
specified in your template in the`disable_params` search params list
111+
112+
```md
113+
[![Open in Coder](https://YOUR_ACCESS_URL/open-in-coder.svg)](https://YOUR_ACCESS_URL/templates/YOUR_TEMPLATE/workspace?disable_params=first_parameter,second_parameter)
114+
```
115+
109116
##Example: Kubernetes
110117

111118
For a full example of the Open in Coder flow in Kubernetes, check out

‎site/e2e/tests/createWorkspace.spec.ts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import{test}from"@playwright/test";
1+
import{test,expect}from"@playwright/test";
22
import{
33
createTemplate,
44
createWorkspace,
@@ -119,3 +119,25 @@ test("create workspace and overwrite default parameters", async ({ page }) => {
119119
);
120120
awaitverifyParameters(page,workspaceName,richParameters,buildParameters);
121121
});
122+
123+
test("create workspace with disable_param search params",async({ page})=>{
124+
constrichParameters:RichParameter[]=[
125+
firstParameter,// mutable
126+
secondParameter,//immutable
127+
];
128+
129+
consttemplateName=awaitcreateTemplate(
130+
page,
131+
echoResponsesWithParameters(richParameters),
132+
);
133+
134+
awaitpage.goto(
135+
`/templates/${templateName}/workspace?disable_params=first_parameter,second_parameter`,
136+
{
137+
waitUntil:"domcontentloaded",
138+
},
139+
);
140+
141+
awaitexpect(page.getByLabel(/Firstparameter/i)).toBeDisabled();
142+
awaitexpect(page.getByLabel(/Secondparameter/i)).toBeDisabled();
143+
});

‎site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import { ExternalAuth } from "./ExternalAuth";
3131
import{ErrorAlert}from"components/Alert/ErrorAlert";
3232
import{Stack}from"components/Stack/Stack";
3333
import{typeExternalAuthPollingState}from"./CreateWorkspacePage";
34+
import{useSearchParams}from"react-router-dom";
3435

3536
exportinterfaceCreateWorkspacePageViewProps{
3637
error:unknown;
@@ -72,6 +73,9 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
7273
const[owner,setOwner]=useState(defaultOwner);
7374
const{ verifyExternalAuth, externalAuthErrors}=
7475
useExternalAuthVerification(externalAuth);
76+
const[searchParams]=useSearchParams();
77+
constdisabledParamsList=searchParams?.get("disable_params")?.split(",");
78+
7579
constform:FormikContextType<TypesGen.CreateWorkspaceRequest>=
7680
useFormik<TypesGen.CreateWorkspaceRequest>({
7781
initialValues:{
@@ -198,7 +202,10 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
198202
value:value,
199203
});
200204
},
201-
disabled:form.isSubmitting,
205+
disabled:
206+
disabledParamsList?.includes(
207+
parameter.name.toLowerCase().replace(//g,"_"),
208+
)||form.isSubmitting,
202209
};
203210
}}
204211
/>
@@ -216,7 +223,10 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
216223
value:value,
217224
});
218225
},
219-
disabled:form.isSubmitting,
226+
disabled:
227+
disabledParamsList?.includes(
228+
parameter.name.toLowerCase().replace(//g,"_"),
229+
)||form.isSubmitting,
220230
};
221231
}}
222232
/>

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp