Python 스크립트를 컴파일하는 데 사용되는 OS(운영 체제)에 따라, 관련 ZIP 아카이브를 vRealize Orchestrator 클라이언트로 가져온 후 워크플로 또는 작업이 실패할 수 있습니다.
vRealize Orchestrator의 Python에 사용되는 런타임 컨테이너의 OS는 Photon 3.0을 기준으로 합니다. 예를 들어 Linux와 같은 다른 OS용으로 컴파일된 Python 스크립트 패키지는 런타임 컨테이너와 호환되지 않습니다. 이 문제로 인해 Python 스크립트가 실패하고 vRealize Orchestrator 워크플로 또는 작업의 일부로 사용하려고 할 수 있습니다. 이러한 시나리오에서 로그에 다음과 같은 오류 메시지가 표시됩니다.
-04:00errorCannot find module action
이 문제를 해결하려면 Photon OS 컨테이너 폴더에 필수 Python 패키지를 설치해야 합니다.
프로시저
- Python 스크립트의 상위 폴더로 이동합니다.
- 컨테이너 폴더를 상위 폴더에 마운트하여 기본 Photon 이미지로 컨테이너를 생성합니다.
참고: 다음 스크립트는 적절한 컨테이너를 생성하기 위해 완전히 실행해야 하는 단일 Docker 명령입니다.
docker run -ti -v
$(pwd)/<name_of_folder_that_containes_your_python_script>/:/<name_of_folder_that_containes_your_python_script>
photon:3.0
- 컨테이너에 Python을 설치합니다.
tdnf install -y python3-3.7.5-5.ph3 python3-pip-3.7.5-5.ph3
- Python 스크립트가 포함된 컨테이너 폴더로 이동합니다.
- Python 스크립트 및 패키지를 추가합니다.
참고:
lib 폴더에 Python 스크립트에 필요한 패키지를 설치합니다.
pip3 install <package_name> -t lib/
- 컨테이너를 종료하고 컨테이너에 마운트된 로컬 폴더로 이동합니다.
- 모든 관련 파일 및 폴더를 ZIP 아카이브로 압축합니다.
- ZIP 아카이브를 vRealize Orchestrator 클라이언트로 가져오고 작업의 일부로 실행하여 스크립트의 유효성을 검사합니다.