"fx workspace graminize" does not regard the version used to build the workspace
Describe the bug
fx workspace graminize always uses latest version of OpenFL from Pip, regardless of version used in workspace creation. In case head of develop branch is used, version 1.4 is added to requirements.txt and docker build fails because there is no such version in Pip repository
To Reproduce
python -m venv venv
. venv/bin/activate
git clone https://github.com/intel/openfl.git
cd openfl
pip install .
fx workspace create --prefix workspace --template torch_unet_kvasir_gramine_ready
cd workspace
fx plan initialize -a `hostname --all-fqdns`
openssl genrsa -3 -out key.pem 3072
fx workspace graminize --rebuild -s key.pem
Expected behavior
Gramine-based Docker image is created based on the version used to build the workspace (in this case head of develop branch)
Build log file: build.log
Thanks for reporting this issue! It opens several questions:
- Should we pin the OpenFL version in the experiment plan?
- Should we ensure users create their Gramine-targeted experiments with the latest stable version of OpenFL?
- Should we export OpenFL as a requirement for experiments?
@mansishr, what do you think?
@igor-davidyuk IMO exporting OpenFL as a requirement for experiments is the easiest approach for gramine ready workspaces, although it may look counterintuitive to users. I am not sure of the first option and the second option seems like an additional step that users might have to implement.
We have an external PR which fixes this issue #557
We are fundamentally reworking the graminization flow in OpenFL 1.7, so I'm closing this issue.