Jenkins 파일에는 다음 코드가 있습니다.
#!/usr/bin/env groovy
....
def env_prod = 'prod.env'
def entrypoint = "${env.WORKSPACE}
그런 다음 위의 내용을 다음과 같이 결합합니다.
${env.WORKSPACE}/$env_prod
그리고 이를 Python 스크립트에 입력합니다( 를 통해 argparse
). Python 스크립트는 다음과 같습니다.
def get_package_reference_versions(packages, env_path, env_format):
with open(env_path) as f:
deps = f.read()
....
내 Jenkins 로그에는 다음이 표시됩니다.
[2024-01-25T13:39:41.780Z] File "/opt/bmll/miniconda/lib/python3.11/site-packages/something/deployment.py", line 421, in get_package_reference_versions
[2024-01-25T13:39:41.780Z] with open(env_path) as f:
[2024-01-25T13:39:41.780Z] ^^^^^^^^^^^^^^
[2024-01-25T13:39:41.780Z] FileNotFoundError: [Errno 2] No such file or directory: '/home/ec2-user/jenkins/workspace/pipeline-deployments/js-deployment-cr/prod.env'
js-deployment-cr
이제 디렉토리 안에 무엇이 있는지 알아내고 싶습니다 .
js-deployment-cr
디렉토리 내의 환경 파일을 인쇄하는 방법이 있습니까 ?
PYTHON 스크립트는 bash 스크립트와 다른 저장소에 있기 때문에 변경할 수 없습니다. 그래서 Jenkins 파일에서 이 문제를 해결해야 합니다.