Renku template format for the target folder - manifest.yaml

Hello,

The manifest.yaml format for specifying the target folder in a Renku template seems to have recently undergone some changes, which have BTW been reverted : History for manifest.yaml - SwissDataScienceCenter/renku-project-template · GitHub

However, I am still unable to create a Renku project with the original format (i.e. folder keyword) from my template trials. I keep getting the following error :

image

Any thoughts would be appreciated (@rrrrrok ?).

That reverted change is likely unrelated to the issue you are seeing. We wanted to rename the folders of templates on our end but then realized that this would prevent existing projects to update from the template, as existing project would look for the template in the old, now missing path. Hence we reverted the change to work on a proper solution for renaming/moving templates.

id is still the correct field to use, both id and folder are treated as the same field by renku (we renamed folder to id in the code but still read folder if id is missing for backwards compatibility).

Your template currently is a renku project, but templates should not be renku projects (renku will turn them into Renku projects on project creation). Specifically this means that a template shouldn’t contain any files in the .renku folder other than renku.ini.

You can see this using the CLI inside the template:

❯ renku template validate
Manifest Warnings:
        Template 'cborm-class-material' should use 'id' attribute instead of 'folder'.
Template Errors:
        cborm-class-material:
                These paths are not allowed in a template:
                        .renku/template_checksums.json
                        .renku/metadata
                        .renku/metadata.yml

That’s likely the reason it fails. I’ll open an issue to make sure the proper error message is returned in these cases, instead of the one you saw which is wrong, I think.

Trying to use the template in the CLI give the correct error:

❯ renku init -s https://renku.unifr.ch/gitlab/champak.beeravolureddy/cborm-master-template.git -r master cborm-test
Initializing Git repository...
Fetching template from https://renku.unifr.ch/gitlab/champak.beeravolureddy/cborm-master-template.git@master...
Error: These paths are not allowed in a template:
                        .renku/metadata
                        .renku/metadata.yml
                        .renku/template_checksums.json

@ralf.grubenmann thank you for your prompt reply !

Indeed, I had forgotten to “clean up” the .renku folder containing all the project specific metadata before using the Gitlab project as a template. It does work when I simply have a renku.ini file left.