-
Notifications
You must be signed in to change notification settings - Fork 15
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
Add job list page #657
Add job list page #657
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #657 +/- ##
==========================================
- Coverage 80.73% 75.47% -5.26%
==========================================
Files 49 60 +11
Lines 3415 4404 +989
==========================================
+ Hits 2757 3324 +567
- Misses 658 1080 +422
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
@superstar54 Nice, I will test it and let you know, I was wondering. If an user has a WorkChain , maybe lets say a bands , but the structure as an input is coming from another WorkChain, and by deleting the first node it deletes automatically all the linked nodes. Is this avoided? |
Good question. I will look into it and provide more information to the user when deleting nodes. |
@superstar54 I really like the job list, is easy to search through jobs. I could be nice if there is a choice to add some filters like, filter by state : Finished[0] , or properties. I guess in this page the search app from edan could be useful. |
@superstar54 I would suggest you add a section explaning that by deleting a node (QeWorkChain) all the associated and link nodes will be eliminated , as well as other calculations that might be linked with this node. |
delete.ipynb
Outdated
" print(f'Node {pk} deleted.')\n", | ||
"\n", | ||
"# Ask for confirmation\n", | ||
"if input(f'Do you really want to delete node {pk}? [y/N] ').strip().lower() == 'y':\n", |
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.
Also It might be a good idea to display the number nodes associated, so the person know what nodes or workchains are being deleted
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.
Yes, I display the number of nodes to be deleted.
Thanks, I added basic search filters. We can use @edan-bainglass 's query builder when it's ready in the future. |
from @cpignedoli and @giovannipizzi
Add extras for the properties |
Not delete a job, but hide it. |
Hi @AndresOrtegaGuerrero , I made the changes as you suggested. Here is the screenshot of the page when user deleting a node. Could you please have another look? |
delete.ipynb
Outdated
"source": [ | ||
"# AiiDAlab QauntumESPRESSO App\n", | ||
"\n", | ||
"<font color=\"red\"><b>Caution!</b></font> Deleting this job will also remove <b>all associated nodes</b>, including any related calculations and their respective results. This action is <b>irreversible</b>.\n" |
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.
<font color="red"><b>Caution!</b></font> Deleting this job will also remove <b>all associated nodes</b>, including any workflows that share a common input structure, as well as various calculations and their respective results. <b>This action is irreversible.</b>
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.
Hi Andres, thanks for the comment.
including any workflows that share a common input structure
It will not delete the workflows that share the input structure. It only deletes its descendants.
- If QEApp jobs A and B use the same input structure, if A is deleted, B will not.
- If QEApp job A has an output structure and job B uses it as input, then if A is deleted, B will also be deleted. I added a check here; in this case, the user can not delete job A.
Hey Xing , it looks good to me , just check the few typos. I was wondering something, is it possible to check if the selected node to deete has other QeAppWorkChain associated ? and display this ? if not we can leave it for a future PR |
Hi @AndresOrtegaGuerrero , thanks for the review and suggestion. I have implemented the changes as you suggested.
Yes, it's possible. I have added a check to see if there is a QEApp job using the outputs of the nodes that need to be deleted. If there is, the deletion will be blocked. Only after the user deletes the related QEApp job can the root one be deleted. |
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.
LGTM!
To help users easily search and manage their jobs, this PR adds a new job list page. This is the first step to fix #515 .
Home page
On the home page, I added a new Utils section on the right side of the logo. Currently, there is only the
job list
item, but we can add more items in the future, e.g., 'plugin list' in #646 .Job list page
Demo
qeapp-joblist.mp4
Future improvement
After this PR, open issues on