After a recent refactor of build_project_repo, the version detection step imports the Python package to read __version__. This fails for third-party apps like eScriptorium that don't expose a version this way.
The previous behavior allowed setting python_app_version directly as a variable to skip detection. We need to restore that — if python_app_version is already defined, skip the import step and use the provided value directly.
Current workaround: python_app has been removed from htr/vars.yml to skip version detection entirely, which means we lose version tracking for eScriptorium.
@rlskoeser, I removed python_app and python_app_version from the shared vars htr/vars.yml, which you originally set in htr_staging/vars.yml, because they're causing build_project_repo role fail.
I believe they were valid at the time when you were setup the staging server, but after Francis's latest refactor on build_project_repo role, it now has a version detection step that requires the __version__ attribute which eScriptorium doesn't have.
...
Your solution is ok as a temporary workaround, but we need to resolve the problem. (I don't think this is the only app affected.) It will be important in the long run to distinguish which version if eScriptorium we're deploying. You will have to figure out how to revise the python_app_version task to restore the previous behavior (allow override with a variable) or some other solution that works with eSciptorium.
Originally posted by @rlskoeser in #347 (comment)
After a recent refactor of
build_project_repo, the version detection step imports the Python package to read__version__. This fails for third-party apps like eScriptorium that don't expose a version this way.The previous behavior allowed setting
python_app_versiondirectly as a variable to skip detection. We need to restore that — ifpython_app_versionis already defined, skip the import step and use the provided value directly.Current workaround:
python_apphas been removed fromhtr/vars.ymlto skip version detection entirely, which means we lose version tracking for eScriptorium.Your solution is ok as a temporary workaround, but we need to resolve the problem. (I don't think this is the only app affected.) It will be important in the long run to distinguish which version if eScriptorium we're deploying. You will have to figure out how to revise the
python_app_versiontask to restore the previous behavior (allow override with a variable) or some other solution that works with eSciptorium.Originally posted by @rlskoeser in #347 (comment)