在我的github操作yml中,它找不到postgis.control。但是,如果find /usr -name postgis.control找到了,它可以找到postgis.control。
我不知道为什么测试找不到postgis.control..有什么想法吗?
name: Django CI
on: push
jobs:
build:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: [3.7]
services:
postgres:
image: postgres:12
ports:
- 5432:5432
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: ghostlabs_localhost
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: psycopg2 prerequisites
run: |
sudo apt-get update && sudo apt remove -y postgis* postgresql* && sudo apt-get install -y libpq-dev gdal-bin postgresql-12 postgresql-12-postgis-3 postgresql-12-postgis-3-scripts postgresql-contrib-12
echo "-----"
find /usr -name postgis.control
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements/localhost.txt
- name: Run Tests
run: |
python manage.py migrate && python manage.py test日志显示
-----
/usr/share/postgresql/12/extension/postgis.control但是,测试已经
Traceback (most recent call last):
File "/opt/hostedtoolcache/Python/3.7.11/x64/lib/python3.7/site-packages/django/db/backends/utils.py", line 82, in _execute
return self.cursor.execute(sql)
psycopg2.errors.UndefinedFile: could not open extension control file "/usr/share/postgresql/12/extension/postgis.control": No such file or directory发布于 2021-10-15 09:04:51
postgis扩展未在官方postgresql docker镜像中分发,您可能需要手动安装或使用以下镜像进行服务定义:
image: postgis/postgis:12此外,当您在VM中定义作业时,端口可能不可用,而主机将是本地主机,因此更安全的方法是定义:
ports:
- 5432/tcp在服务定义中,以及稍后在作业定义中,设置应在设置文件中使用的环境变量。如果变量为DB_PORT,则应使用数据库将以下env添加到步骤中:
env:
DB_HOST: localhost
DB_PORT: ${{ job.services.postgres.ports[5432] }}这应该行得通!
https://stackoverflow.com/questions/69053786
复制相似问题