-
Notifications
You must be signed in to change notification settings - Fork 0
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
Convert ToolDeployment to a django model #1423
base: main
Are you sure you want to change the base?
Conversation
f92b17e
to
7207e77
Compare
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.
Manually tested and seems to work ok.
One issue I ran into was the caching of javascript code which meant no buttons would activate on the tools page so that may be something to potentially be aware of (hard refresh gets round this).
Potential idea for making use of this data is to automatically uninstall tool releases that are marked as retired. This will force users to use the control panel to install the latest release of that tool.
Allows us to track the specific tool release that a user has deployed. This commit includes minimal changes to get the model working, so that every time a tool is deployed from the front end, a database object is created. This does introduce a bug about status of the tool deployment, but this will be fixed later.
Use an is_active field to allow us to track past deployments. This also makes it easier to uninstall an old tool before we install a new one. NB a bug will occur if a user has no active ToolDeployment but tries to switch from a jupyter datascience to all-spark release (or vice versa). To resolve, we have to manually install the users Jupyter release, or deploy the same type of Jupyter to create an "active" ToolDeployment object, and then the user can deploy the other type of Jupyter.
Deletes a lot of code that was used to display the deployed tool, to read information from the tool models where possible. Further refactoring will be needed to add a form to handle tool choices.
Simplify the logic to deploy tools based on the ID. Update ToolDeployment serializer
Loops through all namespaces, and creates a DB record to correspond with the tool that they have deployed.
9092bfa
to
9a31df1
Compare
Allows us to track the specific tool release that
a user has deployed.
This commit includes minimal changes to get the
model working, so that every time a tool is
deployed from the front end, a database object is
created. This does introduce a bug about status of the tool deployment, but this will be fixed later.
📝 Summary
This PR resolves ...
This PR ...
The changes in this PR are needed because ...
Merging this PR will have the following side-effects:
🔍 What should the reviewer concentrate on?
🧑💻 How should the reviewer test these changes?
python manage.py migrate
make build-js
values
field. So instead, I would suggest copying tool releases from prod/dev. If taking from prod, if you want to try accessing the tool you will need to update some of the helm values for the release, such as the auth0 domain and client ID/secret. Let me know if you need a hand with this.📚 Documentation status