Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
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
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,22 @@

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

## [4.7.0](https://github.com/linode/apl-console/compare/v4.6.0...v4.7.0) (2025-07-31)


### Features

* allow users to define empty env values in builds ([#606](https://github.com/linode/apl-console/issues/606)) ([ebb7c52](https://github.com/linode/apl-console/commit/ebb7c52d0bdff4c43d3491e72ffd8ea0a38888a6))
* enhance dependabot configuration for auto-approval and grouping of dependencies ([#601](https://github.com/linode/apl-console/issues/601)) ([6896aed](https://github.com/linode/apl-console/commit/6896aed2276abe9ac9544117b2ec390d7ca1de37))
* hide default platform storage class in cluster settings page ([#614](https://github.com/linode/apl-console/issues/614)) ([764c196](https://github.com/linode/apl-console/commit/764c1965ece618711af6d12c7cbe139bef3c97fa))


### Bug Fixes

* add optional value label for environment variables in build creation ([#611](https://github.com/linode/apl-console/issues/611)) ([435daa8](https://github.com/linode/apl-console/commit/435daa8445ac8e3e6fdf4e197dbb630bace1ffc5))
* improve error handling and re-routing ([#607](https://github.com/linode/apl-console/issues/607)) ([43617e7](https://github.com/linode/apl-console/commit/43617e76ba05b44a77c5730d93e313cbb22d0f52))
* limit team name length to a maximum of 9 characters ([#612](https://github.com/linode/apl-console/issues/612)) ([59a2979](https://github.com/linode/apl-console/commit/59a29799a9c22e093412f3833f515a7c477d9715))

## [4.6.0](https://github.com/linode/apl-console/compare/v4.5.0...v4.6.0) (2025-06-24)


Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -154,5 +154,5 @@
"tag": true
}
},
"version": "4.6.0"
"version": "4.7.0"
}
1 change: 1 addition & 0 deletions src/components/Setting.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ export const getSettingUiSchema = (settings: GetSettingsInfoApiResponse, setting
const uiSchema: any = {
cluster: {
k8sContext: { 'ui:widget': 'hidden' },
defaultStorageClass: { 'ui:widget': 'hidden' },
},
otomi: {
isMultitenant: { 'ui:widget': 'hidden' },
Expand Down
4 changes: 3 additions & 1 deletion src/components/forms/KeyValue.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ interface KeyValueProps {
// render the value field as a textarea when true
isTextArea?: boolean
isEncrypted?: boolean
isValueOptional?: boolean
}

// This local subcomponent watches the key field (using its path) and checks the provided
Expand Down Expand Up @@ -182,6 +183,7 @@ export default function KeyValue(props: KeyValueProps) {
decoratorMapping,
isTextArea = false,
isEncrypted,
isValueOptional = false,
} = props

const { fields, append, remove } = useFieldArray({ control, name })
Expand Down Expand Up @@ -220,7 +222,7 @@ export default function KeyValue(props: KeyValueProps) {
const commonProps = {
...register(valuePath),
width: valueSize,
label: showLabel && localIndex === 0 ? valueLabel : '',
label: showLabel && localIndex === 0 ? `${valueLabel}${isValueOptional ? ' (optional)' : ''}` : '',
noMarginTop: compressed,
disabled: isFieldDisabled,
type: valueIsNumber ? 'number' : undefined,
Expand Down
3 changes: 2 additions & 1 deletion src/pages/builds/create-edit/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -313,12 +313,13 @@ export default function CreateEditBuilds({
title='Extra arguments'
subTitle='Additional arguments to pass on to the build executor'
keyLabel='Name'
valueLabel='Value (optional)'
valueLabel='Value'
addLabel='Add argument'
compressed
name={`mode.${watch('mode.type')}.envVars`}
{...register(`mode.${watch('mode.type')}.envVars`)}
errorText={extraArgumentsError()}
isValueOptional
/>

<Divider sx={{ mt: 2, mb: 2 }} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export const createTeamApiResponseSchema = yup.object({
name: yup
.string()
.required('Team name is required')
.max(10, 'Team name must be at most 10 characters')
.max(9, 'Team name must not exceed 9 characters')
.matches(/^[^A-Z_]*$/, 'Team name cannot contain capital letters or underscores'),
oidc: yup
.object({
Expand Down
4 changes: 4 additions & 0 deletions src/redux/otomiApi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7297,6 +7297,7 @@ export type GetSettingsApiResponse = /** status 200 The request is successful. *
k8sContext?: string
owner?: string
provider: 'linode' | 'custom'
defaultStorageClass?: string
}
platformBackups?: {
gitea?: {
Expand Down Expand Up @@ -7514,6 +7515,7 @@ export type GetSettingsApiResponse = /** status 200 The request is successful. *
value?: string
}[]
version: string
useORCS?: boolean
}
versions?: {
version: string
Expand Down Expand Up @@ -7559,6 +7561,7 @@ export type EditSettingsApiArg = {
k8sContext?: string
owner?: string
provider: 'linode' | 'custom'
defaultStorageClass?: string
}
platformBackups?: {
gitea?: {
Expand Down Expand Up @@ -7776,6 +7779,7 @@ export type EditSettingsApiArg = {
value?: string
}[]
version: string
useORCS?: boolean
}
versions?: {
version: string
Expand Down