-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: drop TVM for cleaner implementation in isolated environment #25
Conversation
e71f64f
to
fc2ed6b
Compare
e8566bb
to
e803e74
Compare
e803e74
to
1c76a2b
Compare
1c76a2b
to
6da1192
Compare
.github/workflows/build.yml
Outdated
# This command copies all the files and folders | ||
# from the repository STRAIN_PATH to the recently above created TVM PROJECT folder | ||
cp -r $(ls --ignore=$TUTOR_APP_NAME) $TUTOR_APP_NAME/ | ||
pip install tutor[full]==$TUTOR_VERSION |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not a blocker comment, but, taking advantage of the fact we are no longer using tvm, why not make a pip install in the form of git, to allow nightly builds?
Example: pip install git+git@github.com:overhangio/tutor.git@$TUTOR_VERSION
I'm not sure what is the demand for nightly builds, but if we have some, we can use the git version. If not, leave it as it is because it is more explicit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll do some testing to see if we can do the same there. Thanks for the suggestion!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I forgot to say, but I had already applied the suggestion: 9176b11. Thanks again!
env: | ||
REQUIRED_KEYS: TUTOR_VERSION TUTOR_APP_NAME | ||
REQUIRED_KEYS: TUTOR_VERSION |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we no longer require this variable, we should, as future work, remove that variable from the documentation of PICASSO: https://internal.docs.edunext.co/en/latest/internal/Products_and_Services/by_products/picasso/picasso-v2.html?highlight=picasso%20v2#requirements
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would say let's do it as soon as possible so we always keep the documentation updated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have blocker comments, and the workflow works (tested here: https://github.com/eduNEXT/ednx-strains/actions/runs/11135119998).
Extra note: I like that we remove some code by adding the env variables.
Thanks for this ✨
Description
This PR drops the usage of TVM to leverage the fact that we're running on isolated environments (GH hosted runners) and don't need the overhead of installing libraries for this purpose. In the foreseeable future, we might consider returning to using TVM if we adopt building images with a sharing resources approach, as with Jenkins. Still, with the current state of the implementation, the easiest maintainability route is to drop it altogether.
How to test
ednx-strains/.github/build.yml
workflow execution, go to Actions > Build Open edX strain, fill in the necessary configuration, please use the workflow version fromMJG/remove-tvm
. For the strain to build, I suggest using theMJG/remove-tvm
strain branch to avoid overriding the current image on dockerhub.