Skip to content

Commit 5b62ae4

Browse files
frontend: version-chooser: add endpoints for managing environment variables
1 parent 43bf074 commit 5b62ae4

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

core/frontend/src/utils/version_chooser.ts

+40-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
DockerLoginInfo,
77
LocalVersionsQuery, Version, VersionsQuery, VersionType,
88
} from '@/types/version-chooser'
9-
import back_axios from '@/utils/api'
9+
import back_axios, { isBackendOffline } from '@/utils/api'
1010

1111
const API_URL = '/version-chooser/v1.0'
1212
const DEFAULT_REMOTE_IMAGE = 'bluerobotics/blueos-core'
@@ -199,6 +199,43 @@ async function dockerAccounts(): Promise<DockerLoginInfo[]> {
199199
return data.data as DockerLoginInfo[]
200200
}
201201

202+
203+
async function getVersionChooserEnvironmentVariables(): Promise<Record<string, unknown> | undefined> {
204+
return back_axios({
205+
method: 'get',
206+
url: '/version-chooser/v1.0/version/environment_variables',
207+
timeout: 5000,
208+
})
209+
.then((response) => response.data.environment_variables)
210+
.catch((error) => {
211+
if (isBackendOffline(error)) {
212+
return undefined
213+
}
214+
const message = `Could not get version chooser environment variables: ${error.response?.data ?? error.message}.`
215+
notifier.pushError('COMMANDER_GET_VERSION_CHOOSER_ENV_VARS_FAIL', message, true)
216+
return undefined
217+
})
218+
}
219+
220+
async function setVersionChooserEnvironmentVariables(variables: Record<string, unknown>): Promise<void> {
221+
return back_axios({
222+
method: 'post',
223+
url: '/version-chooser/v1.0/version/environment_variables',
224+
timeout: 5000,
225+
data: {
226+
environment_variables: variables,
227+
},
228+
})
229+
.then(() => {})
230+
.catch((error) => {
231+
if (isBackendOffline(error)) {
232+
return
233+
}
234+
const message = `Could not set version chooser environment variables: ${error.response?.data ?? error.message}.`
235+
notifier.pushError('COMMANDER_SET_VERSION_CHOOSER_ENV_VARS_FAIL', message, true)
236+
})
237+
}
238+
202239
export {
203240
DEFAULT_REMOTE_IMAGE,
204241
dockerAccounts,
@@ -209,6 +246,8 @@ export {
209246
getLatestStable,
210247
getLatestVersion,
211248
getVersionType,
249+
getVersionChooserEnvironmentVariables,
250+
setVersionChooserEnvironmentVariables,
212251
isSemVer,
213252
loadAvailableVersions,
214253
loadBootstrapCurrentVersion,

0 commit comments

Comments
 (0)