DevOps/OpenStack

WSL 설치 및 Ubuntu 설정 + zanata.ini 구성 + 번역 파일 Pull 받아오기!

Sophie소피 2025. 10. 25. 17:28

💻 개발 환경 설정: WSL + Ubuntu

🔹 WSL 설치 및 Ubuntu 설정

Windows에서 리눅스 개발 환경을 구축하기 위해 WSL(Windows Subsystem for Linux) 을 설치하고, Ubuntu 배포판을 설정했습니다.

 

 

🔹 패키지 업데이트 및 필수 도구 설치

Ubuntu 환경에서 패키지 목록을 최신으로 업데이트하고, 개발에 필요한 도구인 Python3, pip, git을 설치했습니다.

sudo apt update

 

sudo apt install -y python3 python3-pip git

해당 환경은 앞으로 OpenStack 및 Kubernetes 번역 스크립트를 실행하거나 CLI 도구를 사용할 때 기반이 되는 환경으로 사용될 예정입니다.

 

 

1️⃣ OpenStack

🔹 0install 설치 확인

sudo apt update
sudo apt install 0install
0install --version

ZeroInstall 2.18이 정상 설치되어 있음을 확인했습니다.

 

🔹 zanata-cli 등록 및 업데이트

0install -c add zanata-cli <https://raw.githubusercontent.com/zanata/zanata.github.io/master/files/0install/zanata-cli.xml>
0install -c update zanata-cli

  • 키 인증 과정 중 신뢰 여부를 묻는 메시지가 출력되며 Y 입력.
  • 현재 버전: zanata-cli 4.6.1

🔹 Java 8 설치 (Zanata CLI 구동을 위한 필수 조건)

  1. SDKMAN 설치
curl -s "<https://get.sdkman.io>" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

 

  1. Java 설치 및 기본 설정
sdk install java 8.0.462-tem
sdk default java 8.0.462-tem

✅ Java 8이 정상적으로 설치되었고 기본 Java로 설정 완료.

 

 

 

🔐 설정: zanata.ini 구성

1️⃣ zanata.ini 설정 파일 구성

 

  • 설정 파일 경로: ~/.config/zanata.ini
[servers]
translate_openstack_org.url=https://translate.openstack.org/
translate_openstack_org.username=
translate_openstack_org.key=
  • 🔎 -server 옵션은 CLI에서 인식을 못하기 때문에 해당 정보는 .ini 파일에 정의해야 한다.

2️⃣ 잘못된 옵션 사용 → 수정

# 잘못된 명령 예시
0install run zanata-cli list-remote --server translate_openstack_org -B -e
  • ❌ -server는 유효한 옵션이 아님 → .ini 설정을 사용해야 CLI가 서버 정보를 읽어올 수 있음

3️⃣ 프로젝트 설정 파일 zanata.xml 생성

  • 경로: ~/workspace/horizon/zanata.xml
    <https://translate.openstack.org/>
    horizon
    master
    gettext


4️⃣ 번역 파일 Pull 성공

cd ~/workspace/horizon
0install run zanata-cli pull -B -e
  • ✅ .ini와 zanata.xml 설정이 올바르면, 번역 대상 언어(locale) 리스트를 불러오고 번역된 .po 파일을 locale/ 폴더에 저장

 

 

📁 번역 파일 Pull 결과

Zanata CLI를 통해 OpenStack Horizon 프로젝트의 번역 파일을 성공적으로 내려받았습니다.

작업 디렉토리인 ~/workspace/horizon 내부의 locale/ 폴더에 다양한 하위 구성요소별로

.po 번역 파일들이 생성되었습니다.

📂 전체 폴더 구조 요약

locale/
├── doc/
│   └── source/locale/                    # 문서 번역
├── horizon/locale/                      # Horizon 본체 번역
├── openstack_auth/locale/               # 인증 관련 번역
├── openstack_dashboard/locale/          # 대시보드 번역
└── releasenotes/source/locale/          # 릴리즈 노트 번역

📌 번역 파일 예시

모듈 경로 주요 언어

문서 (doc) locale/doc/source/locale/ ko_KR.po, en_GB.po, fr.po, ja.po, ...
Horizon UI locale/horizon/locale/ ar.po, zh_CN.po, ko_KR.po, ru.po, fi_FI.po 등
OpenStack Auth locale/openstack_auth/locale/ ko_KR.po, zh_TW.po, de.po, ja.po 등
OpenStack Dashboard locale/openstack_dashboard/locale/ ko_KR.po, en_GB.po, fr.po, zh_CN.po, vi_VN.po 등
Release Notes locale/releasenotes/source/locale/ ko_KR.po, pt_BR.po, tr_TR.po, zh_TW.po 등

총 수십 개의 언어로 번역된 .po 파일이 확인했고 한국어(ko_KR.po) 파일도 여러 모듈에서 확인했습니다.