8000 feat(site): add build parameters option when starting or restarting a workspace by BrunoQuaresma · Pull Request #8524 · coder/coder · GitHub
[go: up one dir, main page]

Skip to content

feat(site): add build parameters option when starting or restarting a workspace #8524

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
Jul 18, 2023
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add empty state
  • Loading branch information
BrunoQuaresma committed Jul 14, 2023
commit c4984b8b369b2909bd4efe1cbe03be8aa9220c29
78 changes: 55 additions & 23 deletions site/src/components/WorkspaceActions/BuildParametersPopover.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ import { FormFields } from "components/Form/Form"
import { Loader } from "components/Loader/Loader"
import { RichParameterInput } from "components/RichParameterInput/RichParameterInput"
import {
HelpTooltipLink,
HelpTooltipLinksGroup,
HelpTooltipText,
HelpTooltipTitle,
} from "components/Tooltips/HelpTooltip/HelpTooltip"
Expand Down Expand Up @@ -75,28 +77,53 @@ export const BuildParametersPopover = ({
},
}}
>
<Box
sx={{
color: (theme) => theme.palette.text.secondary,
p: 2.5,
borderBottom: (theme) => `1px solid ${theme.palette.divider}`,
}}
>
<HelpTooltipTitle>Build Options</HelpTooltipTitle>
<HelpTooltipText>
These parameters only apply for a single workspace start.
</HelpTooltipText>
</Box>
<Box sx={{ p: 2.5 }}>
<Box>
{parameters && parameters.buildParameters && ephemeralParameters ? (
<Form
onSubmit={(buildParameters) => {
onSubmit(buildParameters)
setIsOpen(false)
}}
ephemeralParameters={ephemeralParameters}
buildParameters={parameters.buildParameters}
/>
ephemeralParameters.length > 0 ? (
<>
<Box
sx={{
color: (theme) => theme.palette.text.secondary,
p: 2.5,
borderBottom: (theme) =>
`1px solid ${theme.palette.divider}`,
}}
>
<HelpTooltipTitle>Build Options</HelpTooltipTitle>
<HelpTooltipText>
These parameters only apply for a single workspace start.
</HelpTooltipText>
</Box>
<Box sx={{ p: 2.5 }}>
<Form
onSubmit={(buildParameters) => {
onSubmit(buildParameters)
setIsOpen(false)
}}
ephemeralParameters={ephemeralParameters}
buildParameters={parameters.buildParameters}
/>
</Box>
</>
) : (
<Box
sx={{
color: (theme) => theme.palette.text.secondary,
p: 2.5,
borderBottom: (theme) => `1px solid ${theme.palette.divider}`,
}}
>
<HelpTooltipTitle>Build Options</HelpTooltipTitle>
<HelpTooltipText>
This template has no ephemeral build options.
</HelpTooltipText>
<HelpTooltipLinksGroup>
<HelpTooltipLink href="https://coder.com/docs/v2/latest/templates/parameters#ephemeral-parameters">
Read the docs
</HelpTooltipLink>
</HelpTooltipLinksGroup>
</Box>
)
) : (
<Loader />
)}
Expand Down Expand Up @@ -129,7 +156,7 @@ const Form = ({
const getFieldHelpers = getFormHelpers(form)

return (
<form action="">
<form onSubmit={form.handleSubmit}>
<FormFields>
{ephemeralParameters.map((parameter, index) => {
return (
Expand All @@ -151,7 +178,12 @@ const Form = ({
})}
</FormFields>
<Box sx={{ py: 3, pb: 1 }}>
<Button variant="contained" color="primary" sx={{ width: "100%" }}>
<Button
type="submit"
variant="contained"
color="primary"
sx={{ width: "100%" }}
>
Build workspace
</Button>
</Box>
Expand Down
0