canonical / rockcraft

Tool to create OCI Images using the language from Snapcraft and Charmcraft.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python plugin: incompatibilities with python-packages attribute, build-packages and at least `libpq-dev`

javierdelapuente opened this issue · comments

Bug Description

Using the python plugin, I tried to use the library psycopg2==2.9.9 in the requirements.txt file. For that library, it is necessary to have the libpq-dev as a build-package.

If no package is specified in the attributepython-packages, then the build works correctly.

However, if a package is specified in the attribute python-packages, the build fails with an error related to Python.h file not found.

2024-06-24 13:23:29.241 :: 2024-06-24 13:23:28.839 ::       ./psycopg/psycopg.h:35:10: fatal error: Python.h: No such file or directory
2024-06-24 13:23:29.241 :: 2024-06-24 13:23:28.839 ::          35 | #include <Python.h>

Adding manually pip, setuptools and wheel to the python-packages make it work again.

To Reproduce

Add a requirements.txt file with:

psycopg2==2.9.9

The following rockcraft.yaml fails in rockcraft pack

name: test
base: ubuntu@22.04
version: '0.1'
summary: summary
description: description
platforms:
    amd64:

parts:
  dependencies:
    build-packages:
    - libpq-dev
    plugin: python
    source: .
    stage-packages:
    - python3.10-venv
    python-packages:
    - gunicorn
    python-requirements:
    - requirements.txt

with an error that contains:

2024-06-24 13:23:29.241 :: 2024-06-24 13:23:28.839 ::       ./psycopg/psycopg.h:35:10: fatal error: Python.h: No such file or directory
2024-06-24 13:23:29.241 :: 2024-06-24 13:23:28.839 ::          35 | #include <Python.h>

However this works (adding gunicorn to requirements.txt):

...
  dependencies:
    build-packages:
    - libpq-dev
    plugin: python
    source: .
    stage-packages: [python3.10-venv]
    python-requirements:
    - requirements.txt 

And this also works:

  ...
  dependencies:
    build-packages:
    - libpq-dev
    plugin: python
    source: .
    stage-packages: [python3.10-venv]
    python-requirements:
    - requirements2.txt
    python-packages:
    - gunicorn
    - pip
    - setuptools
    - wheel

Environment

Ubuntu 22.04 LTS with rockcraft built from the main branch.

rockcraft.yaml

name: test
base: ubuntu@22.04
version: '0.1'
summary: summary
description: description
platforms:
    amd64:

parts:

  dependencies:
    build-packages:
    - libpq-dev
    plugin: python
    source: .
    stage-packages:
    - python3.10-venv
    python-packages:
    - gunicorn
    python-requirements:
    - requirements.txt

Relevant log output

