我正在尝试创建一个触发器,用于在将函数部署到cloud function之前对其进行测试。到目前为止,我成功地安装了requirements.txt并执行了pytest,但是我得到了以下错误:
/usr/local/lib/python3.7/site-packages/ghostscript/__init__.py:35: in <module>
from . import _gsprint as gs
/usr/local/lib/python3.7/site-packages/ghostscript/_gsprint.py:515: in <module>
raise RuntimeError('Can not find Ghostscript library (libgs)')
E RuntimeError: Can not find Ghostscript library (libgs)我的requirements.txt文件中有ghostscript:
[...]
ghostscript==0.6
[...]
pytest==6.0.1
pytest-mock==3.3.1这是我的deploy.yaml
steps:
- name: 'docker.io/library/python:3.7'
id: Test
entrypoint: /bin/sh
dir: 'My_Project/'
args:
- -c
- 'pip install -r requirements.txt && pytest pytest/test_mainpytest.py -v'通过回溯,我了解到我没有在云构建中安装ghostscript,这是真的。
有没有办法在我的deploy.yaml的某个步骤上安装ghostscript
编辑-1:
所以我试着用命令一步一步地安装ghostscript,我尝试了apt-get gs,apt-get ghostscript,但不幸的是它不起作用
发布于 2020-10-19 20:04:13
真正的问题是你遗漏了一个c-library,这个包本身似乎是由pip安装的。你应该用你的包管理器安装库。这是一个基于ubuntu的容器的例子:
- name: 'gcr.io/cloud-builders/gcloud'
entrypoint: 'bash'
args:
- '-c'
- |
apt update
apt install ghostscript -y
pip install -r requirements.txt
pytest pytest/test_mainpytest.py -vhttps://stackoverflow.com/questions/64424606
复制相似问题