This is an automated email from the ASF dual-hosted git repository.
choo121600 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 92340cf4171 i18n(ko): Add missing translations (Oct 1) (#74006)
92340cf4171 is described below
commit 92340cf41711966a16fad68cca92c4a15141f2f9
Author: Yuseok Jo <[email protected]>
AuthorDate: Mon Oct 12 13:28:39 2026 +0900
i18n(ko): Add missing translations (Oct 1) (#74006)
* i18n(ko): Add missing translations (Oct 1)
* i18n(ko): Add translations for keys added to main since Oct 1
* i18n(ko): Use number formatting for counts in new translations
* i18n(ko): Add translations for keys added to main since Oct 6
* i18n(ko): Use three dots for ellipses consistently
---
.../airflow/ui/public/i18n/locales/ko/admin.json | 1 +
.../airflow/ui/public/i18n/locales/ko/assets.json | 1 +
.../airflow/ui/public/i18n/locales/ko/common.json | 42 +++++++-
.../ui/public/i18n/locales/ko/components.json | 16 ++-
.../src/airflow/ui/public/i18n/locales/ko/dag.json | 115 +++++++++++++++++++++
.../airflow/ui/public/i18n/locales/ko/dags.json | 31 +++++-
6 files changed, 196 insertions(+), 10 deletions(-)
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/admin.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/admin.json
index 7e89fe348e4..42d033bc5e5 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/admin.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/admin.json
@@ -34,6 +34,7 @@
"form": {
"connectionIdRequired": "커넥션 ID는 필수 항목입니다",
"connectionIdRequirement": "커넥션 ID는 공백만으로 구성될 수 없습니다",
+ "connectionTypeFields": "{{connectionType}} 필드",
"connectionTypeRequired": "커넥션 유형은 필수 항목입니다",
"extraFieldsJson": "추가 필드 JSON",
"helperText": "커넥션 유형이 보이지 않나요? 해당 Airflow Provider 패키지가 설치되어 있는지
확인하세요.",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/assets.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/assets.json
index 3f091b2890e..8bfba43f481 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/assets.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/assets.json
@@ -49,6 +49,7 @@
"events": "이벤트",
"filters": {
"groupPlaceholder": "그룹 검색",
+ "hasEvents": "이벤트 있음",
"lastEventDateRange": "마지막 이벤트 기간"
},
"group": "그룹",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
index 12b19247477..cb55dfe9fc2 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/common.json
@@ -168,6 +168,7 @@
"generateToken": "토큰 생성",
"includedIn": "포함됨",
"key": "키",
+ "loading": "로드 중...",
"logLevel": {
"hide": "로그 레벨 숨기기",
"hotkey": "l",
@@ -199,6 +200,7 @@
"plugins": "플러그인",
"security": "보안"
},
+ "no": "아니요",
"noItemsFound": "{{modelName}}을(를) 찾을 수 없음",
"note": {
"add": "메모 추가",
@@ -271,6 +273,10 @@
"selected": "선택됨",
"settings": {
"clearing": {
+ "keepTaskState": {
+ "helper": "태스크 인스턴스를 지울 때 태스크 상태 저장소 항목을 삭제하지 않고 기본으로 유지합니다.",
+ "label": "지울 때 태스크 상태 유지"
+ },
"preventRunningTask": {
"helper": "태스크 인스턴스를 지울 때 현재 실행 중인 태스크를 건너뜁니다.",
"label": "실행 중인 태스크 지우기 방지"
@@ -285,6 +291,13 @@
},
"title": "지우기"
},
+ "dagsList": {
+ "recentTasks": {
+ "helper": "Dags 목록에 각 Dag의 최근 태스크 상태를 표시합니다. 끄면 이를 불러오지 않으므로 Dag가 많은
환경에서 도움이 될 수 있습니다.",
+ "label": "최근 태스크 표시"
+ },
+ "title": "Dags 목록"
+ },
"description": "이 환경설정은 이 브라우저에만 저장되며 앱 전체에 적용됩니다.",
"general": {
"landingPage": {
@@ -315,6 +328,13 @@
},
"title": "상태 표시"
},
+ "search": {
+ "matchAnywhere": {
+ "helper": "$t(search.advanced.description) 각 검색창에서 따로 선택한 설정과 공유 링크에
담긴 설정이 우선 적용됩니다.",
+ "label": "기본으로 부분 일치 사용"
+ },
+ "title": "검색"
+ },
"taskInstance": {
"defaultTab": {
"helper": "태스크 인스턴스를 열 때 처음 표시할 탭입니다. 특정 탭으로 연결된 링크는 해당 탭을 계속 엽니다.",
@@ -400,6 +420,7 @@
"upstream_failed": "업스트림 실패"
},
"switchDag": "$t(dag_one) 전환",
+ "switchDagRun": "$t(dagRun_one) 전환",
"table": {
"completedAt": "완료 시간",
"createdAt": "생성 시간",
@@ -445,6 +466,8 @@
"executorConfig": "실행기 구성",
"hostname": "호스트 이름",
"id": "ID",
+ "iteration": "반복",
+ "loopIterations": "실행된 반복 횟수",
"maxTries": "최대 시도 횟수",
"pid": "PID",
"pool": "풀",
@@ -454,6 +477,11 @@
"queuedWhen": "대기열에 추가된 시간",
"renderedMapIndex": "렌더링된 맵 인덱스",
"scheduledWhen": "예정된 시간",
+ "stateReason": "상태 이유",
+ "stateReasonSummary": {
+ "failed": "{{totalTries}}회 중 {{tryNumber}}번째 시도에서 중단됨",
+ "upForRetry": "{{totalTries}}회 중 {{tryNumber}}번째 시도 후 재시도 중"
+ },
"trigger": "트리거",
"triggerer": {
"assigned": "할당된 트리거",
@@ -475,10 +503,15 @@
"title": "팀"
},
"timeRange": {
- "last12Hours": "지난 12 시간",
- "last24Hours": "지난 24 시간",
+ "anyTime": "전체 기간",
+ "in": "기간",
+ "last7Days": "지난 7일",
+ "last12Hours": "지난 12시간",
+ "last24Hours": "지난 24시간",
+ "last30Days": "지난 30일",
"lastHour": "지난 1시간",
- "pastWeek": "지난 주"
+ "latestRun": "최근 실행",
+ "pastWeek": "지난주"
},
"timestamp": {
"hide": "타임스탬프 숨기기",
@@ -570,5 +603,6 @@
"tooltip": "{{hotkey}}를 눌러 텍스트 줄바꿈 토글",
"unwrap": "줄바꿈 해제",
"wrap": "줄바꿈"
- }
+ },
+ "yes": "예"
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/components.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/components.json
index 0d38fc7a1df..dfabed3c967 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/components.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/components.json
@@ -129,6 +129,17 @@
"hide": "값 숨기기",
"show": "값 보기"
},
+ "pausedDag": {
+ "drain": "완료 후 일시 중지",
+ "drainDescription": "완료되지 않은 실행은 계속되지만, 스케줄에 따른 새 실행은 생성되지 않습니다. 일시 중지된
백필은 일시 중지 상태로 유지됩니다. 이 실행들이 모두 끝나면 Dag가 다시 일시 중지됩니다.",
+ "keepPaused": "일시 중지 유지",
+ "keepPausedDescription": "새 실행과 완료되지 않은 실행은 Dag의 일시 중지가 해제될 때까지 대기합니다.",
+ "title": "Dag가 일시 중지됨",
+ "unfinishedRunsWillRun_one": "완료되지 않은 Dag 실행 1개가 시작되거나 재개됩니다.",
+ "unfinishedRunsWillRun_other": "완료되지 않은 Dag 실행 {{count, number}}개가 시작되거나
재개됩니다.",
+ "unpause": "일시 중지 해제",
+ "unpauseDescription": "Dag가 활성화됩니다. 완료되지 않은 실행은 계속되고 스케줄이 재개됩니다. 일시 중지된
백필은 일시 중지 상태로 유지됩니다."
+ },
"reparseDag": "Dag 재구문 분석",
"slowestTaskInstances": {
"empty": "이 범위에 완료된 태스크 인스턴스가 없습니다",
@@ -154,6 +165,7 @@
"dataInterval": "데이터 구간",
"dataIntervalAuto": "논리적 날짜와 시간표에서 자동 추론",
"dataIntervalManual": "수동 지정",
+ "editConfigAndTrigger": "구성 편집 후 트리거",
"intervalEnd": "종료",
"intervalStart": "시작",
"loading": "Dag 정보 로드 중...",
@@ -173,7 +185,8 @@
"title": "Dag 트리거에 성공했습니다."
}
},
- "triggerAgainWithConfig": "현재 구성으로 다시 트리거"
+ "triggerAgainWithConfig": "현재 구성으로 다시 트리거",
+ "triggerOptions": "트리거 옵션"
},
"trimText": {
"details": "세부 정보",
@@ -190,6 +203,7 @@
"versionSelect": {
"allVersions": "전체 버전",
"dagVersion": "Dag 버전",
+ "placeholder": "버전 선택",
"versionCode": "v{{versionCode}}"
}
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/dag.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/dag.json
index 7d201d578d3..34749a2ec03 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/dag.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/dag.json
@@ -6,6 +6,7 @@
"title": "태스크 스케줄링을 막는 종속성"
},
"calendar": {
+ "backfill": "백필",
"daily": "일간",
"hourly": "시간별",
"legend": {
@@ -67,6 +68,17 @@
"upcomingCount_one": "예정된 데드라인 {{count, number}}건",
"upcomingCount_other": "예정된 데드라인 {{count, number}}건"
},
+ "execution": {
+ "clearSelected": "선택한 실행 항목 지우기",
+ "empty": "이 실행에 실행 항목이 없습니다.",
+ "iteration": "{{node}} · 반복 {{index}}",
+ "mapped_one": "{{task}} (이 페이지의 매핑된 태스크 {{count, number}}개)",
+ "mapped_other": "{{task}} (이 페이지의 매핑된 태스크 {{count, number}}개)",
+ "page": "실행 항목 {{total, number}}개 중 {{start, number}}–{{end, number}}개 표시",
+ "runTasks": "태스크 실행",
+ "select": "{{task}} 선택",
+ "title": "실행 항목"
+ },
"extraLinks": "추가 링크",
"grid": {
"buttons": {
@@ -100,9 +112,49 @@
"placeholder": "로그 검색"
},
"settings": "로그 설정",
+ "tryNotStarted": "이 시도는 아직 시작되지 않았습니다.",
+ "viewFailedTry": "실패한 {{tryNumber}}번째 시도의 로그 보기",
"viewInExternal": "{{name}}에서 로그 보기 (시도 {{attempt}})",
+ "viewPreviousTry": "이전 {{tryNumber}}번째 시도의 로그 보기",
+ "waitingToRetry": "{{tryNumber}}번째 시도는 재시도 대기 중입니다.",
"warning": "경고"
},
+ "loop": {
+ "filter": {
+ "all": "모든 반복",
+ "invocation": "호출",
+ "label": "반복"
+ },
+ "history": {
+ "capLabel": "제한: {{max}}",
+ "iterationsAxis": "반복 횟수",
+ "stats": {
+ "capHits": "제한 도달",
+ "medianIterations": "반복 횟수 중앙값"
+ },
+ "title": "실행별 반복 횟수"
+ },
+ "iteration": "반복 {{index}}",
+ "iterations": "반복",
+ "outcome": "결과",
+ "reason": {
+ "cap_reached": "반복 제한({{max}})에 도달함",
+ "failed": "{{index}}번째 반복에서 실패함",
+ "iteration_failed": "{{taskId}}에서 {{index}}번째 반복이 실패함",
+ "ran_to_cap": "허용된 {{max}}회 반복을 모두 실행함",
+ "removed": "제거됨",
+ "running": "실행 중",
+ "skipped": "건너뜀",
+ "stopped_early": "{{index}}번째 반복에서 조기 중단됨"
+ },
+ "rules": {
+ "behaviour": "동작",
+ "boundedFor": "정해진 횟수만큼 반복 실행",
+ "exitCriteria": "종료 조건",
+ "maxIterations": "최대 반복 횟수",
+ "whileUntil": "{{criteria}}까지 반복"
+ }
+ },
"notFound": {
"back": "뒤로",
"backToDags": "Dags로 돌아가기",
@@ -219,6 +271,7 @@
"taskInstances": "태스크 인스턴스",
"taskStateStore": "태스크 상태 저장소",
"tasks": "태스크",
+ "versions": "버전",
"xcom": "XCom"
},
"taskGroups": {
@@ -246,5 +299,67 @@
"never": "만료 없음"
},
"title": "태스크 상태 저장소"
+ },
+ "versions": {
+ "aboutThisComparison": "이 비교에 대한 정보",
+ "base": "비교 기준",
+ "categories": {
+ "asset": "에셋",
+ "authorization": "권한",
+ "callback": "콜백",
+ "deadline": "데드라인",
+ "dependency": "종속성",
+ "metadata": "메타데이터",
+ "param": "매개변수",
+ "provenance": "출처",
+ "schedule": "스케줄",
+ "task": "태스크",
+ "unknown": "알 수 없음"
+ },
+ "codeAccess": "값을 보려면 Dag 코드 접근 권한이 필요합니다",
+ "columns": {
+ "after": "변경 후",
+ "before": "변경 전",
+ "category": "분류",
+ "impact": "영향",
+ "occurrences": "발생 횟수",
+ "operation": "변경 유형",
+ "path": "경로"
+ },
+ "heading": "버전 {{base}} → 버전 {{target}}",
+ "impacts": {
+ "authorization": "권한",
+ "execution": "실행",
+ "metadata": "메타데이터",
+ "provenance": "출처",
+ "unknown": "알 수 없음"
+ },
+ "maxChanges": "최대 변경 수",
+ "maxChangesDefault": "기본값",
+ "noChanges": "두 버전에 저장된 상태가 같습니다.",
+ "observedState": "관측된 상태",
+ "observedStateBoundary": "버전 생성 시점의 기록이 아니라 현재 저장된 상태를 비교합니다. 이전 버전은 소스
비교를 지원하지 않으므로, 소스를 비교하려면 코드 탭을 사용하세요.",
+ "operations": {
+ "added": "추가됨",
+ "changed": "변경됨",
+ "removed": "제거됨"
+ },
+ "record_one": "레코드",
+ "record_other": "레코드",
+ "selectPrompt": "두 버전을 선택하면 그 사이에 변경된 내용을 볼 수 있습니다.",
+ "summary_one": "변경 {{count, number}}개 · 직렬화 스키마 {{baseSchema}} →
{{targetSchema}}",
+ "summary_other": "변경 {{count, number}}개 · 직렬화 스키마 {{baseSchema}} →
{{targetSchema}}",
+ "target": "비교 대상",
+ "truncated": {
+ "description": "한도를 넘지 않도록 일부 경로의 변경이 제외되었으므로, 표시된 변경 수는 실제보다 적을 수
있습니다.",
+ "title": "일부 변경 사항이 반환되지 않았습니다"
+ },
+ "unavailable": {
+ "description": "두 버전을 비교할 수 없습니다. 이유:",
+ "title": "비교할 수 없음",
+ "withoutReason": "두 버전을 비교할 수 없습니다."
+ },
+ "valuesHidden": "값 숨김",
+ "valuesShown": "값 표시"
}
}
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/ko/dags.json
b/airflow-core/src/airflow/ui/public/i18n/locales/ko/dags.json
index 0e98986e97f..05c4d4182b8 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/ko/dags.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/ko/dags.json
@@ -16,20 +16,35 @@
"unfavorite": "즐겨찾기 해제"
},
"favoriteState": "즐겨찾기 상태",
- "favoriteStatePlaceholder": "즐겨찾기 상태 선택…",
+ "favoriteStatePlaceholder": "즐겨찾기 상태 선택...",
"noTimetableTypesFound": "타임테이블 유형을 찾을 수 없습니다",
"paused": {
"active": "활성",
"all": "모두",
"paused": "일시 중지됨"
},
- "pausedPlaceholder": "일시 중지 상태 선택…",
+ "pausedPlaceholder": "일시 중지 상태 선택...",
"pausedState": "일시 중지 상태",
"requiresHitlAction": "필수 작업",
"runIdPatternFilter": "Dag 실행 검색",
+ "runState": "실행 상태",
+ "runStatePlaceholder": "실행 상태 선택...",
"timetableType": "타임테이블 유형"
},
+ "folders": {
+ "all": "모든 Dag",
+ "empty": "폴더 없음",
+ "hide": "폴더 숨기기",
+ "show": "폴더 보기",
+ "title": "폴더"
+ },
"ownerLink": "{{owner}}의 소유자 링크",
+ "recentTaskStateCounts": {
+ "description": "실행 중인 모든 Dag 실행의 태스크 상태이며, 실행 중인 것이 없으면 가장 최근 실행의 태스크
상태입니다. 사용자 설정에서 끌 수 있습니다.",
+ "label": "최근 태스크",
+ "loading": "최근 태스크 상태 개수 로드 중...",
+ "tooltip": "{{state}}: {{formattedCount}} — 클릭하여 태스크 필터링"
+ },
"runAndTaskActions": {
"affectedTasks": {
"noItemsFound": "태스크를 찾을 수 없습니다.",
@@ -69,19 +84,23 @@
"failed": "Shift+F를 눌러 실패로 표시",
"success": "Shift+S를 눌러 성공으로 표시"
},
+ "skippedInfo": "태스크 인스턴스를 건너뜀으로 표시하면 의도적으로 실행하지 않았다는 사실이 기록됩니다. 다운스트림
태스크는 여전히 각자의 트리거 규칙에 따라 평가되며, 기본 \"all_success\" 규칙에서는 다운스트림 태스크도 건너뜁니다. 아직 실행을
시작하지 않은 태스크 인스턴스만 건너뜀으로 표시할 수 있으며, 이 태스크 인스턴스에만 적용됩니다.",
"title": "{{type}}을(를) {{state}}으로 표시"
},
"options": {
"downstream": "다운스트림",
"existingTasks": "기존 태스크 지우기",
"future": "미래",
+ "keepTaskState": "태스크 상태 유지 후 재개",
+ "laterIterations": "이후 반복",
"onlyFailed": "실패한 태스크만 지우기",
"past": "과거",
"preventRunningTasks": "실행 중인 태스크 재실행 방지",
"queueNew": "새 태스크 대기열에 추가",
"runOnLatestVersion": "최신 번들 버전으로 실행",
"runOnLatestVersionForced": "항상 최신 번들 버전을 사용합니다. 되돌아갈 이전 버전이 없습니다.",
- "upstream": "업스트림"
+ "upstream": "업스트림",
+ "wholeExpansion": "전체 확장"
}
},
"runStateCounts": {
@@ -93,7 +112,8 @@
"cancelDrain": "실행 완료 대기 취소",
"drain": "완료 후 일시 중지",
"drainPrompt": "이 Dag에는 진행 중인 Dag 실행이 있습니다. 완료 후 일시 중지를 선택하면 진행 중인 실행이 모두
끝난 뒤 Dag가 일시 중지됩니다. 지금 일시 중지를 선택하면 완료를 기다리지 않고 스케줄링을 즉시 중단합니다.",
- "pauseNow": "지금 일시 중지"
+ "pauseNow": "지금 일시 중지",
+ "pauseSelected": "일시 중지 / 완료 후 일시 중지"
},
"schedulingBanner": {
"message": "이 Dag는 실행 완료 대기 중입니다. 진행 중인 Dag 실행이 모두 끝나면 일시 중지됩니다."
@@ -105,11 +125,12 @@
"drainingTooltip": "{{dagDisplayName}}: 실행 완료 대기 중입니다. 진행 중인 Dag 실행이 모두
끝나면 일시 중지됩니다. 클릭하여 다시 활성화하세요.",
"label": "스케줄링 상태",
"paused": "일시 중지됨",
- "placeholder": "스케줄링 상태 선택…"
+ "placeholder": "스케줄링 상태 선택..."
},
"search": {
"advanced": "고급 검색",
"clear": "검색 지우기",
+ "dagRuns": "$t(common:dagRun_one) 검색",
"dags": "Dag 검색",
"hotkey": "+K",
"tasks": "태스크 검색"