2024-06-24 13:30:47.981 :: 2024-06-24 13:30:42.061 Executing PosixPath('/root/parts/dependencies/run/build.sh')
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:42.063 :: + [[ python3 = /* ]]
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:42.063 :: + python3 -m venv /root/parts/dependencies/install
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:44.680 :: + PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/dependencies/install/bin/python3
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:44.681 :: + /root/parts/dependencies/install/bin/pip install -U gunicorn
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.032 :: Collecting gunicorn
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.107 ::   Downloading gunicorn-22.0.0-py3-none-any.whl (84 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.146 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 84.4/84.4 KB 2.5 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.202 :: Collecting packaging
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.214 ::   Downloading packaging-24.1-py3-none-any.whl (53 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.239 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.0/54.0 KB 2.3 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.270 :: Installing collected packages: packaging, gunicorn
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.341 :: Successfully installed gunicorn-22.0.0 packaging-24.1
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.405 :: + /root/parts/dependencies/install/bin/pip install -U -r requirements.txt
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.859 :: Collecting psycopg2==2.9.9
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:45.933 ::   Downloading psycopg2-2.9.9.tar.gz (384 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.018 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 384.9/384.9 KB 4.8 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.062 ::   Preparing metadata (setup.py): started
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.221 ::   Preparing metadata (setup.py): finished with status 'done'
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.269 :: Collecting Flask
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.281 ::   Downloading flask-3.0.3-py3-none-any.whl (101 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.301 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 101.7/101.7 KB 6.4 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.354 :: Collecting click>=8.1.3
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.370 ::   Downloading click-8.1.7-py3-none-any.whl (97 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.385 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.9/97.9 KB 8.4 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.448 :: Collecting Werkzeug>=3.0.0
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.464 ::   Downloading werkzeug-3.0.3-py3-none-any.whl (227 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.494 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 227.3/227.3 KB 8.4 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.527 :: Collecting itsdangerous>=2.1.2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.541 ::   Downloading itsdangerous-2.2.0-py3-none-any.whl (16 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.592 :: Collecting Jinja2>=3.1.2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.608 ::   Downloading jinja2-3.1.4-py3-none-any.whl (133 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.633 ::      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 133.3/133.3 KB 5.8 MB/s eta 0:00:00
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.683 :: Collecting blinker>=1.6.2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.697 ::   Downloading blinker-1.8.2-py3-none-any.whl (9.5 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.865 :: Collecting MarkupSafe>=2.0
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.877 ::   Downloading MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25 kB)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.895 :: Using legacy 'setup.py install' for psycopg2, since package 'wheel' is not installed.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.929 :: Installing collected packages: psycopg2, MarkupSafe, itsdangerous, click, blinker, Werkzeug, Jinja2, Flask
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:46.930 ::   Running setup.py install for psycopg2: started
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.108 ::   Running setup.py install for psycopg2: finished with status 'error'
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.114 ::   error: subprocess-exited-with-error
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.114 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.114 ::   × Running setup.py install for psycopg2 did not run successfully.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.114 ::   │ exit code: 1
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::   ╰─> [40 lines of output]
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       running install
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       /root/parts/dependencies/install/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::         warnings.warn(
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       running build
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       running build_py
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       creating build
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       creating build/lib.linux-x86_64-3.10
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       creating build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       copying lib/__init__.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       copying lib/extras.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.115 ::       copying lib/_json.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/pool.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/errors.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/_ipaddress.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/_range.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/errorcodes.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/sql.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/extensions.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       copying lib/tz.py -> build/lib.linux-x86_64-3.10/psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.116 ::       running build_ext
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.117 ::       building 'psycopg2._psycopg' extension
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.117 ::       creating build/temp.linux-x86_64-3.10
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.117 ::       creating build/temp.linux-x86_64-3.10/psycopg
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.117 ::       x86_64-linux-gnu-gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DPSYCOPG_VERSION=2.9.9 (dt dec pq3 ext lo64) -DPSYCOPG_DEBUG=1 -DPG_VERSION_NUM=140012 -DHAVE_LO64=1 -DPSYCOPG_DEBUG=1 -I/root/parts/dependencies/install/include -I/root/parts/dependencies/install/usr/include/python3.10 -I. -I/usr/include/postgresql -I/usr/include/postgresql/14/server -I/usr/include/libxml2 -c psycopg/adapter_asis.c -o build/temp.linux-x86_64-3.10/psycopg/adapter_asis.o -Wdeclaration-after-statement
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::       In file included from psycopg/adapter_asis.c:28:
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::       ./psycopg/psycopg.h:35:10: fatal error: Python.h: No such file or directory
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::          35 | #include <Python.h>
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::             |          ^~~~~~~~~~
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::       compilation terminated.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.118 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::       It appears you are missing some prerequisite to build the package from source.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::       You may install a binary package by installing 'psycopg2-binary' from PyPI.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::       If you want to install psycopg2 from source, please install the packages
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::       required for the build and try again.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.119 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::       For further information please check the 'doc/src/install.rst' file (also at
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::       <https://www.psycopg.org/docs/install.html>).
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::       error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::       [end of output]
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.120 ::   note: This error originates from a subprocess, and is likely not a problem with pip.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 :: error: legacy-install-failure
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 :: × Encountered error while trying to install package.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 :: ╰─> psycopg2
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 ::
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 :: note: This is an issue with the package mentioned above, not pip.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.121 :: hint: See above for output from the failure.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.201 Failed to run the build script for part 'dependencies'.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 Traceback (most recent call last):
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/step_handler.py", line 148, in _builtin_build
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     _create_and_run_script(
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/step_handler.py", line 461, in _create_and_run_script
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     subprocess.run(
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/usr/lib/python3.10/subprocess.py", line 526, in run
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     raise CalledProcessError(retcode, process.args,
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 subprocess.CalledProcessError: Command '[PosixPath('/root/parts/dependencies/run/build.sh')]' returned non-zero exit status 1.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 The above exception was the direct cause of the following exception:
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 Traceback (most recent call last):
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_application/services/lifecycle.py", line 258, in run
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     aex.execute(action, stdout=stream, stderr=stream)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/executor.py", line 327, in execute
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     self._executor.execute(actions, stdout=stdout, stderr=stderr)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/executor.py", line 137, in execute
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     self._run_action(act, stdout=stdout, stderr=stderr)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/executor.py", line 214, in _run_action
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     handler.run_action(action, stdout=stdout, stderr=stderr)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/part_handler.py", line 170, in run_action
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     state = handler(step_info, stdout=stdout, stderr=stderr)
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/part_handler.py", line 309, in _run_build
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     self._run_step(
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/part_handler.py", line 491, in _run_step
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     return step_handler.run_builtin()
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/step_handler.py", line 108, in run_builtin
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     return handler()
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_parts/executor/step_handler.py", line 157, in _builtin_build
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208     raise errors.PluginBuildError(
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 craft_parts.errors.PluginBuildError: Failed to run the build script for part 'dependencies'.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 Check the build output and verify the project can work with the 'python' plugin.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.208 Recommended resolution: Check the build output and verify the project can work with the 'python' plugin.
2024-06-24 13:30:47.982 :: 2024-06-24 13:30:47.209 For more information, check out: https://documentation.ubuntu.com/rockcraft/en/stable/reference/plugins.html
2024-06-24 13:30:47.983 Executing on host: lxc --project rockcraft config device show local:rockcraft-test-on-amd64-for-amd64-1290268
2024-06-24 13:30:48.081 Executing on host: lxc --project rockcraft config device remove local:rockcraft-test-on-amd64-for-amd64-1290268 disk-/root/project
2024-06-24 13:30:48.164 Executing on host: lxc --project rockcraft stop local:rockcraft-test-on-amd64-for-amd64-1290268
2024-06-24 13:30:52.334 Failed to execute rockcraft in instance.
2024-06-24 13:30:52.341 Traceback (most recent call last):
2024-06-24 13:30:52.341   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_application/application.py", line 370, in run_managed
2024-06-24 13:30:52.341     instance.execute_run(  # pyright: ignore[reportUnknownMemberType,reportUnknownVariableType]
2024-06-24 13:30:52.341   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_providers/lxd/lxd_instance.py", line 293, in execute_run
2024-06-24 13:30:52.342     return self.lxc.exec(
2024-06-24 13:30:52.342   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_providers/lxd/lxc.py", line 387, in exec
2024-06-24 13:30:52.342     return runner(final_cmd, timeout=timeout, check=check, **kwargs)
2024-06-24 13:30:52.342   File "/snap/rockcraft/x1/usr/lib/python3.10/subprocess.py", line 526, in run
2024-06-24 13:30:52.342     raise CalledProcessError(retcode, process.args,
2024-06-24 13:30:52.342 subprocess.CalledProcessError: Command '['lxc', '--project', 'rockcraft', 'exec', 'local:rockcraft-test-on-amd64-for-amd64-1290268', '--cwd', '/root/project', '--', 'env', 'CRAFT_MANAGED_MODE=1', 'DEBIAN_FRONTEND=noninteractive', 'DEBCONF_NONINTERACTIVE_SEEN=true', 'DEBIAN_PRIORITY=critical', 'CRAFT_PLATFORM=amd64', 'CRAFT_VERBOSITY_LEVEL=BRIEF', 'rockcraft', 'pack']' returned non-zero exit status 1.
2024-06-24 13:30:52.342 
2024-06-24 13:30:52.342 The above exception was the direct cause of the following exception:
2024-06-24 13:30:52.342 Traceback (most recent call last):
2024-06-24 13:30:52.342   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_application/application.py", line 535, in run
2024-06-24 13:30:52.342     self.run_managed(platform, build_for)
2024-06-24 13:30:52.342   File "/snap/rockcraft/x1/lib/python3.10/site-packages/craft_application/application.py", line 377, in run_managed
2024-06-24 13:30:52.342     raise craft_providers.ProviderError(
2024-06-24 13:30:52.342 craft_providers.errors.ProviderError: Failed to execute rockcraft in instance.
2024-06-24 13:30:52.342 Full execution log: '/home/ubuntu/.local/state/rockcraft/log/rockcraft-20240624-132944.870344.log'

Can you attach the whole log file /home/ubuntu/.local/state/rockcraft/log/rockcraft-20240624-132944.870344.log ? I'd like to see which build-packages are being installed

Sure,
this is an example of a failing rockcraft pack: https://pastebin.ubuntu.com/p/hDBf9WkGGW/

This is a sucessful rockcraft pack, just removing python-packages: [gunicorn]: /home/ubuntu/.local/state/rockcraft/log/rockcraft-20240624-140502.309905.log