perf: Translate (#14468)

* feat: azure key vault

* perf: add azure-keyvault-secrets

* perf:azure kv api

* perf: Translate

* perf: Update Dockerfile with new base image tag

* perf: Error when secret is empty

* perf: Translate

* perf: Update Dockerfile with new base image tag

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
pull/14472/head
Halo 2024-11-18 18:48:33 +08:00 committed by GitHub
parent 2908d4ee5f
commit 822b353a40
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 74 additions and 75 deletions

View File

@ -67,7 +67,7 @@ msgstr "完成"
#: assets/serializers/automations/base.py:52 audits/const.py:64
#: audits/models.py:64 audits/signal_handlers/activity_log.py:33
#: common/const/choices.py:65 ops/const.py:74 ops/serializers/celery.py:48
#: terminal/const.py:80 terminal/models/session/sharing.py:121
#: terminal/const.py:78 terminal/models/session/sharing.py:121
#: tickets/views/approve.py:128
msgid "Success"
msgstr "成功"
@ -76,7 +76,7 @@ msgstr "成功"
#: accounts/const/account.py:34 accounts/const/automation.py:109
#: accounts/serializers/automations/change_secret.py:174 audits/const.py:65
#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:66
#: ops/const.py:76 terminal/const.py:81 xpack/plugins/cloud/const.py:47
#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47
msgid "Failed"
msgstr "失败"
@ -304,12 +304,12 @@ msgstr "仅创建"
msgid "Email"
msgstr "邮箱"
#: accounts/const/automation.py:105 terminal/const.py:89
#: accounts/const/automation.py:105 terminal/const.py:87
msgid "SFTP"
msgstr "SFTP"
#: accounts/const/automation.py:111 assets/serializers/automations/base.py:54
#: common/const/choices.py:63 terminal/const.py:79 tickets/const.py:29
#: common/const/choices.py:63 terminal/const.py:77 tickets/const.py:29
#: tickets/const.py:38
msgid "Pending"
msgstr "待定的"
@ -319,13 +319,13 @@ msgstr "待定的"
msgid "Database"
msgstr "数据库"
#: accounts/const/vault.py:9 settings/serializers/feature.py:70
#: accounts/const/vault.py:9 settings/serializers/feature.py:46
msgid "HCP Vault"
msgstr "HashiCorp Vault"
#: accounts/const/vault.py:10 settings/serializers/feature.py:83
msgid "Azure Key Vault"
msgstr ""
msgstr "Azure Key Vault"
#: accounts/mixins.py:35
msgid "Export all"
@ -473,7 +473,7 @@ msgstr "账号备份计划"
#: assets/models/automations/base.py:115 audits/models.py:65
#: ops/models/base.py:55 ops/models/celery.py:89 ops/models/job.py:247
#: ops/templates/ops/celery_task_log.html:101
#: perms/models/asset_permission.py:78 settings/serializers/feature.py:26
#: perms/models/asset_permission.py:78 settings/serializers/feature.py:25
#: settings/templates/ldap/_msg_import_ldap_user.html:5
#: terminal/models/applet/host.py:141 terminal/models/session/session.py:45
#: tickets/models/ticket/apply_application.py:30
@ -593,7 +593,7 @@ msgstr "结束日期"
#: accounts/models/automations/change_secret.py:44
#: assets/models/automations/base.py:113
#: assets/serializers/automations/base.py:39 audits/models.py:208
#: audits/serializers.py:69 ops/models/base.py:49 ops/models/job.py:239
#: audits/serializers.py:54 ops/models/base.py:49 ops/models/job.py:239
#: terminal/models/applet/applet.py:331 terminal/models/applet/host.py:140
#: terminal/models/component/status.py:30
#: terminal/models/virtualapp/virtualapp.py:99
@ -665,7 +665,7 @@ msgstr "触发方式"
#: accounts/models/automations/push_account.py:16 acls/models/base.py:41
#: acls/serializers/base.py:57 assets/models/cmd_filter.py:81
#: audits/models.py:92 audits/serializers.py:99
#: audits/models.py:92 audits/serializers.py:84
#: authentication/serializers/connect_token_secret.py:119
#: authentication/templates/authentication/_access_key_modal.html:34
#: perms/serializers/permission.py:52 perms/serializers/permission.py:74
@ -673,7 +673,7 @@ msgstr "触发方式"
msgid "Action"
msgstr "动作"
#: accounts/models/automations/push_account.py:58
#: accounts/models/automations/push_account.py:57
msgid "Push asset account"
msgstr "账号推送"
@ -728,7 +728,7 @@ msgstr "密码规则"
#: rbac/serializers/role.py:28 settings/models.py:35 settings/models.py:184
#: settings/serializers/msg.py:89 settings/serializers/terminal.py:9
#: terminal/models/applet/applet.py:34 terminal/models/component/endpoint.py:13
#: terminal/models/component/endpoint.py:112
#: terminal/models/component/endpoint.py:111
#: terminal/models/component/storage.py:26 terminal/models/component/task.py:13
#: terminal/models/component/terminal.py:85
#: terminal/models/virtualapp/provider.py:10
@ -884,8 +884,8 @@ msgstr "类别"
#: acls/serializers/command_acl.py:19 assets/models/automations/base.py:20
#: assets/models/cmd_filter.py:74 assets/models/platform.py:96
#: assets/serializers/asset/common.py:146 assets/serializers/platform.py:159
#: assets/serializers/platform.py:171 audits/serializers.py:68
#: audits/serializers.py:185
#: assets/serializers/platform.py:171 audits/serializers.py:53
#: audits/serializers.py:170
#: authentication/serializers/connect_token_secret.py:126 ops/models/job.py:153
#: perms/serializers/user_permission.py:27 terminal/models/applet/applet.py:40
#: terminal/models/component/storage.py:58
@ -958,7 +958,7 @@ msgstr "ID"
#: acls/templates/acls/user_login_reminder.html:8
#: assets/models/cmd_filter.py:24 assets/models/label.py:16 audits/models.py:54
#: audits/models.py:90 audits/models.py:172 audits/models.py:271
#: audits/serializers.py:186 authentication/models/connection_token.py:32
#: audits/serializers.py:171 authentication/models/connection_token.py:32
#: authentication/models/ssh_key.py:22 authentication/models/sso_token.py:16
#: notifications/models/notification.py:12
#: perms/api/user_permission/mixin.py:55 perms/models/asset_permission.py:63
@ -1076,8 +1076,8 @@ msgstr "关联平台,可配置推送参数,如果不关联,将使用默认
#: ops/models/job.py:163 ops/models/playbook.py:31 rbac/models/role.py:37
#: settings/models.py:40 terminal/models/applet/applet.py:46
#: terminal/models/applet/applet.py:332 terminal/models/applet/host.py:143
#: terminal/models/component/endpoint.py:27
#: terminal/models/component/endpoint.py:122
#: terminal/models/component/endpoint.py:26
#: terminal/models/component/endpoint.py:121
#: terminal/models/session/session.py:47
#: terminal/models/virtualapp/virtualapp.py:28 tickets/models/comment.py:32
#: tickets/models/ticket/general.py:298 users/models/user/__init__.py:91
@ -1359,12 +1359,12 @@ msgid "Notify and warn"
msgstr "提示并告警"
#: acls/models/base.py:37 assets/models/cmd_filter.py:76
#: terminal/models/component/endpoint.py:115 xpack/plugins/cloud/models.py:316
#: terminal/models/component/endpoint.py:114 xpack/plugins/cloud/models.py:316
msgid "Priority"
msgstr "优先级"
#: acls/models/base.py:38 assets/models/cmd_filter.py:76
#: terminal/models/component/endpoint.py:116 xpack/plugins/cloud/models.py:317
#: terminal/models/component/endpoint.py:115 xpack/plugins/cloud/models.py:317
msgid "1-100, the lower the value will be match first"
msgstr "优先级可选范围为 1-100 (数值越小越优先)"
@ -1378,8 +1378,8 @@ msgstr "审批人"
#: authentication/models/connection_token.py:53
#: authentication/models/ssh_key.py:13
#: authentication/templates/authentication/_access_key_modal.html:32
#: perms/models/asset_permission.py:82 terminal/models/component/endpoint.py:28
#: terminal/models/component/endpoint.py:123
#: perms/models/asset_permission.py:82 terminal/models/component/endpoint.py:27
#: terminal/models/component/endpoint.py:122
#: terminal/models/session/sharing.py:29 terminal/serializers/terminal.py:44
#: tickets/const.py:36
msgid "Active"
@ -1399,7 +1399,7 @@ msgid "Accounts"
msgstr "账号"
#: acls/models/command_acl.py:16 assets/models/cmd_filter.py:60
#: ops/serializers/job.py:79 terminal/const.py:88
#: ops/serializers/job.py:79 terminal/const.py:86
#: terminal/models/session/session.py:43 terminal/serializers/command.py:18
#: terminal/templates/terminal/_msg_command_alert.html:12
#: terminal/templates/terminal/_msg_command_execute_alert.html:10
@ -1413,7 +1413,7 @@ msgid "Regex"
msgstr "正则表达式"
#: acls/models/command_acl.py:26 assets/models/cmd_filter.py:79
#: settings/models.py:185 settings/serializers/feature.py:21
#: settings/models.py:185 settings/serializers/feature.py:20
#: settings/serializers/msg.py:78 xpack/plugins/license/models.py:30
msgid "Content"
msgstr "内容"
@ -1587,7 +1587,7 @@ msgid "Login city"
msgstr "登录城市"
#: acls/templates/acls/user_login_reminder.html:11 audits/models.py:197
#: audits/models.py:266 audits/serializers.py:83
#: audits/models.py:266 audits/serializers.py:68
msgid "User agent"
msgstr "用户代理"
@ -1673,7 +1673,7 @@ msgid "Authentication failed"
msgstr "认证失败"
#: assets/automations/ping_gateway/manager.py:60
#: assets/automations/ping_gateway/manager.py:86 terminal/const.py:104
#: assets/automations/ping_gateway/manager.py:86 terminal/const.py:102
msgid "Connect failed"
msgstr "连接失败"
@ -1721,9 +1721,9 @@ msgstr "脚本"
#: assets/const/category.py:10 assets/models/asset/host.py:8
#: settings/serializers/auth/radius.py:17 settings/serializers/auth/sms.py:76
#: settings/serializers/feature.py:72 settings/serializers/feature.py:85
#: settings/serializers/msg.py:30 terminal/models/component/endpoint.py:14
#: terminal/serializers/applet.py:17 xpack/plugins/cloud/manager.py:89
#: settings/serializers/feature.py:52 settings/serializers/msg.py:30
#: terminal/models/component/endpoint.py:14 terminal/serializers/applet.py:17
#: xpack/plugins/cloud/manager.py:89
#: xpack/plugins/cloud/serializers/account_attrs.py:72
msgid "Host"
msgstr "主机"
@ -2030,7 +2030,7 @@ msgstr "忽略证书校验"
msgid "Postgresql SSL mode"
msgstr "PostgreSQL SSL 模式"
#: assets/models/asset/gpt.py:8 settings/serializers/feature.py:115
#: assets/models/asset/gpt.py:8 settings/serializers/feature.py:92
msgid "Proxy"
msgstr "代理"
@ -2821,7 +2821,7 @@ msgid "Finished"
msgstr "结束"
#: audits/const.py:46 settings/serializers/terminal.py:6
#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:182
#: terminal/models/applet/host.py:26 terminal/models/component/terminal.py:174
#: terminal/models/virtualapp/provider.py:14 terminal/serializers/session.py:57
#: terminal/serializers/session.py:113
msgid "Terminal"
@ -2859,14 +2859,14 @@ msgstr "否"
#: audits/models.py:47
msgid "Job audit log"
msgstr "作业审计"
msgstr "作业审计日志"
#: audits/models.py:56 audits/models.py:100 audits/models.py:175
#: terminal/models/session/session.py:39 terminal/models/session/sharing.py:113
msgid "Remote addr"
msgstr "远端地址"
#: audits/models.py:61 audits/serializers.py:53
#: audits/models.py:61 audits/serializers.py:38
msgid "Operate"
msgstr "操作"
@ -2891,12 +2891,12 @@ msgstr "会话"
msgid "File transfer log"
msgstr "文件传输"
#: audits/models.py:94 audits/serializers.py:101
#: audits/models.py:94 audits/serializers.py:86
msgid "Resource Type"
msgstr "资源类型"
#: audits/models.py:95 audits/models.py:98 audits/models.py:144
#: audits/serializers.py:100 labels/serializers.py:46
#: audits/serializers.py:85 labels/serializers.py:46
msgid "Resource"
msgstr "资源"
@ -2938,7 +2938,7 @@ msgstr "登录方式"
msgid "Login IP"
msgstr "登录 IP"
#: audits/models.py:200 audits/serializers.py:67
#: audits/models.py:200 audits/serializers.py:52
#: authentication/templates/authentication/_mfa_confirm_modal.html:14
#: users/forms/profile.py:63 users/models/user/__init__.py:79
#: users/serializers/profile.py:70
@ -2982,20 +2982,20 @@ msgstr "下线用户会话"
msgid "Creator"
msgstr "创建者"
#: audits/serializers.py:84
#: audits/serializers.py:69
msgid "Reason display"
msgstr "原因描述"
#: audits/serializers.py:85 audits/serializers.py:199
#: audits/serializers.py:70 audits/serializers.py:184
msgid "Auth backend display"
msgstr "认证方式"
#: audits/serializers.py:149
#: audits/serializers.py:134
#, python-format
msgid "%s %s this resource"
msgstr "用户 %s %s 了当前资源"
#: audits/serializers.py:187 authentication/models/connection_token.py:47
#: audits/serializers.py:172 authentication/models/connection_token.py:47
#: authentication/models/temp_token.py:13 perms/models/asset_permission.py:80
#: tickets/models/ticket/apply_application.py:31
#: tickets/models/ticket/apply_asset.py:20 users/models/user/__init__.py:98
@ -3523,7 +3523,7 @@ msgid "Please change your password"
msgstr "请修改密码"
#: authentication/models/access_key.py:22
#: terminal/models/component/endpoint.py:113
#: terminal/models/component/endpoint.py:112
msgid "IP group"
msgstr "IPグループ"
@ -3814,7 +3814,7 @@ msgstr "代码错误"
#: authentication/templates/authentication/_msg_oauth_bind.html:3
#: authentication/templates/authentication/_msg_reset_password.html:3
#: authentication/templates/authentication/_msg_reset_password_code.html:9
#: jumpserver/conf.py:529
#: jumpserver/conf.py:522
#: perms/templates/perms/_msg_item_permissions_expire.html:3
#: tickets/templates/tickets/approve_check_password.html:32
#: users/templates/users/_msg_account_expire_reminder.html:4
@ -6124,13 +6124,12 @@ msgstr "图标"
msgid "Service provider"
msgstr "服务提供商"
#: settings/serializers/auth/oauth2.py:31 settings/serializers/feature.py:88
#: settings/serializers/auth/oauth2.py:31
#: xpack/plugins/cloud/serializers/account_attrs.py:35
msgid "Client ID"
msgstr "客户端 ID"
#: settings/serializers/auth/oauth2.py:34 settings/serializers/auth/oidc.py:24
#: settings/serializers/feature.py:91
#: xpack/plugins/cloud/serializers/account_attrs.py:38
msgid "Client Secret"
msgstr "客户端密钥"
@ -6577,7 +6576,7 @@ msgstr "启用 Vault"
#: settings/serializers/feature.py:53
msgid "Vault provider"
msgstr "服务商"
msgstr "保管库服务商"
#: settings/serializers/feature.py:58
msgid "Record limit"
@ -6600,76 +6599,76 @@ msgstr "挂载点"
#: settings/serializers/feature.py:94
#: xpack/plugins/cloud/serializers/account_attrs.py:41
msgid "Tenant ID"
msgstr "客户端 ID"
msgstr "租户 ID"
#: settings/serializers/feature.py:99 settings/serializers/feature.py:105
msgid "Chat AI"
msgstr "聊天 AI"
#: settings/serializers/feature.py:108
#: settings/serializers/feature.py:85
msgid "GPT Base URL"
msgstr "GPT 地址"
#: settings/serializers/feature.py:109
#: settings/serializers/feature.py:86
msgid "The base URL of the GPT service. For example: https://api.openai.com/v1"
msgstr "GPT 服务的基本 URL。例如https://api.openai.com/v1"
#: settings/serializers/feature.py:112 templates/_header_bar.html:96
#: settings/serializers/feature.py:89 templates/_header_bar.html:96
msgid "API Key"
msgstr "API Key"
#: settings/serializers/feature.py:116
#: settings/serializers/feature.py:93
msgid ""
"The proxy server address of the GPT service. For example: http://ip:port"
msgstr "GPT 服务的代理服务器地址。例如http://ip:port"
#: settings/serializers/feature.py:119
#: settings/serializers/feature.py:96
msgid "GPT Model"
msgstr "GPT 模型"
#: settings/serializers/feature.py:128
#: settings/serializers/feature.py:105
msgid "Approval without login"
msgstr "免登录审批"
#: settings/serializers/feature.py:129
#: settings/serializers/feature.py:106
msgid "Allow direct approval ticket without login"
msgstr "允许无需登录直接批准工单"
#: settings/serializers/feature.py:133
#: settings/serializers/feature.py:110
msgid "Period"
msgstr "时段"
#: settings/serializers/feature.py:134
#: settings/serializers/feature.py:111
msgid ""
"The default authorization time period when applying for assets via a ticket"
msgstr "工单申请资产的默认授权时间段"
#: settings/serializers/feature.py:137
#: settings/serializers/feature.py:114
msgid "hour"
msgstr "时"
#: settings/serializers/feature.py:138
#: settings/serializers/feature.py:115
msgid "Unit"
msgstr "单位"
#: settings/serializers/feature.py:138
#: settings/serializers/feature.py:115
msgid "The unit of period"
msgstr "执行周期"
#: settings/serializers/feature.py:147
#: settings/serializers/feature.py:124
msgid ""
"Allow users to execute batch commands in the Workbench - Job Center - Adhoc"
msgstr "允许用户在工作台 - 作业中心 - Adhoc 中执行批量命令"
#: settings/serializers/feature.py:151
#: settings/serializers/feature.py:128
msgid "Command blacklist"
msgstr "作业中心命令黑名单"
#: settings/serializers/feature.py:152
#: settings/serializers/feature.py:129
msgid "Command blacklist in Adhoc"
msgstr "作业中心命令黑名单"
#: settings/serializers/feature.py:157
#: settings/serializers/feature.py:134
#: terminal/models/virtualapp/provider.py:17
#: terminal/models/virtualapp/virtualapp.py:36
#: terminal/models/virtualapp/virtualapp.py:97
@ -6677,11 +6676,11 @@ msgstr "作业中心命令黑名单"
msgid "Virtual app"
msgstr "虚拟应用"
#: settings/serializers/feature.py:160
#: settings/serializers/feature.py:137
msgid "Virtual App"
msgstr "虚拟应用"
#: settings/serializers/feature.py:162
#: settings/serializers/feature.py:139
msgid ""
"Virtual applications, you can use the Linux operating system as an "
"application server in remote applications."
@ -7629,7 +7628,7 @@ msgstr "严重"
msgid "High"
msgstr "较高"
#: terminal/const.py:47 terminal/const.py:86
#: terminal/const.py:47 terminal/const.py:84
#: users/templates/users/reset_password.html:54
msgid "Normal"
msgstr "正常"
@ -7638,47 +7637,47 @@ msgstr "正常"
msgid "Offline"
msgstr "离线"
#: terminal/const.py:82
#: terminal/const.py:80
msgid "Mismatch"
msgstr "未匹配"
#: terminal/const.py:87
#: terminal/const.py:85
msgid "Tunnel"
msgstr "隧道"
#: terminal/const.py:93
#: terminal/const.py:91
msgid "Read only"
msgstr "只读"
#: terminal/const.py:94
#: terminal/const.py:92
msgid "Writable"
msgstr "读写"
#: terminal/const.py:98
#: terminal/const.py:96
msgid "Kill session"
msgstr "终断会话"
#: terminal/const.py:99
#: terminal/const.py:97
msgid "Lock session"
msgstr "锁定会话"
#: terminal/const.py:100
#: terminal/const.py:98
msgid "Unlock session"
msgstr "解锁会话"
#: terminal/const.py:105
#: terminal/const.py:103
msgid "Replay create failed"
msgstr "录像创建失败"
#: terminal/const.py:106
#: terminal/const.py:104
msgid "Replay upload failed"
msgstr "录像上传失败"
#: terminal/const.py:107
#: terminal/const.py:105
msgid "Replay convert failed"
msgstr "录像转码失败"
#: terminal/const.py:108
#: terminal/const.py:106
msgid "Replay unsupported"
msgstr "不支持录像"
@ -8809,7 +8808,7 @@ msgstr "工单快照"
msgid "Please try again"
msgstr "请再次尝试"
#: tickets/models/ticket/general.py:483
#: tickets/models/ticket/general.py:481
msgid "Super ticket"
msgstr "超级工单"