From 435daa8445ac8e3e6fdf4e197dbb630bace1ffc5 Mon Sep 17 00:00:00 2001
From: Ferruh <63190600+ferruhcihan@users.noreply.github.com>
Date: Mon, 21 Jul 2025 09:10:34 +0200
Subject: [PATCH 1/4] fix: add optional value label for environment variables
in build creation (#611)
(cherry picked from commit 8966ed55472723b0b789cafa09751aad85175071)
---
src/components/forms/KeyValue.tsx | 4 +++-
src/pages/builds/create-edit/index.tsx | 3 ++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/components/forms/KeyValue.tsx b/src/components/forms/KeyValue.tsx
index 41b1d6741..d2933b71c 100644
--- a/src/components/forms/KeyValue.tsx
+++ b/src/components/forms/KeyValue.tsx
@@ -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
@@ -182,6 +183,7 @@ export default function KeyValue(props: KeyValueProps) {
decoratorMapping,
isTextArea = false,
isEncrypted,
+ isValueOptional = false,
} = props
const { fields, append, remove } = useFieldArray({ control, name })
@@ -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,
diff --git a/src/pages/builds/create-edit/index.tsx b/src/pages/builds/create-edit/index.tsx
index 9906b2826..2c9247997 100644
--- a/src/pages/builds/create-edit/index.tsx
+++ b/src/pages/builds/create-edit/index.tsx
@@ -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
/>
From 59a29799a9c22e093412f3833f515a7c477d9715 Mon Sep 17 00:00:00 2001
From: Ferruh <63190600+ferruhcihan@users.noreply.github.com>
Date: Wed, 23 Jul 2025 11:03:05 +0200
Subject: [PATCH 2/4] fix: limit team name length to a maximum of 9 characters
(#612)
Co-authored-by: svcAPLBot <174728082+svcAPLBot@users.noreply.github.com>
(cherry picked from commit 56be57d6b4f694c56098187d8794f41c2648c1d1)
---
src/pages/teams/create-edit/create-edit-teams.validator.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/pages/teams/create-edit/create-edit-teams.validator.ts b/src/pages/teams/create-edit/create-edit-teams.validator.ts
index c310beb46..c970fe9ab 100644
--- a/src/pages/teams/create-edit/create-edit-teams.validator.ts
+++ b/src/pages/teams/create-edit/create-edit-teams.validator.ts
@@ -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({
From 764c1965ece618711af6d12c7cbe139bef3c97fa Mon Sep 17 00:00:00 2001
From: Ferruh <63190600+ferruhcihan@users.noreply.github.com>
Date: Fri, 25 Jul 2025 14:27:28 +0200
Subject: [PATCH 3/4] feat: hide default platform storage class in cluster
settings page (#614)
* feat: hide default platform storage class in cluster settings page
* fix: hide default storage class & update redux store
---------
Co-authored-by: svcAPLBot <174728082+svcAPLBot@users.noreply.github.com>
(cherry picked from commit 506ff79d89b0ed7ae135f924319ea5ebf6fb39ea)
---
src/components/Setting.tsx | 1 +
src/redux/otomiApi.ts | 4 ++++
2 files changed, 5 insertions(+)
diff --git a/src/components/Setting.tsx b/src/components/Setting.tsx
index c3d7e4cdc..1c3f158d2 100644
--- a/src/components/Setting.tsx
+++ b/src/components/Setting.tsx
@@ -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' },
diff --git a/src/redux/otomiApi.ts b/src/redux/otomiApi.ts
index 169850152..1d3ec5e14 100644
--- a/src/redux/otomiApi.ts
+++ b/src/redux/otomiApi.ts
@@ -7297,6 +7297,7 @@ export type GetSettingsApiResponse = /** status 200 The request is successful. *
k8sContext?: string
owner?: string
provider: 'linode' | 'custom'
+ defaultStorageClass?: string
}
platformBackups?: {
gitea?: {
@@ -7514,6 +7515,7 @@ export type GetSettingsApiResponse = /** status 200 The request is successful. *
value?: string
}[]
version: string
+ useORCS?: boolean
}
versions?: {
version: string
@@ -7559,6 +7561,7 @@ export type EditSettingsApiArg = {
k8sContext?: string
owner?: string
provider: 'linode' | 'custom'
+ defaultStorageClass?: string
}
platformBackups?: {
gitea?: {
@@ -7776,6 +7779,7 @@ export type EditSettingsApiArg = {
value?: string
}[]
version: string
+ useORCS?: boolean
}
versions?: {
version: string
From 028ff553ac932953b587bd204e757796c3a96dbc Mon Sep 17 00:00:00 2001
From: Ani1357
Date: Thu, 31 Jul 2025 14:29:55 +0200
Subject: [PATCH 4/4] chore(release): 4.7.0
---
CHANGELOG.md | 16 ++++++++++++++++
package-lock.json | 4 ++--
package.json | 2 +-
3 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f7558e649..ac9758545 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -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)
diff --git a/package-lock.json b/package-lock.json
index 74a9124ce..321d7147b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "otomi-console",
- "version": "4.6.0",
+ "version": "4.7.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "otomi-console",
- "version": "4.6.0",
+ "version": "4.7.0",
"dependencies": {
"@babel/plugin-proposal-private-property-in-object": "^7.21.11",
"@braintree/sanitize-url": "^6.0.4",
diff --git a/package.json b/package.json
index ecee891ad..7d0ff03b0 100644
--- a/package.json
+++ b/package.json
@@ -154,5 +154,5 @@
"tag": true
}
},
- "version": "4.6.0"
+ "version": "4.7.0"
}