irods / irods_testing_environment

BSD 3-Clause "New" or "Revised" License
8 stars 15 forks source link

Issues running plugin tests on Debian 12 Docker image #176

Closed korydraughn closed 1 year ago

korydraughn commented 1 year ago

Attempting to run the plugin tests for Debian 12 results in the following:

2023-10-17 15:16:31,788 - OCI runtime exec failed: exec failed: unable to start container process: exec: "pkill": executable file not found in $PATH: unknown

2023-10-17 15:16:31,791 - [debian-12-postgres-148_irods-catalog-provider_1] failed to kill rsyslogd
2023-10-17 15:16:32,432 - rsyslogd: imklog: cannot open kernel log (/proc/kmsg): Operation not permitted.
rsyslogd: activation of module imklog failed [v8.2302.0 try https://www.rsyslog.com/e/2145 ]

2023-10-17 15:16:33,544 - OCI runtime exec failed: exec failed: unable to start container process: exec: "pgrep": executable file not found in $PATH: unknown

2023-10-17 15:16:33,867 - Server pidfile missing or stale. No iRODS server running?

2023-10-17 15:16:35,091 - setting up catalog consumers [1] [[]]
2023-10-17 15:16:35,102 - configuring iRODS containers for testing
2023-10-17 15:16:35,117 - json for hosts_config [{"host_entries": [{"address_type": "local", "addresses": [{"address": "7343e69e64a2"}, {"address": "10.15.177.3"}, {"address": "icat.example.org"}]}]}] [debian-12-postgres-148_irods-catalog-provider_1]
2023-10-17 15:16:35,234 - hosts_config.json configured successfully [debian-12-postgres-148_irods-catalog-provider_1]
2023-10-17 15:16:35,616 - univMSS script configured successfully [debian-12-postgres-148_irods-catalog-provider_1]
2023-10-17 15:16:35,742 - [debian-12-postgres-148_irods-catalog-provider_1] successfully configured pam
2023-10-17 15:16:36,843 - [debian-12-postgres-148_irods-catalog-provider_1] successfully created test user accounts
2023-10-17 15:16:36,941 - options:[['--built_packages_root_directory', '/mnt/hdd_500gb/development_environment_output/plugin_packages/4.3']]
2023-10-17 15:16:36,941 - before [{'executing_container': 'debian-12-postgres-148_irods-catalog-provider_1', 'return_code': 0, 'test_list': [], 'passed_tests': [], 'failed_tests': [], 'duration': -1}]
2023-10-17 15:16:36,942 - after  [{'executing_container': 'debian-12-postgres-148_irods-catalog-provider_1', 'return_code': 0, 'test_list': [None], 'passed_tests': [], 'failed_tests': [], 'duration': -1}]
2023-10-17 15:16:36,942 - [debian-12-postgres-148_irods-catalog-provider_1]: running test [None]
2023-10-17 15:16:38,340 - error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
    python3-xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-Debian-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
    sure you have python3-full installed.

    If you wish to install a non-Debian packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

    See /usr/share/doc/python3.11/README.venv for more information.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

2023-10-17 15:16:38,408 - [debian-12-postgres-148_irods-catalog-provider_1]: exception raised while running test
2023-10-17 15:16:38,409 - Failed to install pip package [/tmp/tmpvb_w0bd3/irods_python_ci_utilities] [debian-12-postgres-148_irods-catalog-provider_1]
2023-10-17 15:16:38,409 - [[1]]
2023-10-17 15:16:38,409 - [[1]]
2023-10-17 15:16:38,409 - ==== begin test run results ====
-----
results for [debian-12-postgres-148_irods-catalog-provider_1]
        passed tests:
        skipped tests:
                [all tests]
        failed tests:
        return code:[1]
-----
List of failed tests:

Return code:[1]
time elapsed: [   1.4678]seconds ([   0]hours [ 0.0245]minutes)
==== end of test run results ====
korydraughn commented 1 year ago

Seems we're missing pkill (resolved by installing procps) and debian 12 has different rules for python3 packages.

SwooshyCueb commented 1 year ago

When installing python pacakges to the system via pip, --break-system-packages needs to be passed.