diff --git a/src/portal/src/app/shared/entities/shared.const.ts b/src/portal/src/app/shared/entities/shared.const.ts index 3965bd14b743..470000c72b8f 100644 --- a/src/portal/src/app/shared/entities/shared.const.ts +++ b/src/portal/src/app/shared/entities/shared.const.ts @@ -21,6 +21,7 @@ import locale_fr from '@angular/common/locales/fr'; import locale_pt from '@angular/common/locales/pt-PT'; import locale_tr from '@angular/common/locales/tr'; import locale_de from '@angular/common/locales/de'; +import locale_ru from '@angular/common/locales/ru'; import { ClrCommonStrings } from '@clr/angular/utils/i18n/common-strings.interface'; export const enum AlertType { @@ -244,6 +245,7 @@ export const LANGUAGES = { 'pt-br': ['Português do Brasil', locale_pt], 'tr-tr': ['Türkçe', locale_tr], 'de-de': ['Deutsch', locale_de], + 'ru-ru': ['Русский', locale_ru], } as const; export const supportedLangs = Object.keys(LANGUAGES) as SupportedLanguage[]; /** diff --git a/src/portal/src/i18n/lang/ru-ru-lang.json b/src/portal/src/i18n/lang/ru-ru-lang.json new file mode 100644 index 000000000000..4c2fc4952ab6 --- /dev/null +++ b/src/portal/src/i18n/lang/ru-ru-lang.json @@ -0,0 +1,1847 @@ +{ + "APP_TITLE": { + "VMW_HARBOR": "Харбор", + "HARBOR": "Харбор", + "VIC": "vSphere Integrated Containers", + "MGMT": "Управление", + "REG": "Реестр", + "HARBOR_SWAGGER": "Харбор Swagger", + "THEME_DARK_TEXT": "ТЕМНЫЙ", + "THEME_LIGHT_TEXT": "СВЕТЛЫЙ" + }, + "SIGN_IN": { + "REMEMBER": "Запомнить меня", + "INVALID_MSG": "Неверное имя пользователя или пароль.", + "FORGOT_PWD": "Забыли пароль", + "HEADER_LINK": "Войти", + "CORE_SERVICE_NOT_AVAILABLE": "Основная служба недоступна.", + "OR": "ИЛИ", + "VIA_LOCAL_DB": "ВОЙТИ ЧЕРЕЗ ЛОКАЛЬНУЮ БАЗУ ДАННЫХ" + }, + "SIGN_UP": { + "TITLE": "Регистрация" + }, + "BUTTON": { + "STOP": "ОСТАНОВИТЬ", + "CANCEL": "ОТМЕНА", + "OK": "ОК", + "DELETE": "УДАЛИТЬ", + "LOG_IN": "ВОЙТИ", + "LOG_IN_OIDC": "Войти через OIDC провайдер", + "SIGN_UP_LINK": "Зарегистрироваться", + "SIGN_UP": "ЗАРЕГИСТРИРОВАТЬСЯ", + "CONFIRM": "ПОДТВЕРДИТЬ", + "SEND": "ОТПРАВИТЬ", + "SAVE": "СОХРАНИТЬ", + "TEST_MAIL": "ПРОВЕРИТЬ ПОЧТОВЫЙ СЕРВЕР", + "CLOSE": "ЗАКРЫТЬ", + "TEST_LDAP": "ПРОВЕРИТЬ LDAP СЕРВЕР", + "TEST_OIDC": "ПРОВЕРИТЬ OIDC СЕРВЕР", + "MORE_INFO": "Подробнее...", + "YES": "ДА", + "NO": "НЕТ", + "NEGATIVE": "ОТРИЦАТЕЛЬНО", + "COPY": "КОПИРОВАТЬ", + "EDIT": "РЕДАКТИРОВАТЬ", + "SWITCH": "ПЕРЕКЛЮЧИТЬ", + "REPLICATE": "РЕПЛИЦИРОВАТЬ", + "ACTIONS": "Действия", + "BROWSE": "Просмотреть", + "UPLOAD": "Загрузить", + "NO_FILE": "Файл не выбран", + "ADD": "ДОБАВИТЬ", + "RUN": "ЗАПУСТИТЬ", + "CONTINUE": "ПРОДОЛЖИТЬ", + "ENABLE": "ВКЛЮЧИТЬ", + "DISABLE": "ОТКЛЮЧИТЬ" + }, + "BATCH": { + "DELETED_SUCCESS": "Успешно удалено", + "DELETED_FAILURE": "Удаление не удалось или частично не удалось", + "SWITCH_SUCCESS": "Успешно переключено", + "SWITCH_FAILURE": "Переключение не удалось", + "REPLICATE_SUCCESS": "Успешно запущено", + "REPLICATE_FAILURE": "Запуск не удалось", + "STOP_SUCCESS": "Успешно остановлено", + "STOP_FAILURE": "Остановка выполнения не удалась", + "TIME_OUT": "Тайм-аут шлюза" + }, + "TOOLTIP": { + "NAME_FILTER": "Фильтровать по имени ресурса. Оставьте пустым или используйте '**' для соответствия всем. 'library/**' соответствует только ресурсам под 'library'. Для получения дополнительных шаблонов обратитесь к руководству пользователя.", + "TAG_FILTER": "Фильтровать по тегу/версии ресурсов. Оставьте пустым или используйте '**' для соответствия всем. '1.0*' соответствует только тегам, начинающимся с '1.0'. Для получения дополнительных шаблонов обратитесь к руководству пользователя.", + "LABEL_FILTER": "Фильтровать ресурсы по меткам.", + "RESOURCE_FILTER": "Фильтровать по типу ресурсов.", + "PUSH_BASED": "Отправлять ресурсы с локального Харбора на удаленный реестр.", + "PULL_BASED": "Получать ресурсы с удаленного реестра на локальный Харбор.", + "DESTINATION_NAMESPACE": "Укажите целевое пространство имен. Если пусто, ресурсы будут помещены в то же пространство имен, что и источник.", + "OVERRIDE": "Укажите, следует ли перезаписывать ресурсы в месте назначения, если ресурс с таким же именем уже существует.", + "EMAIL": "Email должен быть действительным адресом, например name@example.com.", + "USER_NAME": "Не может содержать специальные символы и максимальная длина должна быть 255 символов.", + "FULL_NAME": "Максимальная длина должна быть 20 символов.", + "COMMENT": "Длина комментария должна быть менее 30 символов.", + "CURRENT_PWD": "Требуется текущий пароль.", + "PASSWORD": "Пароль должен быть длиной от 8 до 20 символов с хотя бы одной заглавной буквой, одной строчной буквой и одной цифрой.", + "CONFIRM_PWD": "Пароли не совпадают.", + "SIGN_IN_USERNAME": "Требуется имя пользователя.", + "SIGN_IN_PWD": "Требуется пароль.", + "SIGN_UP_MAIL": "Email используется только для сброса пароля.", + "SIGN_UP_REAL_NAME": "Имя и фамилия", + "ITEM_REQUIRED": "Поле обязательно для заполнения.", + "SCOPE_REQUIRED": "Поле обязательно для заполнения и должно быть в формате области.", + "NUMBER_REQUIRED": "Поле обязательно для заполнения и должно быть числами.", + "PORT_REQUIRED": "Поле обязательно для заполнения и должно быть действительным номером порта.", + "CRON_REQUIRED": "Поле обязательно для заполнения и должно быть в формате cron.", + "EMAIL_EXISTING": "Адрес электронной почты уже существует.", + "USER_EXISTING": "Имя пользователя уже используется.", + "RULE_USER_EXISTING": "Имя уже используется.", + "EMPTY": "Имя обязательно", + "NONEMPTY": "Не может быть пустым", + "REPO_TOOLTIP": "Пользователи не могут выполнять никакие операции с образами в этом режиме.", + "ENDPOINT_FORMAT": "Конечная точка должна начинаться с HTTP:// или HTTPS://.", + "OIDC_ENDPOINT_FORMAT": "Конечная точка должна начинаться с HTTPS://.", + "OIDC_NAME": "Имя OIDC провайдера.", + "OIDC_ENDPOINT": "URL OIDC-совместимого сервера.", + "OIDC_SCOPE": "Область, отправляемая на OIDC сервер во время аутентификации. Должна содержать “openid” и “offline_access”. Если вы используете Google, удалите “offline_access” из этого поля.", + "OIDC_VERIFYCERT": "Снимите этот флажок, если ваш OIDC сервер размещен на самоподписанном сертификате.", + "OIDC_AUTOONBOARD": "Пропустить экран адаптации, чтобы пользователь не мог изменить свое имя пользователя. Имя пользователя предоставляется из ID токена", + "OIDC_USER_CLAIM": "Имя утверждения в ID токене, откуда извлекается имя пользователя. Если не указано, по умолчанию будет использоваться 'name'", + "NEW_SECRET": "Секрет должен быть длиннее 8 символов с хотя бы одной заглавной буквой, одной строчной буквой и одной цифрой" + }, + "PLACEHOLDER": { + "CURRENT_PWD": "Введите текущий пароль", + "NEW_PWD": "Введите новый пароль", + "CONFIRM_PWD": "Подтвердите новый пароль", + "USER_NAME": "Введите имя пользователя", + "MAIL": "Введите адрес электронной почты", + "FULL_NAME": "Введите полное имя", + "SIGN_IN_NAME": "Имя пользователя", + "SIGN_IN_PWD": "Пароль" + }, + "PROFILE": { + "TITLE": "Профиль пользователя", + "USER_NAME": "Имя пользователя", + "EMAIL": "Email", + "FULL_NAME": "Имя и фамилия", + "COMMENT": "Комментарии", + "PASSWORD": "Пароль", + "SAVE_SUCCESS": "Профиль пользователя успешно сохранен.", + "ADMIN_RENAME_BUTTON": "Изменить имя пользователя", + "ADMIN_RENAME_TIP": "Выберите кнопку, чтобы изменить имя пользователя на \"admin@harbor.local\". Эту операцию нельзя отменить.", + "RENAME_SUCCESS": "Имя успешно изменено!", + "RENAME_CONFIRM_INFO": "Предупреждение, изменение имени на admin@harbor.local не может быть отменено.", + "CLI_PASSWORD": "Секрет CLI", + "CLI_PASSWORD_TIP": "Вы можете использовать этот секрет CLI как пароль при использовании docker/helm cli для доступа к Харбору.", + "COPY_SUCCESS": "успешно скопировано", + "COPY_ERROR": "копирование не удалось", + "ADMIN_CLI_SECRET_BUTTON": "СГЕНЕРИРОВАТЬ СЕКРЕТ", + "ADMIN_CLI_SECRET_RESET_BUTTON": "Загрузить свой секрет", + "NEW_SECRET": "Секрет", + "CONFIRM_SECRET": "Повторно введите секрет", + "GENERATE_SUCCESS": "Настройка секрета CLI прошла успешно", + "GENERATE_ERROR": "Настройка секрета CLI не удалась", + "CONFIRM_TITLE_CLI_GENERATE": "Вы уверены, что можете повторно сгенерировать секрет?", + "CONFIRM_BODY_CLI_GENERATE": "Если вы повторно сгенерируете секрет CLI, старый секрет CLI будет отброшен" + }, + "CHANGE_PWD": { + "TITLE": "Изменить пароль", + "CURRENT_PWD": "Текущий пароль", + "NEW_PWD": "Новый пароль", + "CONFIRM_PWD": "Подтвердите пароль", + "SAVE_SUCCESS": "Пароль пользователя успешно изменен.", + "PASS_TIPS": "Длина от 8 до 128 символов с 1 заглавной, 1 строчной буквой и 1 цифрой" + }, + "ACCOUNT_SETTINGS": { + "PROFILE": "Профиль пользователя", + "CHANGE_PWD": "Изменить пароль", + "ABOUT": "О программе", + "LOGOUT": "Выйти" + }, + "GLOBAL_SEARCH": { + "PLACEHOLDER": "Поиск {{param}}...", + "PLACEHOLDER_VIC": "Поиск в Реестре..." + }, + "TOP_NAV": { + "DATETIME_RENDERING_DEFAULT": "По умолчанию" + }, + "SIDE_NAV": { + "DASHBOARD": "Панель управления", + "PROJECTS": "Проекты", + "SYSTEM_MGMT": { + "NAME": "Администрирование", + "USER": "Пользователи", + "GROUP": "Группы", + "REGISTRY": "Реестры", + "REPLICATION": "Репликации", + "CONFIG": "Конфигурация", + "VULNERABILITY": "Уязвимости", + "GARBAGE_COLLECTION": "Сборка мусора", + "INTERROGATION_SERVICES": "Сервисы опроса" + }, + "LOGS": "Логи", + "TASKS": "Задачи", + "API_EXPLORER": "Api Explorer", + "HARBOR_API_MANAGEMENT": "Harbor API V2.0", + "HELM_API_MANAGEMENT": "Harbor API", + "DISTRIBUTIONS": { + "NAME": "Распределения", + "INSTANCES": "Экземпляры" + } + }, + "USER": { + "ADD_ACTION": "Новый пользователь", + "ENABLE_ADMIN_ACTION": "СДЕЛАТЬ АДМИНИСТРАТОРОМ", + "DISABLE_ADMIN_ACTION": "ОТОЗВАТЬ АДМИНИСТРАТОРА", + "DEL_ACTION": "Удалить", + "FILTER_PLACEHOLDER": "Фильтровать пользователей", + "COLUMN_NAME": "Имя", + "COLUMN_ADMIN": "Администратор", + "COLUMN_EMAIL": "Email", + "COLUMN_REG_NAME": "Время регистрации", + "IS_ADMIN": "Да", + "IS_NOT_ADMIN": "Нет", + "ADD_USER_TITLE": "Новый пользователь", + "SAVE_SUCCESS": "Новый пользователь успешно создан.", + "DELETION_TITLE": "Подтвердить удаление пользователя", + "DELETION_SUMMARY": "Вы хотите удалить пользователя {{param}}?", + "DELETE_SUCCESS": "Пользователи успешно удалены.", + "ITEMS": "элементов", + "OF": "из", + "RESET_OK": "Пароль пользователей успешно сброшен", + "EXISTING_PASSWORD": "Новый пароль не может совпадать со старым", + "UNKNOWN": "Неизвестно", + "UNKNOWN_TIP": "Пожалуйста, проверьте, имеет ли пользователь статус администратора через Систему Управления Идентификацией, если значение \"Неизвестно\"" + }, + "PROJECT": { + "PROJECTS": "Проекты", + "NAME": "Название проекта", + "ROLE": "Роль", + "PUBLIC_OR_PRIVATE": "Уровень доступа", + "REPO_COUNT": "Количество репозиториев", + "CHART_COUNT": "Количество диаграмм", + "CREATION_TIME": "Время создания", + "ACCESS_LEVEL": "Уровень доступа", + "PUBLIC": "Публичный", + "PRIVATE": "Приватный", + "MAKE": "Создать", + "NEW_POLICY": "Новое правило репликации", + "DELETE": "Удалить", + "ALL_PROJECTS": "Все проекты", + "PRIVATE_PROJECTS": "Приватные проекты", + "PUBLIC_PROJECTS": "Публичные проекты", + "PROJECT": "Проект", + "NEW_PROJECT": "Новый проект", + "NAME_TOOLTIP": "Название проекта должно содержать от 1 до 255 символов с нижними регистрами, цифрами и ._- и должно начинаться с символов или цифр.", + "NAME_IS_REQUIRED": "Название проекта обязательно.", + "NAME_ALREADY_EXISTS": "Название проекта уже существует.", + "NAME_IS_ILLEGAL": "Название проекта недействительно.", + "UNKNOWN_ERROR": "Произошла неизвестная ошибка при создании проекта.", + "ITEMS": "элементы", + "DELETION_TITLE": "Подтвердите удаление проекта", + "DELETION_SUMMARY": "Вы хотите удалить проект {{param}}?", + "FILTER_PLACEHOLDER": "Фильтровать проекты", + "REPLICATION_RULE": "Правило репликации", + "CREATED_SUCCESS": "Проект успешно создан.", + "DELETED_SUCCESS": "Проекты успешно удалены.", + "TOGGLED_SUCCESS": "Проект успешно переключен.", + "FAILED_TO_DELETE_PROJECT": "Проект содержит репозитории, правила репликации или диаграммы Helm и не может быть удален.", + "INLINE_HELP_PUBLIC": "Когда проект установлен как публичный, любой пользователь имеет права на чтение репозиториев в этом проекте, и пользователю не нужно выполнять \"docker login\" перед загрузкой образов в этот проект.", + "OF": "из", + "COUNT_QUOTA": "Квота по количеству", + "STORAGE_QUOTA": "Квота по хранилищу", + "COUNT_QUOTA_TIP": "Пожалуйста, введите целое число между '1' и '100,000,000', '-1' для неограниченного.", + "STORAGE_QUOTA_TIP": "Верхний предел Квоты по Хранилищу принимает только целые значения, ограниченные '1024TB'. Введите '-1' для неограниченной квоты", + "QUOTA_UNLIMIT_TIP": "Для неограниченной квоты введите '-1'.", + "TYPE": "Тип", + "PROXY_CACHE": "Прокси-кэш", + "PROXY_CACHE_TOOLTIP": "Включите это, чтобы разрешить проекту действовать как прокси-кэш для определенного экземпляра реестра. Harbor может действовать как прокси для DockerHub, Docker Registry, Harbor, Aws ECR, Azure ACR, Quay, Google GCR, Github GHCR и JFrog Artifactory.", + "ENDPOINT": "Конечная точка", + "PROXY_CACHE_ENDPOINT": "Конечная точка прокси-кэша", + "NO_PROJECT": "Мы не смогли найти никаких проектов" + }, + "PROJECT_DETAIL": { + "SUMMARY": "Сводка", + "REPOSITORIES": "Репозитории", + "REPLICATION": "Репликация", + "USERS": "Участники", + "LOGS": "Логи", + "LABELS": "Метки", + "PROJECTS": "Проекты", + "CONFIG": "Конфигурация", + "HELMCHART": "Диаграммы Helm", + "ROBOT_ACCOUNTS": "Аккаунты роботов", + "WEBHOOKS": "Вебхуки", + "IMMUTABLE_TAG": "Неизменяемые теги", + "POLICY": "Политика" + }, + "PROJECT_CONFIG": { + "REGISTRY": "Реестр проекта", + "PUBLIC_TOGGLE": "Публичный", + "PUBLIC_POLICY": "Сделать реестр проекта публичным сделает все репозитории доступными для всех.", + "SECURITY": "Безопасность развертывания", + "CONTENT_TRUST_TOGGLE": "Включить доверие к контенту", + "CONTENT_TRUST_POLCIY": "Разрешить развертывание только проверенных образов.", + "PREVENT_VULNERABLE_TOGGLE": "Предотвращать запуск уязвимых образов.", + "PREVENT_VULNERABLE_1": "Предотвращать развертывание образов с уязвимостью серьезности", + "PREVENT_VULNERABLE_2": "и выше.", + "SCAN": "Сканирование уязвимостей", + "AUTOSCAN_TOGGLE": "Автоматически сканировать образы при отправке", + "AUTOSCAN_POLICY": "Автоматически сканировать образы, когда они отправляются в реестр проекта." + }, + "MEMBER": { + "NEW_USER": "Добавить пользователя", + "NEW_MEMBER": "Новый участник", + "MEMBER": "Участник", + "NAME": "Имя", + "ROLE": "Роль", + "SYS_ADMIN": "Системный администратор", + "PROJECT_ADMIN": "Администратор проекта", + "PROJECT_MAINTAINER": "Сопровождающий", + "DEVELOPER": "Разработчик", + "GUEST": "Гость", + "LIMITED_GUEST": "Ограниченный гость", + "DELETE": "Удалить", + "ITEMS": "элементы", + "ACTIONS": "Действия", + "USER": "Пользователь", + "USERS": "Пользователи", + "EMAIL": "Email", + "ADD_USER": "Добавить пользователя", + "NEW_USER_INFO": "Добавить пользователя в качестве участника этого проекта с указанной ролью", + "NEW_GROUP": "Новая группа", + "IMPORT_GROUP": "Добавить группу", + "NEW_GROUP_INFO": "Добавить существующую группу пользователей или выбрать группу из LDAP/AD в качестве участника проекта", + "ADD_GROUP_SELECT": "Добавить существующую группу пользователей в качестве участника проекта", + "CREATE_GROUP_SELECT": "Добавить группу из LDAP в качестве участника проекта", + "LDAP_SEARCH_DN": "LDAP Группа DN", + "LDAP_SEARCH_NAME": "Имя", + "LDAP_GROUP": "Группа", + "LDAP_GROUPS": "Группы", + "LDAP_PROPERTY": "Свойство", + "ACTION": "ДЕЙСТВИЕ", + "MEMBER_TYPE": "Тип участника", + "GROUP_TYPE": "Группа", + "USER_TYPE": "Пользователь", + "USERNAME_IS_REQUIRED": "Имя пользователя обязательно", + "USERNAME_DOES_NOT_EXISTS": "Имя пользователя не существует", + "USERNAME_ALREADY_EXISTS": "Имя пользователя уже добавлено в этот проект", + "UNKNOWN_ERROR": "Произошла неизвестная ошибка при добавлении участника", + "FILTER_PLACEHOLDER": "Фильтровать участников", + "DELETION_TITLE": "Подтвердите удаление участников проекта", + "DELETION_SUMMARY": "Вы хотите удалить участников проекта {{param}}?", + "ADDED_SUCCESS": "Участник успешно добавлен.", + "DELETED_SUCCESS": "Участник успешно удален.", + "SWITCHED_SUCCESS": "Роль участника успешно переключена.", + "OF": "из", + "SWITCH_TITLE": "Подтвердите переключение участников проекта", + "SWITCH_SUMMARY": "Вы хотите переключить участников проекта {{param}}?", + "SET_ROLE": "Установить роль", + "REMOVE": "Удалить", + "GROUP_NAME_REQUIRED": "Имя группы обязательно", + "NON_EXISTENT_GROUP": "Имя группы не существует", + "GROUP_ALREADY_ADDED": "Имя группы уже добавлено в этот проект" + }, + "ROBOT_ACCOUNT": { + "NAME": "Имя", + "PERMISSIONS": "Разрешения", + "TOKEN": "Секрет", + "NEW_ROBOT_ACCOUNT": "НОВЫЙ АККАУНТ РОБОТА", + "ENABLED_STATE": "Состояние включения", + "NUMBER_REQUIRED": "Поле обязательно и должно быть целым числом, отличным от 0.", + "DESCRIPTION": "Описание", + "CREATETION": "Время создания", + "EXPIRATION": "Срок действия", + "TOKEN_EXPIRATION": "Срок действия токена робота (Дни)", + "ACTION": "Действие", + "EDIT": "Редактировать", + "ITEMS": "элементы", + "OF": "из", + "DISABLE_ACCOUNT": "Деактивировать аккаунт", + "ENABLE_ACCOUNT": "Включить аккаунт", + "DELETE": "Удалить", + "CREAT_ROBOT_ACCOUNT": "Создать аккаунт робота", + "PERMISSIONS_ARTIFACT": "Артефакт", + "PERMISSIONS_HELMCHART": "Диаграмма Helm (Chart Museum)", + "PUSH": "Отправить", + "PULL": "Загрузить", + "FILTER_PLACEHOLDER": "Фильтровать аккаунты роботов", + "ROBOT_NAME": "Не может содержать специальные символы(~#$%) и максимальная длина должна быть 255 символов.", + "ACCOUNT_EXISTING": "Аккаунт робота уже существует.", + "ALERT_TEXT": "Это единственный раз, когда вы можете скопировать этот секрет. У вас не будет другого шанса", + "CREATED_SUCCESS": "Успешно создан '{{param}}'.", + "COPY_SUCCESS": "Секрет успешно скопирован для '{{param}}'", + "DELETION_TITLE": "Подтвердите удаление аккаунтов роботов", + "DELETION_SUMMARY": "Вы хотите удалить аккаунты роботов {{param}}?", + "PULL_IS_MUST": "Разрешение на загрузку проверяется по умолчанию и не может быть изменено.", + "EXPORT_TO_FILE": "экспортировать в файл", + "EXPIRES_AT": "Истекает", + "EXPIRATION_TOOLTIP": "Если не установлено, будет использоваться время истечения системной конфигурации", + "INVALID_VALUE": "Значение срока действия недействительно", + "NEVER_EXPIRED": "Никогда не истекает", + "NAME_PREFIX": "Префикс имени робота", + "NAME_PREFIX_REQUIRED": "Префикс имени робота обязателен" + }, + "WEBHOOK": { + "EDIT_BUTTON": "РЕДАКТИРОВАТЬ", + "ENABLED_BUTTON": "ВКЛЮЧИТЬ", + "DISABLED_BUTTON": "ДЕАКТИВИРОВАТЬ", + "TYPE": "Вебхук", + "STATUS": "Статус", + "CREATED": "Создан", + "ENABLED": "Включен", + "DISABLED": "Деактивирован", + "OF": "из", + "ITEMS": "элементы", + "LAST_TRIGGERED": "Последний запуск", + "EDIT_WEBHOOK": "Редактировать вебхук", + "ADD_WEBHOOK": "Добавить вебхук", + "CREATE_WEBHOOK": "Начать с вебхуков", + "EDIT_WEBHOOK_DESC": "Укажите конечную точку для получения уведомлений вебхуков", + "CREATE_WEBHOOK_DESC": "Чтобы начать с вебхуков, предоставьте конечную точку и учетные данные для доступа к серверу вебхуков.", + "VERIFY_REMOTE_CERT_TOOLTIP": "Определите, должен ли вебхук проверять сертификат удаленного URL. Снимите этот флажок, если удаленный URL использует самоподписанный или ненадежный сертификат.", + "ENDPOINT_URL": "URL конечной точки", + "URL_IS_REQUIRED": "URL конечной точки обязателен.", + "AUTH_HEADER": "Заголовок аутентификации", + "VERIFY_REMOTE_CERT": "Проверить удаленный сертификат", + "TEST_ENDPOINT_BUTTON": "ПРОВЕРИТЬ КОНЕЧНУЮ ТОЧКУ", + "CANCEL_BUTTON": "ОТМЕНА", + "SAVE_BUTTON": "СОХРАНИТЬ", + "TEST_ENDPOINT_SUCCESS": "Соединение успешно проверено.", + "TEST_ENDPOINT_FAILURE": "Не удалось проверить конечную точку.", + "ENABLED_WEBHOOK_TITLE": "Включить вебхук", + "ENABLED_WEBHOOK_SUMMARY": "Вы хотите включить вебхук {{name}}?", + "DISABLED_WEBHOOK_TITLE": "Деактивировать вебхук", + "DISABLED_WEBHOOK_SUMMARY": "Вы хотите деактивировать вебхук {{name}}?", + "DELETE_WEBHOOK_TITLE": "Удалить вебхук(и)", + "DELETE_WEBHOOK_SUMMARY": "Вы хотите удалить вебхук(и) {{names}}?", + "WEBHOOKS": "Вебхуки", + "NEW_WEBHOOK": "Новый вебхук", + "ENABLE": "Включить", + "DISABLE": "Деактивировать", + "NAME": "Имя", + "TARGET": "URL конечной точки", + "EVENT_TYPES": "Типы событий", + "DESCRIPTION": "Описание", + "NO_WEBHOOK": "Нет вебхука", + "LAST_TRIGGER": "Последний триггер", + "WEBHOOK_NAME": "Имя вебхука", + "NO_TRIGGER": "Нет триггера", + "NAME_REQUIRED": "Имя обязательно", + "NOTIFY_TYPE": "Тип уведомления", + "EVENT_TYPE": "Тип события", + "EVENT_TYPE_REQUIRED": "Требуется хотя бы один тип события" + }, + "GROUP": { + "GROUP": "Группа", + "GROUPS": "Группы", + "IMPORT_LDAP_GROUP": "Импорт LDAP группы", + "IMPORT_HTTP_GROUP": "Новая HTTP группа", + "IMPORT_OIDC_GROUP": "Новая OIDC группа", + "ADD": "Новая группа", + "EDIT": "Редактировать", + "DELETE": "Удалить", + "NAME": "Имя", + "TYPE": "Тип", + "DN": "DN", + "GROUP_DN": "DN LDAP группы", + "PROPERTY": "Свойство", + "REG_TIME": "Время регистрации", + "ADD_GROUP_SUCCESS": "Группа успешно добавлена", + "EDIT_GROUP_SUCCESS": "Группа успешно отредактирована", + "LDAP_TYPE": "LDAP", + "HTTP_TYPE": "HTTP", + "OIDC_TYPE": "OIDC", + "OF": "из", + "ITEMS": "элементов", + "NEW_MEMBER": "Новый участник группы", + "NEW_USER_INFO": "Добавить группу как участника этого проекта с указанной ролью", + "ROLE": "Роль", + "SYS_ADMIN": "Системный администратор", + "PROJECT_ADMIN": "Администратор проекта", + "PROJECT_MAINTAINER": "Сопровождающий проекта", + "DEVELOPER": "Разработчик", + "GUEST": "Гость", + "LIMITED_GUEST": "Ограниченный гость", + "DELETION_TITLE": "Подтверждение удаления участников группы", + "DELETION_SUMMARY": "Вы хотите удалить участника(ов) группы {{param}}?" + }, + "AUDIT_LOG": { + "USERNAME": "Имя пользователя", + "REPOSITORY_NAME": "Имя репозитория", + "TAGS": "Теги", + "OPERATION": "Операция", + "OPERATIONS": "Операции", + "TIMESTAMP": "Отметка времени", + "ALL_OPERATIONS": "Все операции", + "PULL": "Выгрузка", + "PUSH": "Загрузка", + "CREATE": "Создать", + "DELETE": "Удалить", + "OTHERS": "Другие", + "ADVANCED": "Расширенный", + "SIMPLE": "Простой", + "ITEMS": "элементов", + "FILTER_PLACEHOLDER": "Фильтровать логи", + "INVALID_DATE": "Неверная дата.", + "OF": "из", + "NOT_FOUND": "Мы не смогли найти никаких логов!", + "RESOURCE": "Ресурс", + "RESOURCE_TYPE": "Тип ресурса" + }, + "REPLICATION": { + "YES": "Да", + "SECONDS": "Секунды", + "MINUTES": "Минуты", + "HOURS": "Часы", + "MONTH": "Месяц", + "DAY_MONTH": "День месяца", + "DAY_WEEK": "День недели", + "CRON_TITLE": "Описание шаблона для cron '* * * * * *'. Строка cron основана на времени UTC", + "FIELD_NAME": "Имя поля", + "MANDATORY": "Обязательно?", + "ALLOWED_VALUES": "Допустимые значения", + "ALLOWED_CHARACTERS": "Допустимые специальные символы", + "TOTAL": "Всего", + "OVERRIDE": "Переопределить", + "ENABLED_RULE": "Включить правило", + "OVERRIDE_INFO": "Переопределить", + "OPERATION": "Операция", + "CURRENT": "текущий", + "FILTER_PLACEHOLDER": "Фильтровать задачи", + "STOP_TITLE": "Подтверждение остановки выполнений", + "BOTH": "оба", + "STOP_SUCCESS": "Остановка выполнения {{param}} успешна", + "STOP_SUMMARY": "Вы хотите остановить выполнения {{param}}?", + "TASK_ID": "ID задачи", + "RESOURCE_TYPE": "Тип ресурса", + "SOURCE": "Источник", + "DESTINATION": "Назначение", + "POLICY": "Политика", + "DURATION": "Длительность", + "SUCCESS_RATE": "Успешный процент", + "SUCCESS": "УСПЕШНО", + "FAILURE": "ОШИБКА", + "IN_PROGRESS": "В ПРОЦЕССЕ", + "REPLICATION_RULE": "Правило репликации", + "NEW_REPLICATION_RULE": "Новое правило репликации", + "ENDPOINTS": "Конечные точки", + "FILTER_POLICIES_PLACEHOLDER": "Фильтровать правила", + "FILTER_EXECUTIONS_PLACEHOLDER": "Фильтровать выполнения", + "DELETION_TITLE": "Подтверждение удаления правила репликации", + "DELETION_SUMMARY": "Вы хотите удалить правило репликации {{param}}?", + "REPLICATION_TITLE": "Подтверждение репликации правила", + "REPLICATION_SUMMARY": "Вы хотите реплицировать правило {{param}}?", + "DELETION_TITLE_FAILURE": "Не удалось удалить правило", + "DELETION_SUMMARY_FAILURE": "имеет статус ожидания/выполнения/повторной попытки", + "REPLICATE_SUMMARY_FAILURE": "имеет статус ожидания/выполнения", + "FILTER_TARGETS_PLACEHOLDER": "Фильтровать конечные точки", + "DELETION_TITLE_TARGET": "Подтверждение удаления конечной точки", + "DELETION_SUMMARY_TARGET": "Вы хотите удалить конечную точку {{param}}?", + "ADD_POLICY": "Новое правило репликации", + "EDIT_POLICY": "Редактировать", + "EDIT_POLICY_TITLE": "Редактировать правило репликации", + "DELETE_POLICY": "Удалить", + "TEST_CONNECTION": "Проверить соединение", + "TESTING_CONNECTION": "Проверка соединения...", + "TEST_CONNECTION_SUCCESS": "Соединение успешно проверено.", + "TEST_CONNECTION_FAILURE": "Не удалось проверить соединение с конечной точкой.", + "ID": "ID", + "NAME": "Имя", + "NAME_IS_REQUIRED": "Имя обязательно.", + "DESCRIPTION": "Описание", + "ENABLE": "Включить", + "DISABLE": "Деактивировать", + "REPLICATION_MODE": "Режим репликации", + "SRC_REGISTRY": "Реестр источника", + "DESTINATION_NAMESPACE": "Реестр назначения:Пространство имен", + "DESTINATION_NAME_IS_REQUIRED": "Имя конечной точки обязательно.", + "NEW_DESTINATION": "Новая конечная точка", + "DESTINATION_URL": "URL конечной точки", + "DESTINATION_URL_IS_REQUIRED": "URL конечной точки обязателен.", + "DESTINATION_USERNAME": "Имя пользователя", + "DESTINATION_PASSWORD": "Пароль", + "ALL_STATUS": "Все статусы", + "ENABLED": "Включено", + "DISABLED": "Деактивировано", + "LAST_START_TIME": "Последнее время запуска", + "ACTIVATION": "Активация", + "REPLICATION_EXECUTION": "Выполнение", + "REPLICATION_EXECUTIONS": "Выполнения", + "STOPJOB": "Остановить", + "ALL": "Все", + "PENDING": "Ожидание", + "RUNNING": "Выполнение", + "ERROR": "Ошибка", + "RETRYING": "Повторная попытка", + "STOPPED": "ОСТАНОВЛЕНО", + "FINISHED": "Завершено", + "CANCELED": "Отменено", + "SIMPLE": "Простой", + "ADVANCED": "Расширенный", + "STATUS": "Статус", + "REPLICATION_TRIGGER": "Триггер", + "CREATION_TIME": "Время начала", + "UPDATE_TIME": "Время обновления", + "END_TIME": "Время окончания", + "LOGS": "Логи", + "OF": "из", + "ITEMS": "элементов", + "NO_LOGS": "Нет логов", + "TOGGLE_ENABLE_TITLE": "Включить правило", + "TOGGLE_DISABLE_TITLE": "Деактивировать правило", + "CREATED_SUCCESS": "Правило репликации успешно создано.", + "UPDATED_SUCCESS": "Правило репликации успешно обновлено.", + "DELETED_SUCCESS": "Правило репликации успешно удалено.", + "DELETED_FAILED": "Не удалось удалить правило репликации.", + "TOGGLED_SUCCESS": "Статус правила репликации успешно изменен.", + "CANNOT_EDIT": "Правило репликации не может быть изменено, пока оно включено.", + "INVALID_DATE": "Неверная дата.", + "PLACEHOLDER": "Мы не смогли найти никаких правил репликации!", + "JOB_PLACEHOLDER": "Мы не смогли найти никаких задач репликации!", + "NO_ENDPOINT_INFO": "Пожалуйста, добавьте конечную точку первой", + "NO_LABEL_INFO": "Пожалуйста, добавьте метку первой", + "NO_PROJECT_INFO": "Этот проект не существует", + "SOURCE_RESOURCE_FILTER": "Фильтр ресурсов источника", + "SCHEDULED": "Запланировано", + "MANUAL": "Вручную", + "EVENT_BASED": "На основе событий", + "DAILY": "Ежедневно", + "WEEKLY": "Еженедельно", + "SETTING": "Настройки", + "TRIGGER": "Условие триггера", + "TARGETS": "Цель", + "MODE": "Режим", + "TRIGGER_MODE": "Режим триггера", + "SOURCE_PROJECT": "Проект источника", + "REPLICATE": "Реплицировать", + "DELETE_REMOTE_IMAGES": "Удалять удаленные ресурсы при локальном удалении", + "DELETE_ENABLED": "Включить эту политику", + "NEW": "Новый", + "NAME_TOOLTIP": "Имя правила репликации должно быть не менее 2 символов с нижними регистрами, цифрами и символами ._- и должно начинаться с символов или цифр.", + "DESTINATION_NAME_TOOLTIP": "Имя назначения должно быть не менее 2 символов с нижними регистрами, цифрами и символами ._- и должно начинаться с символов или цифр.", + "ACKNOWLEDGE": "Подтвердить", + "RULE_DISABLED": "Это правило было деактивировано, так как метка, используемая в его фильтре, была удалена. \n Отредактируйте правило и обновите его фильтр, чтобы включить его.", + "REPLI_MODE": "Режим репликации", + "SOURCE_REGISTRY": "Реестр источника", + "SOURCE_NAMESPACES": "Пространства имен источника", + "DEST_REGISTRY": "Реестр назначения", + "DEST_NAMESPACE": "Пространство имен назначения", + "NAMESPACE_TOOLTIP": "Имя пространства имен должно быть не менее 2 символов с нижними регистрами, цифрами и символами ._-/ и должно начинаться с символов или цифр.", + "TAG": "Тег", + "LABEL": "Метка", + "RESOURCE": "Ресурс", + "ENABLE_TITLE": "Включить правило", + "ENABLE_SUMMARY": "Вы хотите включить правило {{param}}?", + "DISABLE_TITLE": "Деактивировать правило", + "DISABLE_SUMMARY": "Вы хотите деактивировать правило {{param}}?", + "ENABLE_SUCCESS": "Правило успешно включено", + "ENABLE_FAILED": "Не удалось включить правило", + "DISABLE_SUCCESS": "Правило успешно деактивировано", + "DISABLE_FAILED": "Не удалось деактивировать правило", + "DES_REPO_FLATTENING": "Сглаживание репозитория назначения", + "NAMESPACE": "Пространство имен", + "REPO_FLATTENING": "Сглаживание", + "NO_FLATTING": "Без сглаживания", + "FLATTEN_LEVEL_1": "Сгладить 1 уровень", + "FLATTEN_LEVEL_2": "Сгладить 2 уровня", + "FLATTEN_LEVEL_3": "Сгладить 3 уровня", + "FLATTEN_ALL": "Сгладить все уровни", + "FLATTEN_LEVEL_TIP": "Уменьшить вложенную структуру репозитория при копировании образов. Предположим, что вложенная структура репозитория 'a/b/c/d/img', а пространство имен назначения 'ns', соответствующие результаты каждого элемента следующие:", + "FLATTEN_LEVEL_TIP_ALL": "'Сгладить все уровни'(Используется до v2.3): 'a/b/c/d/img' -> 'ns/img'", + "FLATTEN_LEVEL_TIP_NO": "'Без сглаживания': 'a/b/c/d/img' -> 'ns/a/b/c/d/img", + "FLATTEN_LEVEL_TIP_1": "'Сгладить 1 Уровень' (По умолчанию): 'a/b/c/d/img' -> 'ns/b/c/d/img'", + "FLATTEN_LEVEL_TIP_2": "'Сгладить 2 Уровня': 'a/b/c/d/img' -> 'ns/c/d/img'", + "FLATTEN_LEVEL_TIP_3": "'Сгладить 3 Уровня': 'a/b/c/d/img' -> 'ns/d/img'", + "NOTE": "Примечание: Диаграммы Chartmuseum поддерживают только структуру репозитория с 2 компонентами пути: 'a/chart'", + "BANDWIDTH": "Пропускная способность", + "BANDWIDTH_ERROR_TIP": "Пожалуйста, введите -1 или целое число больше 0", + "BANDWIDTH_TOOLTIP": "Установите максимальную пропускную способность сети для каждого выполнения. Обратите внимание на количество одновременных выполнений. Для неограниченной пропускной способности введите -1", + "UNLIMITED": "Неограниченно", + "UNREACHABLE_SOURCE_REGISTRY": "Не удалось подключиться к исходному реестру, убедитесь, что исходный реестр доступен перед редактированием этого правила: {{error}}", + "CRON_ERROR_TIP": "Поле обязательно для заполнения, и \"*\" не допускается для поля \"Минуты\"", + "COPY_BY_CHUNK": "Копировать по частям", + "COPY_BY_CHUNK_TIP": "Укажите, следует ли копировать большой двоичный объект по частям. Передача по частям может увеличить количество запросов API.", + "TRIGGER_STOP_SUCCESS": "Успешно запущено остановку выполнения" + }, + "DESTINATION": { + "NEW_ENDPOINT": "Новая Конечная Точка", + "PROVIDER": "Провайдер", + "ENDPOINT": "Конечная Точка", + "NAME": "Имя", + "NAME_IS_REQUIRED": "Имя конечной точки обязательно.", + "URL": "URL Конечной Точки", + "URL_IS_REQUIRED": "URL конечной точки обязателен.", + "AUTHENTICATION": "Аутентификация", + "ACCESS_ID": "Идентификатор Доступа", + "ACCESS_SECRET": "Секрет Доступа", + "STATUS": "Статус", + "TEST_CONNECTION": "Проверить Соединение", + "TITLE_EDIT": "Редактировать Конечную Точку", + "TITLE_ADD": "Новая Конечная Точка Реестра", + "EDIT": "Редактировать", + "DELETE": "Удалить", + "TESTING_CONNECTION": "Проверка Соединения...", + "TEST_CONNECTION_SUCCESS": "Соединение успешно проверено.", + "TEST_CONNECTION_FAILURE": "Не удалось пропинговать конечную точку.", + "CONFLICT_NAME": "Имя конечной точки уже существует.", + "INVALID_NAME": "Недопустимое имя конечной точки.", + "FAILED_TO_GET_TARGET": "Не удалось получить конечную точку.", + "CREATION_TIME": "Время Создания", + "OF": "из", + "ITEMS": "элементов", + "CREATED_SUCCESS": "Конечная точка успешно создана.", + "UPDATED_SUCCESS": "Конечная точка успешно обновлена.", + "DELETED_SUCCESS": "Конечные точки успешно удалены.", + "DELETED_FAILED": "Не удалось удалить конечные точки.", + "CANNOT_EDIT": "Конечную точку нельзя изменить, пока правило репликации активно.", + "FAILED_TO_DELETE_TARGET_IN_USED": "Не удалось удалить используемую конечную точку.", + "PLACEHOLDER": "Мы не смогли найти ни одной конечной точки!", + "DEPRECATED": "Helm Hub переходит на Artifact Hub" +}, + "REPOSITORY": { + "COPY_DIGEST_ID": "Копировать Хэш", + "DELETE": "Удалить", + "NAME": "Название", + "TAGS": "Теги", + "PLATFORM": "ОС/Архитектура", + "ARTIFACT_TOOTIP": "Нажмите, чтобы просмотреть список артефактов этого индекса OCI", + "ARTIFACTS_COUNT": "Артефакты", + "PULL_COUNT": "Загрузки", + "PULL_COMMAND": "Команда Загрузки", + "PULL_TIME": "Время Загрузки", + "PUSH_TIME": "Время Загрузки", + "IMMUTABLE": "Неизменяемый", + "MY_REPOSITORY": "Мой Репозиторий", + "PUBLIC_REPOSITORY": "Публичный Репозиторий", + "DELETION_TITLE_REPO": "Подтверждение Удаления Репозитория", + "DELETION_TITLE_REPO_SIGNED": "Репозиторий не может быть удален", + "DELETION_SUMMARY_REPO_SIGNED": "Репозиторий '{{repoName}}' не может быть удален, так как существуют следующие подписанные образы.\n{{signedImages}} \nПеред удалением репозитория необходимо отменить подпись всех подписанных образов!", + "DELETION_SUMMARY_REPO": "Вы хотите удалить репозиторий {{repoName}}?", + "DELETION_TITLE_ARTIFACT": "Подтверждение Удаления Артефакта", + "DELETION_SUMMARY_ARTIFACT": "Вы хотите удалить артефакт {{param}}? При удалении этого артефакта все теги, ссылающиеся на этот хэш, также будут удалены.", + "DELETION_TITLE_TAG": "Подтверждение Удаления Тега", + "DELETION_SUMMARY_TAG": "Вы хотите удалить тег {{param}}?", + "DELETION_TITLE_TAG_DENIED": "Подписанный тег не может быть удален", + "DELETION_SUMMARY_TAG_DENIED": "Тег должен быть удален из Нотариуса перед удалением.\nУдалить из Нотариуса с помощью этой команды:\n", + "TAGS_NO_DELETE": "Удаление запрещено в режиме только для чтения.", + "FILTER_FOR_REPOSITORIES": "Фильтр Репозиториев", + "TAG": "Тег", + "ARTIFACT": "Артефакт", + "ARTIFACTS": "Артефакты", + "SIZE": "Размер", + "VULNERABILITY": "Уязвимости", + "BUILD_HISTORY": "История Сборки", + "SIGNED": "Подписанный", + "AUTHOR": "Автор", + "CREATED": "Время Создания", + "DOCKER_VERSION": "Версия Docker", + "ARCHITECTURE": "Архитектура", + "OS": "ОС", + "SHOW_DETAILS": "Показать Детали", + "REPOSITORIES": "Репозитории", + "OF": "из", + "ITEMS": "элементов", + "NO_ITEMS": "НЕТ ЭЛЕМЕНТОВ", + "POP_REPOS": "Популярные Репозитории", + "DELETED_REPO_SUCCESS": "Репозитории успешно удалены.", + "DELETED_TAG_SUCCESS": "Теги успешно удалены.", + "COPY": "Копировать", + "NOTARY_IS_UNDETERMINED": "Невозможно определить подпись этого тега.", + "PLACEHOLDER": "Мы не смогли найти никаких репозиториев!", + "INFO": "Информация", + "NO_INFO": "Нет описания для этого репозитория. Вы можете добавить его в этот репозиторий.", + "IMAGE": "Образы", + "LABELS": "Метки", + "ADD_LABEL_TO_IMAGE": "Добавить метки к этому образу", + "FILTER_BY_LABEL": "Фильтровать образы по метке", + "FILTER_ARTIFACT_BY_LABEL": "Фильтровать артефакт по метке", + "ADD_LABELS": "Добавить Метки", + "RETAG": "Копировать", + "ACTION": "ДЕЙСТВИЕ", + "DEPLOY": "РАЗВЕРНУТЬ", + "ADDITIONAL_INFO": "Добавить Дополнительную Информацию", + "REPO_NAME": "Репозиторий", + "MARKDOWN": "Поддерживается оформление с помощью Markdown", + "LAST_MODIFIED": "Время Последнего Изменения" + }, + "HELM_CHART": { + "HELMCHARTS": "Диаграммы", + "CHARTVERSIONS": "Версии", + "UPLOAD_TITLE": "Загрузить файлы диаграммы", + "CHART_FILE": "Файл диаграммы", + "CHART_PROV": "Файл Prov", + "DOWNLOAD": "Скачать", + "SUMMARY": "Сводка", + "DEPENDENCIES": "Зависимости", + "VALUES": "Значения", + "OVERVIEW": "Обзор", + "HOME": "Главная", + "SRC_REPO": "Исходный репозиторий", + "CREATED": "Время создания", + "MAINTAINERS": "Сопровождающие", + "OTHER_MAINTAINERS": "{{ name }} и {{ number }} других", + "PULLS": "Количество запросов", + "VERSION": "Версия", + "APP_VERSION": "Версия приложения", + "INSTALL": "Установить", + "INSTALL_CHART": "Установить диаграмму", + "NAME": "Имя", + "REPO": "Репозиторий", + "FILTER_FOR_CHARTS": "Фильтр для диаграмм", + "DELETE": "Удалить", + "OF": "из", + "VERSIONS": "версий", + "IMAGES": "Изображения", + "ENGINE": "Движок", + "ACTION": "Действие", + "UPLOAD": "Загрузить", + "DELETE_CHART_VERSION_TITLE": "Удалить версии диаграммы", + "DELETE_CHART_VERSION": "Вы хотите удалить версию {{param}}?", + "IMPORT": "Импортировать", + "EXPORT": "Экспортировать", + "ADD_REPO": "Добавить репозиторий", + "SHOW_KV": "Пары ключ-значение", + "SHOW_YAML": "Файл YAML", + "PLACEHOLDER": "Мы не смогли найти никаких диаграмм!", + "NO_VERSION_PLACEHOLDER": "Мы не смогли найти никаких версий!", + "FILE_UPLOADED": "Файл успешно загружен", + "SIGN": "Подписать", + "SIGNED": "Подписано", + "UNSIGNED": "Не подписано", + "ITEMS": "элементов", + "NO_README": "Для этой диаграммы не предоставлен файл readme.", + "SECURITY": "Безопасность", + "ACTIVE": "Активно", + "DEPRECATED": "Устарело", + "VERIFY_CHART": "Проверить диаграмму", + "COMMAND": "Команды", + "PROV_FILE": "Файл Prov", + "READY": "Готово", + "NOT_READY": "Не готово", + "LABELS": "Метки", + "ADD_LABEL_TO_CHART_VERSION": "Добавить метки к этой версии диаграммы", + "STATUS": "Статус" + }, + "SUMMARY": { + "QUOTAS": "квоты", + "PROJECT_REPOSITORY": "Репозитории", + "PROJECT_HELM_CHART": "Диаграмма Helm", + "PROJECT_MEMBER": "Участники", + "PROJECT_QUOTAS": "Квоты", + "ARTIFACT_COUNT": "Количество артефактов", + "STORAGE_CONSUMPTION": "Потребление хранилища", + "ADMIN": "Администратор(ы)", + "MAINTAINER": "Сопровождающий(ие)", + "DEVELOPER": "Разработчик(и)", + "GUEST": "Гость(и)", + "LIMITED_GUEST": "Ограниченный гость(и)", + "SEE_ALL": "ПОСМОТРЕТЬ ВСЕ" + }, + "ALERT": { + "FORM_CHANGE_CONFIRMATION": "Некоторые изменения еще не сохранены. Вы хотите отменить?" + }, + "RESET_PWD": { + "TITLE": "Сбросить пароль", + "CAPTION": "Введите ваш email, чтобы сбросить пароль", + "EMAIL": "Email", + "SUCCESS": "Письмо со ссылкой для сброса пароля успешно отправлено. Вы можете закрыть это диалоговое окно и проверить свою почту.", + "CAPTION2": "Введите ваш новый пароль", + "RESET_OK": "Пароль успешно сброшен. Нажмите ОК, чтобы войти с новым паролем." + }, + "RECENT_LOG": { + "SUB_TITLE": "Показать", + "SUB_TITLE_SUFIX": "Логи" + }, + "CONFIG": { + "HISTORY": "История", + "TITLE": "Конфигурация", + "AUTH": "Аутентификация", + "REPLICATION": "Репликация", + "LABEL": "Метки", + "REPOSITORY": "Репозиторий", + "REPO_READ_ONLY": "Репозиторий только для чтения", + "WEBHOOK_NOTIFICATION_ENABLED": "Вебхуки включены", + "SYSTEM": "Настройки системы", + "PROJECT_QUOTAS": "Квоты проектов", + "VULNERABILITY": "Уязвимость", + "GC": "Сборка мусора", + "CONFIRM_TITLE": "Подтвердить отмену", + "CONFIRM_SUMMARY": "Некоторые изменения не были сохранены. Вы хотите отменить их?", + "SAVE_SUCCESS": "Конфигурация успешно сохранена.", + "VERIFY_REMOTE_CERT": "Проверка удаленного сертификата", + "TOKEN_EXPIRATION": "Срок действия токена (Минуты)", + "SESSION_TIMEOUT": "Тайм-аут сессии (Минуты)", + "SESSION_TIMEOUT_INFO": "Установите тайм-аут сессии для интерфейса Harbor. По умолчанию 60 минут.", + "AUTH_MODE": "Режим аутентификации", + "PRO_CREATION_RESTRICTION": "Создание проектов", + "SELF_REGISTRATION": "Разрешить саморегистрацию", + "AUTH_MODE_DB": "База данных", + "AUTH_MODE_LDAP": "LDAP", + "AUTH_MODE_UAA": "UAA", + "AUTH_MODE_HTTP": "HTTP аутентификация", + "AUTH_MODE_OIDC": "OIDC", + "SCOPE_BASE": "Базовый", + "SCOPE_ONE_LEVEL": "Один уровень", + "SCOPE_SUBTREE": "Поддерево", + "PRO_CREATION_EVERYONE": "Все", + "PRO_CREATION_ADMIN": "Только администратор", + "ROOT_CERT": "Корневой сертификат реестра", + "ROOT_CERT_LINK": "Скачать", + "REGISTRY_CERTIFICATE": "Сертификат реестра", + "NO_CHANGE": "Сохранение отменено, так как ничего не изменилось", + "TOOLTIP": { + "SELF_REGISTRATION_ENABLE": "Включить регистрацию.", + "SELF_REGISTRATION_DISABLE": "Отключить регистрацию.", + "VERIFY_REMOTE_CERT": "Определяет, должна ли репликация образов проверять сертификат удаленного реестра Harbor. Снимите этот флажок, если удаленный реестр использует самоподписанный или ненадежный сертификат.", + "AUTH_MODE": "По умолчанию режим аутентификации — база данных, т. е. учетные данные хранятся в локальной базе данных. Установите его в LDAP, если хотите проверить учетные данные пользователя на LDAP-сервере.", + "LDAP_SEARCH_DN": "DN пользователя, у которого есть разрешение на поиск на LDAP/AD сервере. Если ваш LDAP/AD сервер не поддерживает анонимный поиск, вы должны настроить этот DN и ldap_search_pwd.", + "LDAP_BASE_DN": "Базовый DN для поиска пользователя в LDAP/AD.", + "LDAP_UID": "Атрибут, используемый при поиске для сопоставления пользователя. Это может быть uid, cn, email, sAMAccountName или другие атрибуты в зависимости от вашего LDAP/AD.", + "LDAP_SCOPE": "Область поиска пользователей.", + "TOKEN_EXPIRATION": "Время истечения срока действия токена, созданного службой токенов. По умолчанию 30 минут.", + "ROBOT_NAME_PREFIX": "Префикс строки для каждого имени робота, значение по умолчанию 'robot$'", + "ROBOT_TOKEN_EXPIRATION": "Время истечения срока действия токена учетной записи робота, по умолчанию 30 дней. Отображает количество дней, преобразованных из минут и округленных в меньшую сторону", + "PRO_CREATION_RESTRICTION": "Флаг, определяющий, какие пользователи имеют право создавать проекты. По умолчанию любой может создать проект. Установите значение 'Только администратор', чтобы только администратор мог создать проект.", + "ROOT_CERT_DOWNLOAD": "Скачать корневой сертификат реестра.", + "SCANNING_POLICY": "Установить политику сканирования образов на основе различных требований. 'Нет': Нет активной политики; 'Ежедневно в': Запуск сканирования в указанное время каждый день.", + "VERIFY_CERT": "Проверить сертификат с LDAP сервера", + "REPO_TOOLTIP": "Пользователи не могут выполнять никаких операций с образами в этом режиме.", + "WEBHOOK_TOOLTIP": "Включите вебхуки, чтобы получать обратные вызовы на ваши назначенные конечные точки, когда выполняются определенные действия, такие как отправка, получение, удаление, сканирование образов или диаграмм", + "HOURLY_CRON": "Запускать один раз в час, в начале часа. Эквивалентно 0 0 * * * *.", + "WEEKLY_CRON": "Запускать один раз в неделю, в полночь между субботой и воскресеньем. Эквивалентно 0 0 0 * * 0.", + "DAILY_CRON": "Запускать один раз в день, в полночь. Эквивалентно 0 0 0 * * *." + }, + "LDAP": { + "URL": "URL сервера LDAP", + "SEARCH_DN": "Поиск DN в LDAP", + "SEARCH_PWD": "Пароль для поиска в LDAP", + "BASE_DN": "Базовый DN в LDAP", + "FILTER": "Фильтр LDAP", + "UID": "UID в LDAP", + "SCOPE": "Область поиска LDAP", + "VERIFY_CERT": "Проверка сертификата LDAP", + "LDAP_GROUP_BASE_DN": "Базовый DN группы в LDAP", + "LDAP_GROUP_BASE_DN_INFO": "Базовый DN, с которого будет производиться поиск группы в LDAP/AD. Это поле не может быть пустым, если вам нужно включить функциональность, связанную с группами LDAP.", + "LDAP_GROUP_FILTER": "Фильтр группы LDAP", + "LDAP_GROUP_FILTER_INFO": "Фильтр для поиска групп LDAP/AD. Для OpenLDAP: objectclass=groupOfNames. Для Active Directory: objectclass=group. Это поле не может быть пустым, если вам нужна функциональность, связанная с группами LDAP.", + "LDAP_GROUP_GID": "GID группы в LDAP", + "LDAP_GROUP_GID_INFO": "Атрибут, используемый для поиска пользователя, может быть uid, cn или другими атрибутами в зависимости от вашего LDAP/AD. Группа в Harbor будет называться по этому атрибуту по умолчанию. Это поле не может быть пустым, если вам нужно включить функциональность, связанную с группами LDAP.", + "LDAP_GROUP_ADMIN_DN": "DN администратора группы в LDAP", + "LDAP_GROUP_ADMIN_DN_INFO": "Укажите DN группы LDAP. Все пользователи LDAP в этой группе будут иметь права администратора в Harbor. Оставьте пустым, если не хотите этого.", + "LDAP_GROUP_MEMBERSHIP": "Членство в группе LDAP", + "LDAP_GROUP_MEMBERSHIP_INFO": "Атрибут, указывающий членство в группе LDAP, значение по умолчанию — memberof, в некоторых LDAP-серверах это может быть \"ismemberof\". Это поле не может быть пустым, если вам нужно включить функциональность, связанную с группами LDAP.", + "GROUP_SCOPE": "Область поиска групп LDAP", + "GROUP_SCOPE_INFO": "Область поиска групп, по умолчанию выбирается Subtree." + }, + "UAA": { + "ENDPOINT": "Конечная точка UAA", + "CLIENT_ID": "ID клиента UAA", + "CLIENT_SECRET": "Секрет клиента UAA", + "VERIFY_CERT": "Проверка сертификата UAA" + }, + "HTTP_AUTH": { + "ENDPOINT": "Конечная точка сервера", + "TOKEN_REVIEW": "Конечная точка проверки токена", + "SKIP_SEARCH": "Пропустить поиск", + "VERIFY_CERT": "Проверка сертификата", + "ADMIN_GROUPS": "Группы администраторов" + }, + "OIDC": { + "OIDC_PROVIDER": "Название провайдера OIDC", + "OIDC_REDIREC_URL": "Убедитесь, что URL перенаправления на провайдере OIDC установлен на", + "ENDPOINT": "Конечная точка OIDC", + "CLIENT_ID": "ID клиента OIDC", + "CLIENTSECRET": "Секрет клиента OIDC", + "SCOPE": "Область OIDC", + "OIDC_VERIFYCERT": "Проверка сертификата", + "OIDC_AUTOONBOARD": "Автоматическая регистрация", + "USER_CLAIM": "Утверждение имени пользователя", + "OIDC_SETNAME": "Установить имя пользователя OIDC", + "OIDC_SETNAMECONTENT": "Вы должны создать имя пользователя Harbor при первой аутентификации через сторонний сервис (OIDC). Это имя будет использоваться в Harbor для связи с проектами, ролями и т.д.", + "OIDC_USERNAME": "Имя пользователя", + "GROUP_CLAIM_NAME": "Имя утверждения группы", + "GROUP_CLAIM_NAME_INFO": "Имя пользовательского утверждения группы, которое вы настроили у своего провайдера OIDC", + "OIDC_ADMIN_GROUP": "Группа администраторов OIDC", + "OIDC_ADMIN_GROUP_INFO": "Укажите имя группы администраторов OIDC. Все пользователи OIDC в этой группе будут иметь права администратора в Harbor. Оставьте пустым, если не хотите этого.", + "OIDC_GROUP_FILTER": "Фильтр групп OIDC", + "OIDC_GROUP_FILTER_INFO": "Фильтр групп OIDC, которые соответствуют предоставленному регулярному выражению. Оставьте пустым, чтобы соответствовать всем группам." + }, + "SCANNING": { + "STOP_SCAN_ALL_SUCCESS": "Триггер остановки сканирования всех успешно!", + "TRIGGER_SCAN_ALL_SUCCESS": "Триггер сканирования всех успешно!", + "TRIGGER_SCAN_ALL_FAIL": "Не удалось запустить сканирование всех с ошибкой: {{error}}", + "TITLE": "Сканирование уязвимостей", + "SCAN_ALL": "Сканировать все", + "SCHEDULE_TO_SCAN_ALL": "Запланировать сканирование всех", + "SCAN_NOW": "СКАНИРОВАТЬ СЕЙЧАС", + "SCAN": "СКАНИРОВАТЬ", + "NONE_POLICY": "Нет", + "DAILY_POLICY": "Ежедневно в", + "REFRESH_POLICY": "При обновлении", + "DB_REFRESH_TIME": "База данных обновлена", + "DB_NOT_READY": "База данных уязвимостей может быть не полностью готова!", + "NEXT_SCAN": "Доступно после", + "STATUS": { + "PENDING": "В ожидании", + "RUNNING": "Выполняется", + "STOPPED": "Остановлено", + "ERROR": "Ошибка", + "SUCCESS": "Успешно", + "SCHEDULED": "Запланировано" + }, + "MANUAL": "Вручную", + "SCHEDULED": "Запланировано" + }, + "TEST_MAIL_SUCCESS": "Соединение с почтовым сервером подтверждено.", + "TEST_LDAP_SUCCESS": "Соединение с сервером LDAP подтверждено.", + "TEST_MAIL_FAILED": "Не удалось подтвердить соединение с почтовым сервером с ошибкой: {{param}}.", + "TEST_LDAP_FAILED": "Не удалось подтвердить соединение с сервером LDAP с ошибкой: {{param}}.", + "LEAVING_CONFIRMATION_TITLE": "Подтверждение выхода", + "LEAVING_CONFIRMATION_SUMMARY": "Изменения еще не сохранены. Хотите покинуть текущую страницу?", + "TEST_OIDC_SUCCESS": "Соединение с сервером OIDC подтверждено." + }, + "PAGE_NOT_FOUND": { + "MAIN_TITLE": "Страница не найдена", + "SUB_TITLE": "Перенаправление на главную страницу через", + "UNIT": "секунд..." + }, + "ABOUT": { + "VERSION": "Версия", + "BUILD": "Сборка", + "COPYRIGHT": "Проект Harbor — это проект с открытым исходным кодом, который хранит, подписывает и сканирует контент. Harbor расширяет открытый исходный код Docker Distribution, добавляя функциональность, обычно требуемую пользователями, такую как безопасность, управление идентификацией и доступом. Harbor поддерживает расширенные функции, такие как управление пользователями, контроль доступа, мониторинг активности и репликация между экземплярами. Наличие реестра ближе к среде сборки и выполнения также может улучшить эффективность передачи образов.", + "COPYRIGHT_SUFIX": ".", + "TRADEMARK": "VMware является зарегистрированной торговой маркой или торговой маркой VMware, Inc. в Соединенных Штатах и других странах. Все другие названия, упомянутые здесь, могут быть товарными знаками соответствующих компаний.", + "END_USER_LICENSE": "Лицензионное соглашение с конечным пользователем", + "OPEN_SOURCE_LICENSE": "Лицензия на открытый исходный код/Лицензия на сторонние продукты" + }, + "START_PAGE": { + "GETTING_START": "", + "GETTING_START_TITLE": "Начало работы" + }, + "TOP_REPO": "Популярные репозитории", + "STATISTICS": { + "PRO_ITEM": "Проекты", + "REPO_ITEM": "Репозитории", + "INDEX_PRIVATE": "Приватные", + "INDEX_PUB": "Публичные", + "INDEX_TOTAL": "Всего", + "STORAGE": "ХРАНИЛИЩЕ", + "LIMIT": "Лимит", + "STORAGE_USED": "Использовано хранилища" + }, + "SEARCH": { + "IN_PROGRESS": "Поиск...", + "BACK": "Назад" + }, + "VULNERABILITY": { + "STATE": { + "OTHER_STATUS": "Не сканировано", + "QUEUED": "В очереди", + "ERROR": "Просмотр лога", + "SCANNING": "Сканируется", + "STOPPED": "Сканирование остановлено" + }, + "GRID": { + "PLACEHOLDER": "Мы не смогли найти никаких результатов сканирования!", + "COLUMN_ID": "Уязвимость", + "COLUMN_SEVERITY": "Серьезность", + "COLUMN_PACKAGE": "Пакет", + "COLUMN_PACKAGES": "Пакеты", + "COLUMN_VERSION": "Текущая версия", + "COLUMN_FIXED": "Исправлено в версии", + "COLUMN_DESCRIPTION": "Описание", + "FOOT_ITEMS": "Элементы", + "FOOT_OF": "из", + "IN_ALLOW_LIST": "В списке разрешенных CVE", + "CVSS3": "CVSS3" + }, + "CHART": { + "SCANNING_TIME": "Время завершения сканирования:", + "SCANNING_PERCENT": "Процент завершения сканирования:", + "SCANNING_PERCENT_EXPLAIN": "Процент завершения сканирования рассчитывается как количество успешно отсканированных образов / общее количество образов, указанных в индексе образов.", + "TOOLTIPS_TITLE": "Из {{totalPackages}} {{package}} {{totalVulnerability}} известны {{vulnerability}}.", + "TOOLTIPS_TITLE_SINGULAR": "Из {{totalPackages}} {{package}} {{totalVulnerability}} известна {{vulnerability}}.", + "TOOLTIPS_TITLE_ZERO": "Не обнаружено уязвимостей" + }, + "SEVERITY": { + "CRITICAL": "Критическая", + "HIGH": "Высокая", + "MEDIUM": "Средняя", + "LOW": "Низкая", + "NONE": "Нет" + }, + "SINGULAR": "уязвимость", + "OVERALL_SEVERITY": "Серьезность уязвимости:", + "NO_VULNERABILITY": "Нет уязвимостей", + "PLURAL": "уязвимости", + "PLACEHOLDER": "Фильтровать уязвимости", + "PACKAGE": "пакет", + "PACKAGES": "пакеты", + "SCAN_NOW": "Сканировать", + "SCAN_BY": "СКАНИРОВАНО {{scanner}}", + "REPORTED_BY": "Сообщено {{scanner}}", + "NO_SCANNER": "НЕТ СКАНЕРА", + "TRIGGER_STOP_SUCCESS": "Триггер остановки сканирования успешно", + "STOP_NOW": "Остановить сканирование" + }, + "PUSH_IMAGE": { + "TITLE": "Команда отправки", + "DOCKER": "Docker", + "HELM": "Helm", + "CNAB": "CNAB", + "TAG_COMMAND_CHART": "Упаковать чарт для этого проекта:", + "PUSH_COMMAND_CHART": "Отправить чарт в этот проект:", + "PUSH_COMMAND_CNAB": "Отправить CNAB в этот проект:", + "TOOLTIP": "Ссылки на команды для отправки артефакта в этот проект.", + "TAG_COMMAND": "Пометить образ для этого проекта:", + "PUSH_COMMAND": "Отправить образ в этот проект:", + "COPY_ERROR": "Копирование не удалось, попробуйте скопировать ссылки на команды вручную." + }, + "ARTIFACT": { + "FILTER_FOR_ARTIFACTS": "Фильтр артефактов", + "ADDITIONS": "Дополнения", + "ANNOTATION": "Аннотации", + "OVERVIEW": "Обзор", + "IMAGE": "ИЗОБРАЖЕНИЕ", + "CHART": "ЧАРТ", + "CNAB": "CNAB", + "WASM": "WASM", + "TAGGED": "Помеченные", + "UNTAGGED": "Непомеченные", + "ALL": "Все", + "PLACEHOLDER": "Мы не смогли найти никаких артефактов!", + "SCAN_UNSUPPORTED": "Неподдерживаемый" + }, + "TAG": { + "CREATION_TIME_PREFIX": "Создано", + "CREATOR_PREFIX": "от", + "ANONYMITY": "анонимность", + "IMAGE_DETAILS": "Детали образа", + "DOCKER_VERSION": "Версия Docker", + "ARCHITECTURE": "Архитектура", + "OS": "ОС", + "OS_VERSION": "Версия ОС", + "HAVE": "имеет", + "HAS": "имеет", + "SCAN_COMPLETION_TIME": "Сканирование завершено", + "IMAGE_VULNERABILITIES": "Уязвимости образа", + "LEVEL_VULNERABILITIES": "Уровень уязвимостей", + "PLACEHOLDER": "Мы не смогли найти никаких тегов!", + "COPY_ERROR": "Копирование не удалось, попробуйте скопировать вручную.", + "FILTER_FOR_TAGS": "Фильтр тегов", + "AUTHOR": "Автор", + "LABELS": "Метки", + "CREATION": "Создано", + "COMMAND": "Команды", + "UPLOADTIME": "Время загрузки", + "NAME": "Имя", + "PULL_TIME": "Время вытягивания", + "PUSH_TIME": "Время отправки", + "OF": "из", + "ITEMS": "элементов", + "ADD_TAG": "ДОБАВИТЬ ТЕГ", + "REMOVE_TAG": "УДАЛИТЬ ТЕГ", + "NAME_ALREADY_EXISTS": "Тег уже существует в репозитории" + }, + "LABEL": { + "LABEL": "Метка", + "DESCRIPTION": "Описание", + "CREATION_TIME": "Время создания", + "NEW_LABEL": "Новая метка", + "EDIT": "Редактировать", + "DELETE": "Удалить", + "LABEL_NAME": "Имя метки", + "COLOR": "Цвет", + "FILTER_LABEL_PLACEHOLDER": "Фильтр меток", + "NO_LABELS": "Нет меток", + "DELETION_TITLE_TARGET": "Подтверждение удаления метки", + "DELETION_SUMMARY_TARGET": "Вы хотите удалить {{param}}?", + "PLACEHOLDER": "Мы не смогли найти никаких меток!", + "NAME_ALREADY_EXISTS": "Имя метки уже существует." + }, + "QUOTA": { + "PROJECT": "Проект", + "OWNER": "Владелец", + "COUNT": "Количество", + "STORAGE": "Хранилище", + "EDIT": "Редактировать", + "DELETE": "Удалить", + "OF": "из", + "PROJECT_QUOTA_DEFAULT_ARTIFACT": "Количество артефактов по умолчанию на проект", + "PROJECT_QUOTA_DEFAULT_DISK": "Дисковое пространство по умолчанию на проект", + "EDIT_PROJECT_QUOTAS": "Редактировать квоты проекта", + "EDIT_DEFAULT_PROJECT_QUOTAS": "Редактировать квоты по умолчанию для проектов", + "SET_QUOTAS": "Установить квоты проекта для проекта '{{params}}'", + "SET_DEFAULT_QUOTAS": "Установить квоты по умолчанию при создании новых проектов", + "COUNT_QUOTA": "Количество артефактов", + "COUNT_DEFAULT_QUOTA": "Количество артефактов по умолчанию", + "STORAGE_QUOTA": "Потребление хранилища", + "STORAGE_DEFAULT_QUOTA": "Потребление хранилища по умолчанию", + "SAVE_SUCCESS": "Редактирование квоты прошло успешно", + "UNLIMITED": "неограниченно", + "INVALID_INPUT": "неверный ввод", + "PLACEHOLDER": "Мы не смогли найти никаких квот проекта", + "FILTER_PLACEHOLDER": "Поиск по имени (точное совпадение)", + "QUOTA_USED": "Использовано квоты" + }, + "WEEKLY": { + "MONDAY": "Понедельник", + "TUESDAY": "Вторник", + "WEDNESDAY": "Среда", + "THURSDAY": "Четверг", + "FRIDAY": "Пятница", + "SATURDAY": "Суббота", + "SUNDAY": "Воскресенье" + }, + "OPERATION": { + "LOCAL_EVENT": "Локальные события", + "ALL": "Все", + "RUNNING": "Выполняется", + "FAILED": "Не удалось", + "STOP_EXECUTIONS": "Остановить выполнение", + "DELETE_PROJECT": "Удалить проект", + "DELETE_REPO": "Удалить репозиторий", + "DELETE_TAG": "Удалить тег", + "DELETE_USER": "Удалить пользователя", + "DELETE_ROBOT": "Удалить робота", + "DELETE_REGISTRY": "Удалить реестр", + "DELETE_REPLICATION": "Удалить репликацию", + "DELETE_MEMBER": "Удалить участника", + "DELETE_GROUP": "Удалить группу", + "DELETE_CHART_VERSION": "Удалить версию чарта", + "DELETE_CHART": "Удалить чарт", + "SWITCH_ROLE": "Сменить роль", + "ADD_GROUP": "Добавить группу", + "ADD_USER": "Добавить пользователя", + "DELETE_LABEL": "Удалить метку", + "REPLICATION": "Репликация", + "DAY_AGO": " день(ей) назад", + "HOUR_AGO": " час(ов) назад", + "MINUTE_AGO": " минут(ы) назад", + "SECOND_AGO": "менее 1 минуты", + "EVENT_LOG": "ЖУРНАЛ СОБЫТИЙ" + }, + "UNKNOWN_ERROR": "Произошли неизвестные ошибки. Пожалуйста, попробуйте позже.", + "UNAUTHORIZED_ERROR": "Ваша сессия недействительна или истекла. Вам нужно войти, чтобы продолжить.", + "REPO_READ_ONLY": "Harbor находится в режиме только для чтения, удаление репозитория, артефакта, тега и отправка образа будут отключены в режиме только для чтения.", + "FORBIDDEN_ERROR": "У вас нет необходимых прав для выполнения этого действия.", + "GENERAL_ERROR": "Произошли ошибки при вызове сервиса: {{param}}.", + "BAD_REQUEST_ERROR": "Мы не можем выполнить ваш запрос из-за неверного запроса.", + "NOT_FOUND_ERROR": "Ваш запрос не может быть выполнен, так как объект не существует.", + "CONFLICT_ERROR": "Мы не можем выполнить ваш запрос из-за конфликта.", + "PRECONDITION_FAILED": "Мы не можем выполнить ваш запрос из-за невыполнения предварительного условия.", + "SERVER_ERROR": "Мы не можем выполнить ваш запрос из-за внутренних ошибок сервера.", + "INCONRRECT_OLD_PWD": "Старый пароль неверный.", + "UNKNOWN": "н/д", + "STATUS": "Статус", + "START_TIME": "Время начала", + "CREATION_TIME": "Время создания", + "UPDATE_TIME": "Время обновления", + "LOGS": "Логи", + "PENDING": "Ожидание", + "FINISHED": "Завершено", + "STOPPED": "Остановлено", + "RUNNING": "Выполняется", + "ERROR": "Ошибка", + "SCHEDULE": { + "NONE": "Нет", + "DAILY": "Ежедневно", + "WEEKLY": "Еженедельно", + "HOURLY": "Ежечасно", + "CUSTOM": "Пользовательский", + "MANUAL": "Вручную", + "SCHEDULE": "Запланировано", + "CRON": "cron", + "ON": "в", + "AT": "в", + "NOSCHEDULE": "Произошла ошибка при получении расписания" + }, + "GC": { + "CURRENT_SCHEDULE": "Расписание для GC", + "GC_NOW": "GC СЕЙЧАС", + "JOB_HISTORY": "История GC", + "JOB_ID": "ID задания", + "TRIGGER_TYPE": "Тип триггера", + "LATEST_JOBS": "Последние {{param}} заданий", + "MSG_SUCCESS": "Сборка мусора прошла успешно", + "MSG_SCHEDULE_SET": "Расписание для сборки мусора установлено", + "MSG_SCHEDULE_RESET": "Расписание для сборки мусора сброшено", + "PARAMETERS": "Параметры", + "DELETE_UNTAGGED": "Разрешить сборку мусора для непомеченных артефактов", + "EXPLAIN": "GC — это ресурсоемкая операция, которая может повлиять на производительность реестра", + "DRY_RUN_SUCCESS": "Сухой запуск успешно запущен" + }, + "RETAG": { + "MSG_SUCCESS": "Артефакт успешно скопирован", + "TIP_REPO": "Имя репозитория разбивается на компоненты пути. Компонент имени репозитория должен состоять как минимум из одного символа нижнего регистра, алфавитно-цифровых символов, разделенных точками, тире или подчеркиваниями. Более строго, он должен соответствовать регулярному выражению [a-z0-9]+(?:[._-][a-z0-9]+)*. Если имя репозитория имеет два или более компонентов пути, они должны быть разделены косой чертой ('/'). Общая длина имени репозитория, включая косые черты, должна быть менее 256 символов.", + "TIP_TAG": "Тег — это метка, применяемая к образу Docker в репозитории. Теги — это способ различать различные образы в репозитории. Он должен соответствовать регулярному выражению: (`[\\w][\\w.-]{0,127}`)" + }, + "CVE_ALLOWLIST": { + "DEPLOYMENT_SECURITY": "Безопасность развертывания", + "CVE_ALLOWLIST": "Список разрешенных CVE", + "SYS_ALLOWLIST_EXPLAIN": "Системный список разрешенных позволяет игнорировать уязвимости в этом списке при расчете уязвимости образа.", + "ADD_SYS": "Добавить CVE ID в системный список разрешенных", + "WARNING_SYS": "Системный список разрешенных CVE истек. Вы можете включить список, продлив срок действия.", + "WARNING_PRO": "Проектный список разрешенных CVE истек. Вы можете включить список, продлив срок действия.", + "ADD": "ДОБАВИТЬ", + "ENTER": "Введите CVE ID(s)", + "HELP": "Разделитель: запятые или символы новой строки", + "NONE": "Нет", + "EXPIRES_AT": "Истекает", + "NEVER_EXPIRES": "Никогда не истекает", + "PRO_ALLOWLIST_EXPLAIN": "Проектный список разрешенных позволяет игнорировать уязвимости в этом списке в этом проекте при отправке и вытягивании образов.", + "PRO_OR_SYS": "Вы можете использовать список по умолчанию, настроенный на системном уровне, или нажать на 'Проектный список разрешенных', чтобы создать новый список", + "MERGE_INTO": "Добавьте отдельные CVE ID перед нажатием 'КОПИРОВАТЬ ИЗ СИСТЕМЫ', чтобы добавить системный список разрешенных.", + "SYS_ALLOWLIST": "Системный список разрешенных", + "PRO_ALLOWLIST": "Проектный список разрешенных", + "ADD_SYSTEM": "КОПИРОВАТЬ ИЗ СИСТЕМЫ" + }, + "TAG_RETENTION": { + "TAG_RETENTION": "Сохранение тегов", + "RETENTION_RULES": "Правила сохранения", + "RULE_NAME_1": " артефакты за последние {{number}} дней", + "RULE_NAME_2": " последние активные {{number}} артефактов", + "RULE_NAME_3": " последние отправленные {{number}} артефактов" + }, + "RETENTION": { + "RULE_NAME_4": " {{number}} последних артефактов", + "RULE_NAME_5": " всегда", + "ADD_RULE": "ДОБАВИТЬ ПРАВИЛО", + "ADD_RULE_HELP_1": "Нажмите кнопку ДОБАВИТЬ ПРАВИЛО, чтобы добавить правило.", + "ADD_RULE_HELP_2": "Политики хранения тегов запускаются один раз в день.", + "RETENTION_RUNS": "Запуски хранения", + "RUN_NOW": "ЗАПУСТИТЬ СЕЙЧАС", + "WHAT_IF_RUN": "ПРОБНЫЙ ЗАПУСК", + "ABORT": "ОТМЕНА", + "SERIAL": "ID", + "STATUS": "Статус", + "DRY_RUN": "Пробный запуск", + "START_TIME": "Время начала", + "DURATION": "Длительность", + "DETAILS": "Детали", + "REPOSITORY": "Репозиторий", + "EDIT": "Редактировать", + "DISABLE": "Деактивировать", + "ENABLE": "Активировать", + "DELETE": "Удалить", + "ADD_TITLE": "Добавить правило хранения тегов", + "ADD_SUBTITLE": "Укажите правило хранения тегов для этого проекта. Все правила хранения тегов рассчитываются независимо, и каждое правило может применяться к выбранному списку репозиториев.", + "BY_WHAT": "По количеству артефактов или количеству дней", + "RULE_TEMPLATE_1": " артефакты за последние # дней", + "RULE_TEMPLATE_2": " последние активные # артефактов", + "RULE_TEMPLATE_3": " последние загруженные # артефактов", + "RULE_TEMPLATE_4": " последние скачанные # артефактов", + "RULE_TEMPLATE_5": " всегда", + "ACTION_RETAIN": " хранить", + "UNIT_DAY": "ДНЕЙ", + "UNIT_COUNT": "КОЛИЧЕСТВО", + "NUMBER": "ЧИСЛО", + "IN_REPOSITORIES": "Для репозиториев", + "REP_SEPARATOR": "Введите несколько репозиториев через запятую, repo*, или **", + "TAGS": "Теги", + "UNTAGGED": " без тега", + "INCLUDE_UNTAGGED": " артефакты без тега", + "MATCHES_TAGS": "Соответствует тегам", + "MATCHES_EXCEPT_TAGS": "Соответствует, кроме тегов", + "TAG_SEPARATOR": "Введите несколько тегов через запятую, tag*, или **. При необходимости включите все артефакты без тега при применении селектора 'включая' или 'исключая', установив флажок выше.", + "LABELS": "Метки", + "MATCHES_LABELS": "Соответствует меткам", + "MATCHES_EXCEPT_LABELS": "Соответствует, кроме меток", + "REP_LABELS": "Введите несколько меток через запятую", + "RETENTION_RUN": "Запуск хранения", + "RETENTION_RUN_EXPLAIN": "Выполнение политики хранения может иметь негативные последствия для артефактов в этом проекте, и затронутые теги артефактов будут удалены. Нажмите ОТМЕНА и используйте ПРОБНЫЙ ЗАПУСК для симуляции эффекта этой политики. В противном случае нажмите ЗАПУСТИТЬ, чтобы продолжить.", + "RETENTION_RUN_ABORTED": "Запуск хранения отменен", + "RETENTION_RUN_ABORTED_EXPLAIN": "Этот запуск хранения был отменен. Удаленные артефакты необратимы. Вы можете инициировать другой запуск, чтобы продолжить удаление артефактов. Для симуляции запуска вы можете использовать “ПРОБНЫЙ ЗАПУСК”.", + "LOADING": "Загрузка...", + "NO_EXECUTION": "Мы не смогли найти никаких выполнений!", + "NO_HISTORY": "Мы не смогли найти никакой истории!", + "DELETION": "Удаления", + "EDIT_TITLE": "Редактировать правило хранения тегов", + "LOG": "Лог", + "EXCLUDES": "Исключает", + "MATCHES": "Соответствует", + "REPO": " репозитории", + "EXC": " исключая ", + "MAT": " соответствующие ", + "AND": " и", + "WITH": " с ", + "WITHOUT": " без ", + "LOWER_LABELS": " метки", + "WITH_CONDITION": " с", + "LOWER_TAGS": " теги", + "TRIGGER": "Расписание", + "RETAINED": "Хранится", + "TOTAL": "Всего", + "NONE": " нет", + "RULE_NAME_6": " артефакты, скачанные за последние {{number}} дней", + "RULE_NAME_7": " артефакты, загруженные за последние {{number}} дней", + "RULE_TEMPLATE_6": " артефакты, скачанные за последние # дней", + "RULE_TEMPLATE_7": " артефакты, загруженные за последние # дней", + "SCHEDULE": "Расписание", + "SCHEDULE_WARNING": "Выполнение политики хранения приводит к необратимому удалению артефактов из проекта Harbor. Пожалуйста, дважды проверьте все политики перед планированием.", + "EXISTING_RULE": "Существующее правило", + "ILLEGAL_RULE": "Недопустимое правило", + "INVALID_RULE": "Недействительное правило", + "COUNT_LARGE": "Параметр \"КОЛИЧЕСТВО\" слишком велик", + "DAYS_LARGE": "Параметр \"ДНЕЙ\" слишком велик", + "EXECUTION_TYPE": "Тип выполнения", + "ACTION": "ДЕЙСТВИЕ", + "YES": "Да", + "NO": "Нет" + }, + "IMMUTABLE_TAG": { + "IMMUTABLE_RULES": "Правила неизменяемости", + "ADD_RULE": "ДОБАВИТЬ ПРАВИЛО", + "ADD_RULE_HELP_1": "Нажмите кнопку ДОБАВИТЬ ПРАВИЛО, чтобы добавить правило.", + "EDIT": "Редактировать", + "DISABLE": "Деактивировать", + "ENABLE": "Активировать", + "DELETE": "Удалить", + "ADD_TITLE": "Добавить правило неизменяемости тегов", + "ADD_SUBTITLE": "Укажите правило неизменяемости тегов для этого проекта. Примечание: все правила неизменяемости тегов сначала рассчитываются независимо, а затем объединяются для получения окончательного набора неизменяемых тегов.", + "IN_REPOSITORIES": "Для репозиториев", + "REP_SEPARATOR": "Введите несколько репозиториев через запятую, repo*, или **", + "TAGS": "Теги", + "TAG_SEPARATOR": "Введите несколько тегов через запятую, tag*, или **.", + "EDIT_TITLE": "Редактировать правило неизменяемости тегов", + "EXC": " исключая ", + "MAT": " соответствующие ", + "AND": " и", + "WITH": " с ", + "WITHOUT": " без ", + "LOWER_LABELS": " метки", + "LOWER_TAGS": " теги", + "NONE": " нет", + "EXISTING_RULE": "Существующее правило", + "ACTION": "ДЕЙСТВИЕ" + }, + "SCANNER": { + "DELETION_SUMMARY": "Вы хотите удалить сканер {{param}}?", + "SKIP_CERT_VERIFY": "Установите этот флажок, чтобы пропустить проверку сертификата, когда удаленный реестр использует самоподписанный или ненадежный сертификат.", + "NAME": "Имя", + "NAME_EXISTS": "Имя уже существует", + "NAME_REQUIRED": "Имя обязательно", + "NAME_REX": "Имя должно быть не менее 2 символов с нижними регистрами, цифрами и ._- и должно начинаться с символов или цифр.", + "DESCRIPTION": "Описание", + "ENDPOINT": "Конечная точка", + "ENDPOINT_EXISTS": "EndpointUrl уже существует", + "ENDPOINT_REQUIRED": "EndpointUrl обязателен", + "ILLEGAL_ENDPOINT": "EndpointUrl недопустим", + "AUTH": "Авторизация", + "NONE": "Нет", + "BASIC": "Базовая", + "BEARER": "Bearer", + "API_KEY": "APIKey", + "USERNAME": "Имя пользователя", + "USERNAME_REQUIRED": "Имя пользователя обязательно", + "PASSWORD": "Пароль", + "PASSWORD_REQUIRED": "Пароль обязателен", + "TOKEN": "Токен", + "TOKEN_REQUIRED": "Токен обязателен", + "API_KEY_REQUIRED": "APIKey обязателен", + "SKIP": "Пропустить проверку сертификата", + "ADD_SCANNER": "Добавить сканер", + "EDIT_SCANNER": "Редактировать сканер", + "TEST_CONNECTION": "ПРОВЕРИТЬ СОЕДИНЕНИЕ", + "ADD_SUCCESS": "Успешно добавлено ", + "TEST_PASS": "Тест пройден", + "TEST_FAILED": "Ping: регистрация {{name}}:{{url}} недоступна", + "UPDATE_SUCCESS": "Успешно обновлено", + "SCANNER_COLON": "Сканер:", + "NAME_COLON": "Имя:", + "VENDOR_COLON": "Поставщик:", + "VERSION_COLON": "Версия:", + "CAPABILITIES": "Возможности", + "CONSUMES_MIME_TYPES_COLON": "Типы MIME для потребления:", + "PRODUCTS_MIME_TYPES_COLON": "Типы MIME для производства:", + "PROPERTIES": "Свойства", + "NEW_SCANNER": "НОВЫЙ СКАНЕР", + "SET_AS_DEFAULT": "УСТАНОВИТЬ ПО УМОЛЧАНИЮ", + "HEALTH": "Здоровье", + "DISABLED": "Деактивирован", + "NO_SCANNER": "Не удалось найти ни одного сканера", + "DEFAULT": "По умолчанию", + "HEALTHY": "Здоров", + "UNHEALTHY": "Нездоров", + "SCANNERS": "Сканеры", + "SCANNER": "Сканер", + "EDIT": "Редактировать", + "NOT_AVAILABLE": "Недоступно", + "ADAPTER": "Адаптер", + "VENDOR": "Поставщик", + "VERSION": "Версия", + "SELECT_SCANNER": "Выбрать сканер", + "ENABLED": "Активирован", + "ENABLE": "Активировать", + "DISABLE": "Деактивировать", + "DELETE_SUCCESS": "Успешно удалено", + "TOTAL": "Всего", + "FIXABLE": "Исправимо", + "DURATION": "Длительность:", + "OPTIONS": "Опции", + "USE_INNER": "Использовать внутренний адрес реестра", + "USE_INNER_TIP": "Если этот параметр установлен, сканер будет принудительно использовать внутренний адрес реестра для доступа к соответствующим контентам.", + "VULNERABILITY_SEVERITY": "Серьезность уязвимости:", + "CONFIRM_DELETION": "Подтвердить удаление сканера", + "NO_PROJECT_SCANNER": "Нет сканера", + "SET_UNHEALTHY_SCANNER": "Выбранный сканер:{{name}} нездоров", + "SCANNED_BY": "Просканировано:", + "IMAGE_SCANNERS": "Сканеры изображений", + "VIEW_DOC": "просмотреть документацию", + "ALL_SCANNERS": "Все сканеры", + "HELP_INFO_1": "Сканер по умолчанию установлен. Чтобы установить другие сканеры, обратитесь к ", + "HELP_INFO_2": "документации.", + "NO_DEFAULT_SCANNER": "Нет сканера по умолчанию" + }, + "DISTRIBUTION": { + "FILTER_INSTANCE_PLACEHOLDER": "Фильтровать экземпляры", + "FILTER_HISTORIES_PLACEHOLDER": "Фильтровать истории", + "ADD_ACTION": "НОВЫЙ ЭКЗЕМПЛЯР", + "PREHEAT_ACTION": "Предварительный нагрев", + "EDIT_ACTION": "Редактировать", + "ENABLE_ACTION": "Активировать", + "DISABLE_ACTION": "Деактивировать", + "DELETE_ACTION": "Удалить", + "NOT_FOUND": "Мы не смогли найти ни одного экземпляра!", + "NAME": "Имя", + "ENDPOINT": "Конечная точка", + "STATUS": "Статус", + "ENABLED": "Активирован", + "SETUP_TIMESTAMP": "Время настройки", + "PROVIDER": "Поставщик", + "DELETION_TITLE": "Подтвердить удаление экземпляра", + "DELETION_SUMMARY": "Вы хотите удалить экземпляр(ы) {{param}}?", + "ENABLE_TITLE": "Активировать экземпляр(ы)", + "ENABLE_SUMMARY": "Вы хотите активировать экземпляр(ы) {{param}}?", + "DISABLE_TITLE": "Деактивировать экземпляр(ы)", + "DISABLE_SUMMARY": "Вы хотите деактивировать экземпляр(ы) {{param}}?", + "IMAGE": "Изображение", + "START_TIME": "Время начала", + "FINISH_TIME": "Время окончания", + "INSTANCE": "Экземпляр", + "HISTORIES": "Истории", + "CREATE_SUCCESS": "Экземпляр успешно создан", + "CREATE_FAILED": "Ошибка при создании экземпляра", + "DELETED_SUCCESS": "Экземпляр(ы) успешно удален(ы)", + "DELETED_FAILED": "Ошибка при удалении экземпляра(ов)", + "ENABLE_SUCCESS": "Экземпляр(ы) успешно активирован(ы)", + "ENABLE_FAILED": "Ошибка при активации экземпляра(ов)", + "DISABLE_SUCCESS": "Экземпляр(ы) успешно деактивирован(ы)", + "DISABLE_FAILED": "Ошибка при деактивации экземпляра(ов)", + "UPDATE_SUCCESS": "Экземпляр успешно обновлен", + "UPDATE_FAILED": "Ошибка при обновлении экземпляра", + "REQUEST_PREHEAT_SUCCESS": "Запрос на предварительный нагрев успешно выполнен", + "REQUEST_PREHEAT_FAILED": "Ошибка при запросе на предварительный нагрев", + "DESCRIPTION": "Описание", + "AUTH_MODE": "Режим аутентификации", + "USERNAME": "Имя пользователя", + "PASSWORD": "Пароль", + "TOKEN": "Токен", + "SETUP_NEW_INSTANCE": "Настроить новый экземпляр", + "EDIT_INSTANCE": "Редактировать экземпляр", + "SETUP": { + "NAME_PLACEHOLDER": "Введите имя экземпляра", + "DESCRIPTION_PLACEHOLDER": "Введите описание экземпляра", + "ENDPOINT_PLACEHOLDER": "Введите конечную точку экземпляра", + "USERNAME_PLACEHOLDER": "Введите имя пользователя", + "PASSWORD_PLACEHOLDER": "Введите пароль", + "TOKEN_PLACEHOLDER": "Введите токен" + }, + "MAINTAINER": "Ответственный(е)", + "SOURCE": "Источник", + "VERSION": "Версия", + "SET_AS_DEFAULT": "Установить по умолчанию", + "DELETE_INSTANCE": "Удалить экземпляр", + "ENABLE_INSTANCE": "Активировать экземпляр", + "DISABLE_INSTANCE": "Деактивировать экземпляр", + "SET_DEFAULT_SUCCESS": "Успешно установлено по умолчанию", + "SET_DEFAULT_FAILED": "Ошибка при установке по умолчанию", + "UPDATE_INSTANCE": "Обновить экземпляр", + "CREATE_INSTANCE": "Создать экземпляр" + }, + "P2P_PROVIDER": { + "P2P_PROVIDER": "P2P Предварительный нагрев", + "POLICIES": "Политики", + "NEW_POLICY": "НОВАЯ ПОЛИТИКА", + "NAME": "Имя", + "ENABLED": "Активировано", + "PROVIDER": "Поставщик", + "FILTERS": "Фильтры", + "TRIGGER": "Триггер", + "CREATED": "Время создания", + "DESCRIPTION": "Описание", + "NO_POLICY": "Нет политики", + "ENABLED_POLICY_SUMMARY": "Вы хотите активировать политику {{name}}?", + "DISABLED_POLICY_SUMMARY": "Вы хотите деактивировать политику {{name}}?", + "ENABLED_POLICY_TITLE": "Активировать Политику", + "DISABLED_POLICY_TITLE": "Деактивировать Политику", + "DELETE_POLICY_SUMMARY": "Вы хотите удалить политику {{names}}?", + "EDIT_POLICY": "Редактировать политику P2P Поставщика", + "ADD_POLICY": "Создать политику P2P Поставщика", + "NAME_REQUIRED": "Имя обязательно", + "PROVIDER_REQUIRED": "Поставщик обязателен", + "ADDED_SUCCESS": "Политика успешно добавлена", + "UPDATED_SUCCESS": "Политика успешно обновлена", + "EXECUTE": "ВЫПОЛНИТЬ", + "EXECUTE_SUCCESSFULLY": "Успешно выполнено", + "EXECUTE_TITLE": "Подтвердить выполнение политики", + "EXECUTE_SUMMARY": "Вы хотите выполнить политику {{param}}?", + "STOP_TITLE": "Подтвердить остановку выполнения", + "STOP_SUMMARY": "Вы хотите остановить выполнение политики {{param}}?", + "STOP_SUCCESSFULLY": "Успешно остановлено", + "STATUS_MSG": "Сообщение о статусе", + "JOB_PLACEHOLDER": "Мы не смогли найти никаких выполнений", + "PROVIDER_TYPE": "Поставщик", + "ID": "ID выполнения", + "NO_PROVIDER": "Пожалуйста, сначала добавьте поставщика", + "ARTIFACT": "Артефакт", + "DIGEST": "Дайджест", + "TYPE": "Тип", + "TASKS": "Задачи", + "TASKS_PLACEHOLDER": "Мы не смогли найти никаких задач", + "SEVERITY_WARNING": "Настройки уязвимостей здесь конфликтуют с соответствующей конфигурацией проекта, которая переопределит настройки здесь", + "REPOS": "Репозитории", + "TAGS": "Теги", + "CRITERIA": "Критерии", + "ONLY_SIGNED": "Только подписанные образы", + "PREHEAT_ON_PUSH": "Предварительный нагрев при отправке", + "START_TEXT": "Нет уязвимости серьезности", + "EDN_TEXT": "и выше", + "LABELS": "Метки", + "SCHEDULE": "Расписание", + "TEST_FAILED": "Тест не пройден", + "MANUAL": "Ручной", + "SCHEDULED": "Запланированный", + "EVENT_BASED": "Событийно-ориентированный", + "EVENT_BASED_EXPLAIN_LINE1": "Политика будет оцениваться всякий раз, когда происходят следующие события:", + "EVENT_BASED_EXPLAIN_LINE2": "Артефакт отправлен", + "EVENT_BASED_EXPLAIN_LINE3": "Артефакт помечен", + "EVENT_BASED_EXPLAIN_LINE4": "Артефакт просканирован", + "REPO_REQUIRED": "Репозиторий обязателен", + "TAG_REQUIRED": "Тег обязателен", + "DELETE_SUCCESSFULLY": "Политика успешно удалена", + "UPDATED_SUCCESSFULLY": "Политика успешно обновлена", + "EXECUTIONS": "Выполнения", + "TAG_SEPARATOR": "Введите несколько тегов, разделенных запятыми, tag*, или **", + "CONTENT_WARNING": "Настройки доверия к содержимому здесь конфликтуют с соответствующей конфигурацией проекта, которая переопределит настройки здесь", + "PREHEAT_EXPLAIN": "Предварительный нагрев перенесет образ в сеть p2p", + "CRITERIA_EXPLAIN": "Как указано в разделе 'Безопасность развертывания' вкладки Конфигурация", + "SKIP_CERT_VERIFY": "Установите этот флажок, чтобы пропустить проверку сертификата, когда удаленный поставщик использует самоподписанный или ненадежный сертификат.", + "NAME_TOOLTIP": "Имя политики должно быть не менее 2 символов с нижними регистрами, цифрами и ._- и должно начинаться с символов или цифр.", + "NEED_HELP": "Пожалуйста, обратитесь к системному администратору, чтобы добавить поставщика" + }, + "PAGINATION": { + "PAGE_SIZE": "Размер страницы" + }, + "SYSTEM_ROBOT": { + "READ": "Чтение", + "CREATE": "Создание", + "ARTIFACT": "Артефакт", + "HELM": "Helm Chart", + "HELM_VERSION": "Версия Helm Chart", + "ADD_ROBOT": "Добавить Робота", + "UPDATE_ROBOT": "Обновить Робота", + "UPDATE_ROBOT_SUCCESSFULLY": "Робот успешно обновлен", + "PLACEHOLDER": "Введите новый секрет", + "SECRET": "Секрет должен быть длиной от 8 до 20 символов с хотя бы одной заглавной буквой, одной строчной буквой и одной цифрой.", + "REFRESH_SECRET": "Обновить Секрет", + "REFRESH_SECRET_SUCCESS": "Секрет успешно обновлен", + "DELETE_ROBOT": "Удалить Робота", + "DELETE_ROBOT_SUCCESS": "Робот(ы) успешно удален(ы)", + "ENABLE_TITLE": "Активировать Робота", + "ENABLE_SUMMARY": "Вы хотите активировать робота {{param}}?", + "DISABLE_TITLE": "Деактивировать Робота", + "DISABLE_SUMMARY": "Вы хотите деактивировать робота {{param}}?", + "ENABLE_ROBOT_SUCCESSFULLY": "Робот успешно активирован", + "DISABLE_ROBOT_SUCCESSFULLY": "Робот успешно деактивирован", + "ROBOT_ACCOUNT": "Аккаунт Робота", + "PROJECTS": "Проекты", + "ALL_PROJECTS": "Все проекты с", + "PERMISSIONS": "ПРАВА ДОСТУПА", + "REFRESH_SECRET_SUMMARY": "Автоматически обновите секрет аккаунта робота или, при необходимости, откройте детали, чтобы вручную указать новый секрет", + "TOKEN": "Секрет", + "NEW_TOKEN": "Новый Секрет", + "REFRESH": "ОБНОВИТЬ", + "PROJECTS_MODAL_TITLE": "Проекты для Аккаунта Робота", + "PROJECTS_MODAL_SUMMARY": "Это проекты, которые охватываются этим аккаунтом робота.", + "CREATE_ROBOT": "Создать Системный Аккаунт Робота", + "CREATE_ROBOT_SUMMARY": "Создайте системный аккаунт робота, который будет охватывать определенные проекты. Выберите \"Охватывать все проекты\", чтобы применить ко всем существующим и будущим проектам", + "EDIT_ROBOT": "Редактировать Системный Аккаунт Робота", + "EDIT_ROBOT_SUMMARY": "Редактируйте системный аккаунт робота. Выберите \"Охватывать все проекты\", чтобы применить ко всем существующим и будущим проектам", + "EXPIRATION_TIME": "Время истечения", + "EXPIRATION_TIME_EXPLAIN": "Время истечения (в днях, отправной точкой является время создания) токена аккаунта робота. Для того, чтобы он никогда не истекал, введите \"-1\".", + "EXPIRATION_DEFAULT": "дней(по умолчанию)", + "EXPIRATION_DAYS": "Указать количество дней", + "EXPIRATION_NEVER": "Никогда", + "EXPIRATION_REQUIRED": "Требуется действительное время истечения", + "COVER_ALL": "Охватывать все проекты", + "COVER_ALL_EXPLAIN": "Установите флажок, чтобы применить ко всем существующим и будущим проектам", + "COVER_ALL_SUMMARY": "Выбраны все текущие и будущие проекты.", + "RESET_PERMISSION": "СБРОСИТЬ ПРАВА ДОСТУПА", + "PERMISSION_COLUMN": "Права доступа", + "EXPIRES_AT": "Истекает в", + "VIEW_SECRET": "ОБНОВИТЬ СЕКРЕТ", + "LEGACY": "Устаревший", + "CREATE_PROJECT_ROBOT": "Создать Аккаунт Робота", + "CREATE_PROJECT_ROBOT_SUMMARY": "Создайте аккаунт робота для этого проекта", + "EDIT_PROJECT_ROBOT": "Редактировать Аккаунт Робота", + "EDIT_PROJECT_ROBOT_SUMMARY": "Редактируйте аккаунт робота для этого проекта", + "NOT_FOUND": "Мы не смогли найти никаких роботов!", + "SELECT_ALL": "Выбрать все", + "UNSELECT_ALL": "Снять выбор со всего", + "ROBOT_ACCOUNT_NAV": "Аккаунты Роботов", + "COVERED_PROJECTS": "ПРОЕКТ(Ы)", + "CONFIRM_SECRET": "Подтвердить Секрет", + "SECRET_AGAIN": "Введите секрет еще раз", + "INCONSISTENT": "Два секрета не совпадают", + "NAME_TOOLTIP": "Имя робота должно быть длиной от 1 до 255 символов с нижними регистрами, цифрами и ._- и должно начинаться с символов или цифр.", + "ENABLE_NEW_SECRET": "Включите эту опцию, чтобы вручную указать новый секрет", + "DELETE": "Удалить", + "ARTIFACT_LABEL": "Метка артефакта", + "SCAN": "Сканировать", + "SCANNER_PULL": "Сканер Пулл", + "SEARCH_BY_NAME": "Поиск по имени (без префикса)", + "FINAL_PROJECT_NAME_TIP": "Финальное имя проекта робота состоит из префикса, имени проекта, знака плюс и текущего введенного значения", + "FINAL_SYSTEM_NAME_TIP": "Финальное системное имя робота состоит из префикса и текущего введенного значения", + "PUSH_AND_PULL": "Отправить", + "PUSH_PERMISSION_TOOLTIP": "Разрешение на отправку не может работать отдельно, оно должно работать вместе с разрешением на скачивание", + "STOP": "Остановить", + "LIST": "Список", + "REPOSITORY": "Репозиторий", + "HELM_LABEL": "Метка Helm Chart", + "EXPIRES_IN": "Истекает через", + "EXPIRED": "Истек" + }, + "ACCESSORY": { + "DELETION_TITLE_ACCESSORY": "Подтверждение удаления дополнения", + "DELETION_SUMMARY_ACCESSORY": "Вы хотите удалить все дополнения артефакта {{param}}?", + "DELETION_SUMMARY_ONE_ACCESSORY": "Вы хотите удалить дополнение(я) {{param}}?", + "DELETE_ACCESSORY": "Удалить дополнение", + "DELETED_SUCCESS": "Дополнение успешно удалено", + "DELETED_FAILED": "Не удалось удалить дополнение", + "CO_SIGNED": "Подписано Cosign", + "NOTARY_SIGNED": "Подписано Notary", + "ACCESSORY": "Дополнение", + "ACCESSORIES": "Дополнения", + "SUBJECT_ARTIFACT": "Основной артефакт", + "CO_SIGN": "Cosign", + "NOTARY": "Notary", + "PLACEHOLDER": "Мы не смогли найти никаких дополнений!" + }, + "CLEARANCES": { + "CLEARANCES": "Очистка", + "AUDIT_LOG": "Смена журнала", + "LAST_COMPLETED": "Последнее выполнение", + "NEXT_SCHEDULED_TIME": "Следующее запланированное время", + "SCHEDULE_TO_PURGE": "Запланировать очистку", + "KEEP_IN": "Сохранять записи в", + "KEEP_IN_TOOLTIP": "Сохранять записи в этом интервале", + "KEEP_IN_ERROR": "Значение этого элемента должно быть целым числом, а временное значение должно быть больше 0 и меньше 10000 дней", + "DAYS": "Дни", + "HOURS": "Часы", + "INCLUDED_OPERATIONS": "Включенные операции", + "INCLUDED_OPERATION_TOOLTIP": "Удалить журналы аудита для выбранных операций", + "INCLUDED_OPERATION_ERROR": "Пожалуйста, выберите хотя бы одну операцию", + "PURGE_NOW": "ОЧИСТИТЬ СЕЙЧАС", + "PURGE_NOW_SUCCESS": "Очистка успешно запущена", + "PURGE_SCHEDULE_RESET": "Расписание очистки было сброшено", + "PURGE_HISTORY": "История очистки", + "FORWARD_ENDPOINT": "Конечная точка пересылки журнала аудита Syslog", + "FORWARD_ENDPOINT_TOOLTIP": "Пересылать журналы аудита на конечную точку syslog, например: harbor-log:10514", + "SKIP_DATABASE": "Пропустить базу данных журнала аудита", + "SKIP_DATABASE_TOOLTIP": "Пропустить запись журнала аудита в базу данных, доступно только при настроенной конечной точке пересылки журнала аудита", + "STOP_GC_SUCCESS": "Успешно запущено остановка операции GC", + "STOP_PURGE_SUCCESS": "Успешно запущено остановка операции очистки", + "NO_GC_RECORDS": "Мы не смогли найти никаких историй GC!", + "NO_PURGE_RECORDS": "Мы не смогли найти никаких историй очистки!" + }, + "CVE_EXPORT": { + "EXPORT_SOME_PROJECTS": "Экспорт CVE", + "ALL_PROJECTS": "Все проекты", + "EXPORT_TITLE": "Экспорт CVE", + "EXPORT_SUBTITLE": "Установить условия экспорта", + "EXPORT_CVE_FILTER_HELP_TEXT": "Введите несколько идентификаторов CVE, разделенных запятыми", + "CVE_IDS": "Идентификаторы CVE", + "EXPORT_BUTTON": "ЭКСПОРТ", + "JOB_NAME": "Имя задания", + "JOB_NAME_REQUIRED": "Имя задания обязательно", + "JOB_NAME_EXISTING": "Имя задания уже существует", + "TRIGGER_EXPORT_SUCCESS": "Успешно запущен экспорт CVE!" + }, + "JOB_SERVICE_DASHBOARD": { + "SCHEDULE_PAUSED": "Запланировано(Приостановлено)", + "SCHEDULE_BEEN_PAUSED": "{{param}} было приостановлено", + "PENDING_JOBS": "Ожидающие задания в очередях", + "OTHERS": "Другие", + "STOP_ALL": "ОСТАНОВИТЬ ВСЕ", + "CONFIRM_STOP_ALL": "Подтвердить остановку всех", + "CONFIRM_STOP_ALL_CONTENT": "Вы хотите остановить все очереди заданий?", + "STOP_ALL_SUCCESS": "Успешно остановлены все очереди заданий", + "STOP_BTN": "ОСТАНОВИТЬ", + "PAUSE_BTN": "ПРИОСТАНОВИТЬ", + "RESUME_BTN": "ВОЗОБНОВИТЬ", + "JOB_TYPE": "Тип задания", + "PENDING_COUNT": "Количество ожидающих", + "LATENCY": "Задержка", + "PAUSED": "Приостановлено", + "NO_JOB_QUEUE": "Мы не смогли найти никаких очередей заданий", + "CONFIRM_STOPPING_JOBS": "Подтвердить остановку заданий", + "CONFIRM_STOPPING_JOBS_CONTENT": "Вы хотите остановить задания {{param}}?", + "CONFIRM_PAUSING_JOBS": "Подтвердить приостановку заданий", + "CONFIRM_PAUSING_JOBS_CONTENT": "Вы хотите приостановить задания {{param}}?", + "CONFIRM_RESUMING_JOBS": "Подтвердить возобновление заданий", + "CONFIRM_RESUMING_JOBS_CONTENT": "Вы хотите возобновить задания {{param}}?", + "STOP_SUCCESS": "Успешно остановлены задания", + "PAUSE_SUCCESS": "Успешно приостановлены задания", + "RESUME_SUCCESS": "Успешно возобновлены задания", + "SCHEDULES": "Расписания", + "RUNNING_STATUS": "Выполняется", + "RESUME_ALL_BTN_TEXT": "ВОЗОБНОВИТЬ ВСЕ", + "PAUSE_ALL_BTN_TEXT": "ПРИОСТАНОВИТЬ ВСЕ", + "CONFIRM_PAUSING_ALL": "Подтвердить приостановку всех", + "CONFIRM_PAUSING_ALL_CONTENT": "Вы хотите приостановить все расписания заданий?", + "CONFIRM_RESUMING_ALL": "Подтвердить возобновление всех", + "CONFIRM_RESUMING_ALL_CONTENT": "Вы хотите возобновить все расписания заданий?", + "PAUSE_ALL_SUCCESS": "Успешно приостановлены все расписания", + "RESUME_ALL_SUCCESS": "Успешно возобновлены все расписания", + "VENDOR_TYPE": "Тип поставщика", + "VENDOR_ID": "Идентификатор поставщика", + "NO_SCHEDULE": "Мы не смогли найти никаких расписаний", + "WORKERS": "Рабочие", + "FREE_ALL": "Освободить все", + "CONFIRM_FREE_ALL": "Подтвердить освобождение всех", + "CONFIRM_FREE_ALL_CONTENT": "Вы хотите освободить всех рабочих?", + "CONFIRM_FREE_WORKERS": "Подтвердить освобождение рабочих", + "CONFIRM_FREE_WORKERS_CONTENT": "Вы хотите освободить рабочих {{param}}?", + "FREE_WORKER_SUCCESS": "Успешно освобождены рабочие", + "FREE_ALL_SUCCESS": "Успешно освобождены все рабочие", + "WORKER_POOL": "Пул рабочих", + "WORKER_POOL_ID": "Идентификатор пула рабочих", + "PID": "Pid", + "START_AT": "Начато в", + "HEARTBEAT_AT": "Последний пульс в", + "CONCURRENCY": "Параллелизм", + "NO_WORKER_POOL": "Мы не смогли найти никаких пулов рабочих", + "FREE": "Освободить", + "WORKER_ID": "Идентификатор рабочего", + "JOB_ID": "Идентификатор задания", + "CHECK_IN_AT": "Зарегистрирован в", + "NO_WORKER": "Мы не смогли найти никаких рабочих", + "JOB_QUEUE": "Очереди заданий", + "JOB_SERVICE_DASHBOARD": "Панель управления сервисом заданий", + "OPERATION_STOP_ALL_QUEUES": "Остановить все очереди заданий", + "OPERATION_STOP_SPECIFIED_QUEUES": "Остановить указанные очереди заданий", + "OPERATION_PAUSE_SPECIFIED_QUEUES": "Приостановить указанные очереди заданий", + "OPERATION_RESUME_SPECIFIED_QUEUES": "Возобновить указанные очереди заданий", + "OPERATION_PAUSE_SCHEDULE": "Приостановить все расписания", + "OPERATION_RESUME_SCHEDULE": "Возобновить все расписания", + "OPERATION_FREE_ALL": "Освободить всех рабочих", + "OPERATION_FREE_SPECIFIED_WORKERS": "Освободить указанных рабочих", + "QUEUE_STOP_BTN_INFO": "ОСТАНОВИТЬ — Остановить и удалить все задания в выбранных очередях.", + "QUEUE_PAUSE_BTN_INFO": "ПРИОСТАНОВИТЬ — Приостановить выполнение заданий в этом типе очереди заданий. Задания могут быть поставлены в очередь, когда очередь приостановлена.", + "QUEUE_RESUME_BTN_INFO": "ВОЗОБНОВИТЬ — Возобновить выполнение заданий в этом типе очереди заданий.", + "SCHEDULE_PAUSE_BTN_INFO": "ПРИОСТАНОВИТЬ — Приостановить все расписания для выполнения.", + "SCHEDULE_RESUME_BTN_INFO": "ВОЗОБНОВИТЬ — Возобновить все расписания для выполнения.", + "WORKER_FREE_BTN_INFO": "Остановить текущее выполняемое задание, чтобы освободить рабочего", + "CRON": "Cron" + } +} \ No newline at end of file