Hohoho here is the December release!
Thank you for the feedback on the November release. We improved the documentation, pinned dependencies and made various other contributions that should help you because of it. Keep your feedback coming for this release too.
Release Content
In this release, we focused our efforts on:
- Providing a default user interface for the instance.
- The frontpage, the search page and the record page have been styled.
- Uploading files to records
- Previewing and downloading files from records
- Updating some of the cli functionality
And we fixed various bugs as usual.
What do you need to do?
Try out the release and see if the above features work by following the updated
installation guide from the beginning (from scratch). Some of invenio-cli
's options have changed.
Leave all feedback as comments to this thread using the template below.
## Bugs
## What worked well
## What didn't work well
## Wishes for documentation
Happy holidays from the InvenioRDM team!
And Happy holidays to you all too!
I am using Red Hat Enterprise Linux Server release 7.7 (Maipo) I gave a try and this is so far what I get, it hung when trying to build the docker image.
Bugs
(alpha3) ~/alpha3/december-release$ invenio-cli build --pre --containers
Building RDM application...
Locking dependencies...
Bootstrapping server...
Building base docker image...
In the /var/log/message
I see these type of errors:
An error occurred while installing cchardet==2.1.5 --hash=sha256:0f7ec49fcd28088c387d4afcc02c0549434d9e07deb2519365a6baa5b6c7ebb4 --hash=sha256:1a6d00b7cbd8acfc5e3093cb5f983a667d0752dc328123c8dcb293e252bfb024 --hash=sha256:240efe3f255f916769458343840b9c6403cf3192720bc5129792cbcb88bf72fb --hash=sha256:30f461d876cf3ea40c6fd949b9725c7c6e2522a3e87d33817d221e9f478d7e4d --hash=sha256:379a0bbd630bca677990df7509672a2ca43faf928939fd4b063fc2215b025b91 --hash=sha256:3ae84e6ee215925cd06a772d87c17d5485d862e2f1677aa0d6c295ea9313f117 --hash=sha256:4001620ba761b2ddd51caef6194444b5cd2f131de7c8c51a0f4896cb1ea1111a --hash=sha256:4bd54ff3a239b4fe598ba262d8730372e339fdd314286ceb6706a003d3e03d7b --hash=sha256:4d015296e96c0b2022495e4685b6fc0f3c9feed88fb062135f7f4748df7e0921 --hash=sha256:5011ab33557913489c98d2fbdd7d88f06736f0bb456c60952fc5e52886b2a410 --hash=sha256:6a192cce3009c9cd671588574ad0cb81322c78265ebcb33b2def63c15e44ea47 --hash=sha256:6bf07931fa81238d9174266aaf83605204192977671ef230d5651a8f9d4acf56 --hash=sha256:7f22a8194c4e696cea3eff28723f77858495dec52baf93261943c8bb8ce08035 --hash=sha256:8126798ec34b9fb444472d849b6510817939347809b898a0d6d6463e41c5901a --hash=sha256:8e3a50bcad2ca0921fbbd46d29cc215dcc0d6d360570d594aeb7b0e2de716e8c --hash=sha256:92341348fed2fb53899e9cccf030da5377beb8ed26dfddc6acf87f1f0ce4b80e --hash=sha256:950fb40918772efe5779747a2f6c83a053a26b623a674f1d4f271b35331a9968 --hash=sha256:a4e346151042b5cfae34fff65911842f04849be4a74f22bc52b1e99c11650210 --hash=sha256:af48965b752490d8e330e41a46ba47f07c63f22ac5c7f4c396b7efd3958daa2e --hash=sha256:b5cebf47f498e5ad4a9a5ef089b7ab6ef7926eaeea0b239c8e54f8217ce81cf2 --hash=sha256:b7cad0a062675acb42eb5170b07be774a5d9ca35a24388e918e5b78cb40ccbf2 --hash=sha256:bb05580cd40f4cb7ccda5f90163fc43e27820046a6d0af11c1747d515fc69859 --hash=sha256:f87bdef26758a0a8de93bbfd7651ac4fcf798a7a06c049c347a0103279698b23! Will try again.
OK I gave a try using RHEL 7 workstation OS and using Docker CE docker -ce-18.09.0-3.el7.x86_64, docker -ce-cli-18.09.0-3.el7.x86_64
Bugs
If I install docker-compose within the virtualenv using PIP method I get a problem with the Invenio-cli
Using cached https://files.pythonhosted.org/packages/27/15/2cd0a203f318c2240b42cd9dd13c931ddd61067809fee3479f44f086103e/PyNaCl-1.3.0-cp34-abi3-manylinux1_x86_64.whl
Requirement already satisfied: more-itertools in /opt/invenio/.venv/lib/python3.6/site-packages (from zipp>=0.5->importlib-metadata; python_version < "3.8"->jsonschema<4,>=2.5.1->docker-compose) (8.0.2)
Collecting cffi!=1.11.3,>=1.8
Using cached https://files.pythonhosted.org/packages/49/72/0d42f94fe94afa8030350c26e9d787219f3f008ec9bf6b86c66532b29236/cffi-1.13.2-cp36-cp36m-manylinux1_x86_64.whl
Processing /opt/invenio/.cache/pip/wheels/f2/9a/90/de94f8556265ddc9d9c8b271b0f63e57b26fb1d67a45564511/pycparser-2.19-py2.py3-none-any.whl
ERROR: invenio-cli 1.0.0a8 has requirement PyYAML<5.2.0,>=5.1.2, but you'll have pyyaml 3.13 which is incompatible.
What worked well
This time I could complete the proposed documentation until the advance example. It is not clear to me how to create the user.
What didnât work well
The advance part was not clear to me, while I understand the goal of demonstrating restriction of privileges it documentation does not provide specific details in terms of the superuser creation. Probably something I should do following invenio roles creation commands or the lack functionality if the Invenio-cli.
Wishes for documentation
Is not clear for me whether this documentation already exists account creation within the invenioRDMâŚ
Hello @cfgamboa we will document the user creation/permission granting as soon as possible.
As for the hanging error. Did it download the latest cookiecutter? (it should if you typed âyesâ when initializing). Alternatively, you can confirm this by folder modification date (Cookiecutters are usually located in the home directory under â.cookiecuttersâ, for example â~/.cookiecuttersâ); the folder we are looking for is called âcookiecutter-invenio-rdmâ.
You mention the error was in âvar/log/messagesâ. Was there anything in â~/alpha3/december-release/logs/invenio-cli.logâ?
Thanks a lot!
Pablo
Hi @ppanero
Ok thank you.
The latest .cookiecutters
ls -lrt
total 24
-rw-rw-r-- 1 invenio invenio 1090 Dec 24 11:48 LICENSE
-rw-rw-r-- 1 invenio invenio 323 Dec 24 11:48 AUTHORS.rst
drwxrwxr-x 2 invenio invenio 96 Dec 24 11:48 scripts
-rwxrwxr-x 1 invenio invenio 1716 Dec 24 11:48 run-tests.sh
-rw-rw-r-- 1 invenio invenio 2330 Dec 24 11:48 README.rst
drwxrwxr-x 2 invenio invenio 32 Dec 24 11:48 hooks
-rw-rw-r-- 1 invenio invenio 566 Dec 24 11:48 cookiecutter.json
drwxrwxr-x 4 invenio invenio 4096 Dec 24 11:48 {{cookiecutter.project_shortname}}
[invenio@invtest08 cookiecutter-invenio-rdm]$
The error log provided in the /log/invenio-cli.log did not show any apparent error.
All the best,
Carlos
Bugs
no bugs
What worked well?
the installation worked very smooth no errors and bugs.
What didnât work well?
according the documentation everything worked for me, BUT some things that i wanted to do further i think is not yet implemented so, i wonât go there.
bellow is the screenshot of me creating a record and then adding files to it.
i know the pics doesnât match the metadata at all
but the uploading and creating a record worked.
1 Like
Hi @cfgamboa,
Trying to reproduce this on Red Hat 7.X (but with older docker!), we didnât get the error you had⌠we got a different one though! Python dependencies seemed to have installed fine. Itâs trying to build the docker image that failed:
docker.errors.BuildError: Please provide a source image with `from` prior to commit
I made a ticket for this that I am addressing now: https://github.com/inveniosoftware/cookiecutter-invenio-rdm/issues/31 . For your issue, I would install docker-compose globally (at least not in same virtualenv as invenio-cli) and try again. If you get the same error as above it will be a âgoodâ sign.
EDIT Jan 9
This issue has been fixed in invenio-cliâs master branch (widely available in next release). Thanks for alerting us to issues in RHEL in the first place. Note that the build
step does take a few minutes.
Hello,
Apologies for the weird formatting - this is a feature of the editor in this forum which I could not defeat.
The instructions on GitHub are missing the mention of the Python version dependency. Once I started installation under Python 3.5 it failed since it doesnât handle the Posix path classes. Once I decided to upgrade all the way to 3.8 it didnât work either because of a problem with shims i.e. â_shimsâ object has no attribute InstallRequirement.
Iâm using Ubuntu 16.04LTS.
When I went with 3.6 installation completed. Adding the user to docker group was necessary to avoid the socket error. But building images still failed -
Building RDM applicationâŚ
Locking dependenciesâŚ
Bootstrapping serverâŚ
Building application docker imageâŚ
Traceback (most recent call last):
File â/home/maxim/p36/Python-3.6.10/rdm-env/bin/invenio-cliâ, line 11, in
sys.exit(cli())
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/click/core.pyâ, line 764, in call
return self.main(*args, **kwargs)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/flask/cli.pyâ, line 586, in main
return super(FlaskGroup, self).main(*args, **kwargs)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/click/core.pyâ, line 717, in main
rv = self.invoke(ctx)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/click/core.pyâ, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/click/core.pyâ, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/click/core.pyâ, line 555, in invoke
return callback(*args, **kwargs)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/invenio_cli/cli.pyâ, line 165, in build
log_config=invenio_cli.log_config)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/invenio_cli/helpers/scripts.pyâ, line 91, in bootstrap
_boostrap_containers(docker_helper, project_shortname)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/invenio_cli/helpers/scripts.pyâ, line 80, in _boostrap_containers
tag=â{}:latestâ.format(project_shortname)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/invenio_cli/helpers/docker_helper.pyâ, line 42, in build_image
dockerfile=dockerfile, tag=tag)
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/docker/models/images.pyâ, line 287, in build
raise BuildError(chunk[âerrorâ], result_stream)
docker.errors.BuildError: The command â/bin/bash -c invenio collect --verbose && invenio webpack create && invenio webpack install --unsafe && invenio webpack buildâ returned a non-zero code: 1
This seems to be related from the first command in the chain which produces
File â/home/maxim/p36/Python-3.6.10/rdm-env/lib/python3.6/site-packages/flask_babelex/init.pyâ, line 23, in
from werkzeug import ImmutableDict
ImportError: cannot import name âImmutableDictâ
Indeed this can be imported from wekrzeug.datastructures but not like this.
Could you please advise?
Thank you,
Maxim
Hi Maxim,
Thanks for the feedback (no worries about the editor formatting ). You were not the only one facing these issues. You will be happy to know that the upcoming February release will address these problems:
- We will document the system dependencies better (in a subsequent release we will expand the supported Python versions). Python 3.6 is indeed the only version supported right now.
-
ImportError: cannot import name âImmutableDict
is something plaguing all modules since Werkzeug 1.0.0. The next release limits the version of Werkzeug, until upstream dependencies fix their imports too. In this particular case, the fix was merged in Flask-BabelEx 0.9.4 . If you limit Werkzeug: 'Werkzeug>=0.15.0,<1.0.0'
in your dependencies, you should be fine.
Be on the look-out for this release at the beginning of March.