diff --git a/web/components.d.ts b/web/components.d.ts index e8e2e378fe1..416f76038ba 100644 --- a/web/components.d.ts +++ b/web/components.d.ts @@ -17,6 +17,7 @@ declare module 'vue' { AdminReposTab: typeof import('./src/components/admin/settings/AdminReposTab.vue')['default'] AdminSecretsTab: typeof import('./src/components/admin/settings/AdminSecretsTab.vue')['default'] AdminUsersTab: typeof import('./src/components/admin/settings/AdminUsersTab.vue')['default'] + AdminVariablesTab: typeof import('./src/components/admin/settings/AdminVariablesTab.vue')['default'] Badge: typeof import('./src/components/atomic/Badge.vue')['default'] BadgeTab: typeof import('./src/components/repo/settings/BadgeTab.vue')['default'] Button: typeof import('./src/components/atomic/Button.vue')['default'] @@ -112,6 +113,10 @@ declare module 'vue' { UserCLIAndAPITab: typeof import('./src/components/user/UserCLIAndAPITab.vue')['default'] UserGeneralTab: typeof import('./src/components/user/UserGeneralTab.vue')['default'] UserSecretsTab: typeof import('./src/components/user/UserSecretsTab.vue')['default'] + UserVariablesTab: typeof import('./src/components/user/UserVariablesTab.vue')['default'] + VariableEdit: typeof import('./src/components/variables/VariableEdit.vue')['default'] + VariableList: typeof import('./src/components/variables/VariableList.vue')['default'] + VariablesTab: typeof import('./src/components/repo/settings/VariablesTab.vue')['default'] Warning: typeof import('./src/components/atomic/Warning.vue')['default'] } } diff --git a/web/src/assets/locales/en.json b/web/src/assets/locales/en.json index 12333412751..b25ef0e4216 100644 --- a/web/src/assets/locales/en.json +++ b/web/src/assets/locales/en.json @@ -275,6 +275,9 @@ "not_allowed": "You are not allowed to access this organization's settings", "secrets": { "desc": "Organization secrets can be passed to all organization's repository individual pipeline steps at runtime as environmental variables." + }, + "variables": { + "desc": "Organization variables can be passed to all organization's repository individual pipeline steps at runtime as environmental variables." } } }, @@ -285,6 +288,10 @@ "desc": "Global secrets can be passed to all repositories individual pipeline steps at runtime as environmental variables.", "warning": "These secrets will be available for all server users." }, + "variables": { + "desc": "Global variables can be passed to all repositories individual pipeline steps at runtime as environmental variables.", + "warning": "These variables will be available for all server users." + }, "agents": { "agents": "Agents", "desc": "Agents registered for this server", @@ -406,8 +413,13 @@ } }, "secrets": { + "secrets": "Secrets", "desc": "User secrets can be passed to all user's repository individual pipeline steps at runtime as environmental variables." }, + "variables": { + "variables": "Variables", + "desc": "User variables can be passed to all user's repository individual pipeline steps at runtime as environmental variables." + }, "cli_and_api": { "cli_and_api": "CLI & API", "desc": "Personal Access Token, CLI and API usage", @@ -423,6 +435,22 @@ "internal_error": "Some internal error occurred", "access_denied": "You are not allowed to login" }, + "variables": { + "variables": "Variables", + "desc": "Variables can be passed to individual pipeline steps at runtime as environmental variables.", + "none": "There are no variables yet.", + "add": "Add variable", + "save": "Save variable", + "show": "Show variables", + "name": "Name", + "value": "Value", + "delete_confirm": "Do you really want to delete this variable?", + "deleted": "Variable deleted", + "created": "Variable created", + "saved": "Variable saved", + "edit": "Edit variable", + "delete": "Delete variable" + }, "secrets": { "secrets": "Secrets", "desc": "Secrets can be passed to individual pipeline steps at runtime as environmental variables.", diff --git a/web/src/components/admin/settings/AdminVariablesTab.vue b/web/src/components/admin/settings/AdminVariablesTab.vue new file mode 100644 index 00000000000..0d67c845ad8 --- /dev/null +++ b/web/src/components/admin/settings/AdminVariablesTab.vue @@ -0,0 +1,100 @@ + + + diff --git a/web/src/components/repo/settings/VariablesTab.vue b/web/src/components/repo/settings/VariablesTab.vue new file mode 100644 index 00000000000..5415302a425 --- /dev/null +++ b/web/src/components/repo/settings/VariablesTab.vue @@ -0,0 +1,148 @@ + + + diff --git a/web/src/components/user/UserSecretsTab.vue b/web/src/components/user/UserSecretsTab.vue index 1288a5a8cad..21583a3b5d4 100644 --- a/web/src/components/user/UserSecretsTab.vue +++ b/web/src/components/user/UserSecretsTab.vue @@ -11,17 +11,16 @@