docker-cubicweb issueshttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues2021-09-02T15:48:59Zhttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/20[autodevops] use GITLAB_ENVIRONMENT_URL as CW_BASE_URL2021-09-02T15:48:59ZArthur Lutz[autodevops] use GITLAB_ENVIRONMENT_URL as CW_BASE_URLWhen deploying a cube using the AutoDevops pipeline the base environment contains $GITLAB_ENVIRONMENT_URL which gives the URL being served by the review app.
Maybe this environment variable can be "translated" into CW_BASE_URL in the en...When deploying a cube using the AutoDevops pipeline the base environment contains $GITLAB_ENVIRONMENT_URL which gives the URL being served by the review app.
Maybe this environment variable can be "translated" into CW_BASE_URL in the entrypoint ?
Not sure if this should be done here or in cubicweb, here is the cubicweb related issue : https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/386https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/9[migration] tool to generate VARIABLES from all-in-one/sources2021-06-10T10:02:38ZArthur Lutz[migration] tool to generate VARIABLES from all-in-one/sourcesWhen migrating from a VM based setup to a docker or kubernetes setup, it would be nice to have a script that extracts the informations from those configurations and writes a ENV file and/or a kuztomize.yml secret generating file.When migrating from a VM based setup to a docker or kubernetes setup, it would be nice to have a script that extracts the informations from those configurations and writes a ENV file and/or a kuztomize.yml secret generating file.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/12[README] update versions2021-07-21T12:56:31ZArthur Lutz[README] update versionsIn README here the latest is 3.29, I think the latest is 3.32.
On the hub https://hub.docker.com/r/logilab/cubicweb the README mentionned 3.28 as latest. I just changed that there.
It would be nice to integrate changes needed on this...In README here the latest is 3.29, I think the latest is 3.32.
On the hub https://hub.docker.com/r/logilab/cubicweb the README mentionned 3.28 as latest. I just changed that there.
It would be nice to integrate changes needed on this README and the hub readme in the release :rocket: process (and maybe automate it!?)https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/11Add a check update for pypi versions2021-07-20T15:18:40ZFabien Amargerfabien.amarger@logilab.frAdd a check update for pypi versionshttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/21Allow to restore a database instead of creating from scratch2021-11-25T10:48:13ZKatia SaurfeltAllow to restore a database instead of creating from scratchProvide an option or an environmental variable to decide to create base from scratch or to restore it from a pg dump. Example below for a kubernetes deployment (from FA, not in prod):
```yaml
apiVersion: apps/v1
kind: Deployment
meta...Provide an option or an environmental variable to decide to create base from scratch or to restore it from a pg dump. Example below for a kubernetes deployment (from FA, not in prod):
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: francearchives
spec:
template:
spec:
initContainers:
- name: francearchives-db-create
args:
- "-c"
- |
echo "checking postgresql database $CW_DB_NAME if it doesn't exist, create it with pg_restore";
if [ "$(PGPASSWORD=$CW_DB_PASSWORD psql -h $CW_DB_HOST -p $CW_DB_PORT -d template1 -tAc "SELECT 1 FROM pg_database WHERE datname='$CW_DB_NAME'")" = '1' ]; then
echo "database exists"
else
echo "download dump"
wget https://example.org/database.tgz
echo "uncompress dump"
tar xvfz database.tgz
echo "createdb"
PGPASSWORD=$CW_DB_PASSWORD createdb -h $CW_DB_HOST -p $CW_DB_PORT $CW_DB_NAME
echo "pg_restore"
PGPASSWORD=$CW_DB_PASSWORD pg_restore -h $CW_DB_HOST -p $CW_DB_PORT -d $CW_DB_NAME --no-owner -F d database
echo "reset password"
cubicweb-ctl reset-admin-pwd -p $CW_PASSWORD $CW_INSTANCE
echo "upgrade"
cubicweb-ctl upgrade --backup-db=n --fs-only --force --verbosity=0 "$(CW_INSTANCE)"
fi
echo "done"
```
This could be useful for reviewapps.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/22CI n'a pas accès au Docker Hub2023-02-23T12:00:57ZCarine DenglerCI n'a pas accès au Docker Hubhttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/jobs/657434
@famarger , @schabot je suis en train de regarder ce souci, si vous avez une idée je suis preneusehttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/jobs/657434
@famarger , @schabot je suis en train de regarder ce souci, si vous avez une idée je suis preneusehttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/17db-init in entrypoint2021-08-26T15:15:38ZArthur Lutzdb-init in entrypointIn some cases, the database has already been created and we don't have drop privileges. In that case, it would be nice to be able to call db-init as we would db-create.In some cases, the database has already been created and we don't have drop privileges. In that case, it would be nice to be able to call db-init as we would db-create.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/3Debian variant2020-12-10T14:24:17ZArthur LutzDebian variantBy default, docker-cubicweb uses pip install of the cubes it needs to deploy. Provide a way to using dpkg instead of pip with some way of providing a configurable (client) apt repo URL.By default, docker-cubicweb uses pip install of the cubes it needs to deploy. Provide a way to using dpkg instead of pip with some way of providing a configurable (client) apt repo URL.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/6entrypoint needs to be overwritten when pyramid.ini is mounted by kubernetes2021-03-02T09:54:28ZCarine Denglerentrypoint needs to be overwritten when pyramid.ini is mounted by kubernetesmounting pyramid.ini from a secret/configMap leads to the mount path being read only and thus to errors in the entrypoint.sh which attempts to write to /etc/cubicweb.d/instance/pyramid.ini ; currently, the most feasible solution is to ov...mounting pyramid.ini from a secret/configMap leads to the mount path being read only and thus to errors in the entrypoint.sh which attempts to write to /etc/cubicweb.d/instance/pyramid.ini ; currently, the most feasible solution is to overwrite the entrypointhttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/15Failing upgrade/start on missing postgresql2021-07-21T15:11:01ZArthur LutzFailing upgrade/start on missing postgresql```
/usr/local/lib/python3.7/dist-packages/markdown/util.py:87: DeprecationWarning: SelectableGroups dict interface is deprecated. Use select.
INSTALLED_EXTENSIONS = metadata.entry_points().get('markdown.extensions', ())
/usr/local/l...```
/usr/local/lib/python3.7/dist-packages/markdown/util.py:87: DeprecationWarning: SelectableGroups dict interface is deprecated. Use select.
INSTALLED_EXTENSIONS = metadata.entry_points().get('markdown.extensions', ())
/usr/local/lib/python3.7/dist-packages/logilab/database/postgres.py:581: TargetRenamedDeprecationWarning: [logilab.common.deprecation] deprecated has been renamed and is deprecated, uses callable_deprecated instead
@deprecated("[lgdb 1.10] deprecated method")
Traceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/cubicweb/cwctl.py", line 207, in run
status = cmdmeth(appid) or 0
File "/usr/local/lib/python3.7/dist-packages/cubicweb/cwctl.py", line 668, in upgrade_instance
mih = config.migration_handler()
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/serverconfig.py", line 478, in migration_handler
verbosity=verbosity,
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/migractions.py", line 124, in __init__
self.repo = config.repository()
File "/usr/local/lib/python3.7/dist-packages/cubicweb/cwconfig.py", line 1148, in repository
repo = Repository(self, vreg=vreg)
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/repository.py", line 409, in __init__
"native", "system", config.system_source_config.copy()
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/repository.py", line 544, in get_source
return sources.get_source(type, source_config, self, eid)
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/sources/__init__.py", line 360, in get_source
return source_adapter(type)(repo, source_config, eid)
File "/usr/local/lib/python3.7/dist-packages/logilab/common/modutils.py", line 125, in __call__
return self._getobj()(*args, **kwargs)
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/sources/native.py", line 386, in __init__
SQLAdapterMixIn.__init__(self, source_config, repairing=repo.config.repairing)
File "/usr/local/lib/python3.7/dist-packages/cubicweb/server/sqlutils.py", line 327, in __init__
self.dbhelper = logilab_database.get_db_helper(self.dbdriver)
File "/usr/local/lib/python3.7/dist-packages/logilab/database/__init__.py", line 74, in get_db_helper
return _ADV_FUNC_HELPER_DIRECTORY[driver]()
File "/usr/local/lib/python3.7/dist-packages/logilab/database/__init__.py", line 866, in __init__
self.dbapi_module = get_dbapi_compliant_module(self.backend_name)
File "/usr/local/lib/python3.7/dist-packages/logilab/database/__init__.py", line 83, in get_dbapi_compliant_module
mod = _ADAPTER_DIRECTORY.adapt(driver, prefered_drivers, pywrap=pywrap)
File "/usr/local/lib/python3.7/dist-packages/logilab/database/__init__.py", line 220, in adapt
module, modname = _import_driver_module(driver, prefered_drivers)
File "/usr/local/lib/python3.7/dist-packages/logilab/database/__init__.py", line 258, in _import_driver_module
raise ImportError("Unable to import a %s module" % driver)
ImportError: Unable to import a postgres module
instance fresh not upgraded: Unable to import a postgres module
```
Maybe `pip install cubicweb[postgresql]` should be by default in this project ?https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/23Mettre à jour setuptools2023-02-14T13:47:20ZFrançois FerryMettre à jour setuptoolshttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/1Option to have a db-create in entrypoint when database is not found2020-10-08T12:29:31ZArthur LutzOption to have a db-create in entrypoint when database is not foundhttps://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/13pip fails to install pycrypto2021-07-21T14:27:38ZArthur Lutzpip fails to install pycrypto```
Installing collected packages: linecache2, traceback2, argparse, unittest2, cubicweb, pycrypto, cubicweb-geocoding, Pillow, cwtags, cubicweb-skos, cubicweb-prov, cubicweb-compound, cubicweb-bootstrap, cubicweb-addressbook, pyxst, doc...```
Installing collected packages: linecache2, traceback2, argparse, unittest2, cubicweb, pycrypto, cubicweb-geocoding, Pillow, cwtags, cubicweb-skos, cubicweb-prov, cubicweb-compound, cubicweb-bootstrap, cubicweb-addressbook, pyxst, docutils, cubicweb-squareui, cubicweb-relationwidget, cubicweb-forgotpwd, cubicweb-eac, psycopg2-binary, cubicweb-seda, cubicweb-rememberme, cubicweb-registration, cubicweb-card, cubicweb-mintika
Attempting uninstall: cubicweb
Found existing installation: cubicweb 3.30.0
Uninstalling cubicweb-3.30.0:
Successfully uninstalled cubicweb-3.30.0
Running setup.py install for cubicweb: started
Running setup.py install for cubicweb: finished with status 'done'
Running setup.py install for pycrypto: started
Running setup.py install for pycrypto: finished with status 'error'
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py'"'"'; __file__='"'"'/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-hau8yk8d/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.7/pycrypto
cwd: /tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/
Complete output (189 lines):
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.7
creating build/lib.linux-x86_64-3.7/Crypto
copying lib/Crypto/pct_warnings.py -> build/lib.linux-x86_64-3.7/Crypto
copying lib/Crypto/__init__.py -> build/lib.linux-x86_64-3.7/Crypto
creating build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/RIPEMD.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/hashalgo.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/MD4.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/SHA256.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/MD5.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/SHA224.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/MD2.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/SHA512.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/SHA384.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/SHA.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
copying lib/Crypto/Hash/HMAC.py -> build/lib.linux-x86_64-3.7/Crypto/Hash
creating build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/DES3.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/AES.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/XOR.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/Blowfish.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/ARC4.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/CAST.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/ARC2.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/PKCS1_v1_5.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/DES.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/PKCS1_OAEP.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
copying lib/Crypto/Cipher/blockalgo.py -> build/lib.linux-x86_64-3.7/Crypto/Cipher
creating build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/winrandom.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/Counter.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/py3compat.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/_number_new.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/asn1.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/RFC1751.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/randpool.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/number.py -> build/lib.linux-x86_64-3.7/Crypto/Util
copying lib/Crypto/Util/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Util
creating build/lib.linux-x86_64-3.7/Crypto/Random
copying lib/Crypto/Random/_UserFriendlyRNG.py -> build/lib.linux-x86_64-3.7/Crypto/Random
copying lib/Crypto/Random/random.py -> build/lib.linux-x86_64-3.7/Crypto/Random
copying lib/Crypto/Random/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Random
creating build/lib.linux-x86_64-3.7/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/SHAd256.py -> build/lib.linux-x86_64-3.7/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaGenerator.py -> build/lib.linux-x86_64-3.7/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/FortunaAccumulator.py -> build/lib.linux-x86_64-3.7/Crypto/Random/Fortuna
copying lib/Crypto/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Random/Fortuna
creating build/lib.linux-x86_64-3.7/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/fallback.py -> build/lib.linux-x86_64-3.7/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/posix.py -> build/lib.linux-x86_64-3.7/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/rng_base.py -> build/lib.linux-x86_64-3.7/Crypto/Random/OSRNG
copying lib/Crypto/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Random/OSRNG
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest
copying lib/Crypto/SelfTest/st_common.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest
copying lib/Crypto/SelfTest/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_pkcs1_15.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/common.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC4.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_AES.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_pkcs1_oaep.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_CAST.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_Blowfish.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_ARC2.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_DES3.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
copying lib/Crypto/SelfTest/Cipher/test_XOR.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Cipher
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA224.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_HMAC.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA384.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/common.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD5.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_RIPEMD.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD4.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_MD2.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA256.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/test_SHA512.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
copying lib/Crypto/SelfTest/Hash/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Hash
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_KDF.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_AllOrNothing.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_chaffing.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/test_rfc1751.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
copying lib/Crypto/SelfTest/Protocol/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Protocol
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_importKey.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_DSA.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_ElGamal.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/test_RSA.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
copying lib/Crypto/SelfTest/PublicKey/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/PublicKey
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_random.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test__UserFriendlyRNG.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random
copying lib/Crypto/SelfTest/Random/test_rpoolcompat.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_SHAd256.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaGenerator.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/Fortuna
copying lib/Crypto/SelfTest/Random/Fortuna/test_FortunaAccumulator.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/Fortuna
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_fallback.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_winrandom.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_nt.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_posix.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
copying lib/Crypto/SelfTest/Random/OSRNG/test_generic.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Random/OSRNG
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_number.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_winrandom.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_Counter.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/test_asn1.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
copying lib/Crypto/SelfTest/Util/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Util
creating build/lib.linux-x86_64-3.7/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/test_pkcs1_15.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Signature
copying lib/Crypto/SelfTest/Signature/test_pkcs1_pss.py -> build/lib.linux-x86_64-3.7/Crypto/SelfTest/Signature
creating build/lib.linux-x86_64-3.7/Crypto/Protocol
copying lib/Crypto/Protocol/KDF.py -> build/lib.linux-x86_64-3.7/Crypto/Protocol
copying lib/Crypto/Protocol/Chaffing.py -> build/lib.linux-x86_64-3.7/Crypto/Protocol
copying lib/Crypto/Protocol/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Protocol
copying lib/Crypto/Protocol/AllOrNothing.py -> build/lib.linux-x86_64-3.7/Crypto/Protocol
creating build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/RSA.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/_RSA.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/ElGamal.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/DSA.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/_slowmath.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/_DSA.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
copying lib/Crypto/PublicKey/pubkey.py -> build/lib.linux-x86_64-3.7/Crypto/PublicKey
creating build/lib.linux-x86_64-3.7/Crypto/Signature
copying lib/Crypto/Signature/PKCS1_PSS.py -> build/lib.linux-x86_64-3.7/Crypto/Signature
copying lib/Crypto/Signature/__init__.py -> build/lib.linux-x86_64-3.7/Crypto/Signature
copying lib/Crypto/Signature/PKCS1_v1_5.py -> build/lib.linux-x86_64-3.7/Crypto/Signature
Skipping optional fixer: buffer
Skipping optional fixer: idioms
Skipping optional fixer: set_literal
Skipping optional fixer: ws_comma
running build_ext
running build_configure
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py", line 456, in <module>
core.setup(**kw)
File "/usr/lib/python3.7/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/setuptools/command/install.py", line 61, in run
return orig.install.run(self)
File "/usr/lib/python3.7/distutils/command/install.py", line 589, in run
self.run_command('build')
File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/lib/python3.7/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py", line 251, in run
self.run_command(cmd_name)
File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py", line 278, in run
raise RuntimeError("autoconf error")
RuntimeError: autoconf error
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py'"'"'; __file__='"'"'/tmp/pip-install-7gfkk32q/pycrypto_8ac591e1469c4ea880aa6e505b8a0caa/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-hau8yk8d/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.7/pycrypto Check the logs for full command output.
The command '/bin/sh -c pip install -e /src' returned a non-zero code: 1
```
(on 3.32, 3.31)https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/4Provide a mecanism to override certain pyramid.ini variables2021-02-10T11:23:14ZArthur LutzProvide a mecanism to override certain pyramid.ini variablesIt would be nice for projects to be able to modify a single pyramid.ini value instead of having to ship the whole file in their deployment (which can sometimes lead to technical debt being copied from a version to the next).
This is re...It would be nice for projects to be able to modify a single pyramid.ini value instead of having to ship the whole file in their deployment (which can sometimes lead to technical debt being copied from a version to the next).
This is related to https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/257https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/18Provide sleep in entrypoint2021-08-26T15:15:38ZArthur LutzProvide sleep in entrypointWhen deploying this image to kubernetes and other restricted environments, for example via an helm chart, and having to debug deployment problems... it would be usefull to have a `sleep` entrypoint which "pauses" the container and enable...When deploying this image to kubernetes and other restricted environments, for example via an helm chart, and having to debug deployment problems... it would be usefull to have a `sleep` entrypoint which "pauses" the container and enables one to start a shell with the full on environment as a debug sidecar.
Added bonus points, if we can "fake a liveness/readyness endpoint to fool the probe into believing the container is running correcly", yes in some cases it gets restarted when liveness/readyness fail.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/5Provide ways to execute gen-static-datadir & i18n on startup2021-02-17T13:40:53ZArthur LutzProvide ways to execute gen-static-datadir & i18n on startupIn some k8s deployment, we can see the following being used :
`command: ["/bin/bash", "-c", "cubicweb-ctl gen-static-datadir instance; cubicweb-ctl i18n instance; uwsgi --ini /etc/uwsgi/uwsgi.ini"]`
Maybe we need an option, an environ...In some k8s deployment, we can see the following being used :
`command: ["/bin/bash", "-c", "cubicweb-ctl gen-static-datadir instance; cubicweb-ctl i18n instance; uwsgi --ini /etc/uwsgi/uwsgi.ini"]`
Maybe we need an option, an environment variable so as to keep using the default entrypoint with this kind of behaviour ?
The risk with this command overriding trick is that when the entrypoint add features, these are ignored.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/16Support for DATABASE_URL2021-09-02T15:46:36ZArthur LutzSupport for DATABASE_URLIssue on the docker image to follow https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/349
While waiting for the implementation to be done on the cubicweb site, we could imagine modifying the `entrypoint.sh` here to reconstru...Issue on the docker image to follow https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/349
While waiting for the implementation to be done on the cubicweb site, we could imagine modifying the `entrypoint.sh` here to reconstruct the CW_DB_* variables from DATABASE_URL.https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/14use dynamic pipeline for gitlab-ci instead of regenerate file each time2021-07-21T14:42:12ZFabien Amargerfabien.amarger@logilab.fruse dynamic pipeline for gitlab-ci instead of regenerate file each timeWe can use dynamic pipeline (https://docs.gitlab.com/ee/ci/pipelines/parent_child_pipelines.html) instead of regenerate gitlab-ci.yml each time.
c.f. https://www.objectif-libre.com/en/blog/2021/02/23/a-new-era-for-gitlab-ci-dynamic-child...We can use dynamic pipeline (https://docs.gitlab.com/ee/ci/pipelines/parent_child_pipelines.html) instead of regenerate gitlab-ci.yml each time.
c.f. https://www.objectif-libre.com/en/blog/2021/02/23/a-new-era-for-gitlab-ci-dynamic-child-pipelines/https://forge.extranet.logilab.fr/cubicweb/docker-cubicweb/-/issues/8uwsgi - set max-requests default2021-05-04T16:11:50ZArthur Lutzuwsgi - set max-requests defaultTo handle a memory leak, one might use uwsgi to restart workers, one way seems to be to use `max-requests`
Example for a django configuration :
https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html?highlight=ma...To handle a memory leak, one might use uwsgi to restart workers, one way seems to be to use `max-requests`
Example for a django configuration :
https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html?highlight=max-requests#uwsgi
Documentation :
https://uwsgi-docs.readthedocs.io/en/latest/Options.html?highlight=max-requests
To prevent each project bumping into this problem and looking for a solution, could we add a reasonable default to the docker-cubicweb images ?