Skip to content
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 ability to force a reload of a descriptor in the new integrator #1174

Open
prioux opened this issue Nov 18, 2021 · 2 comments · May be fixed by #1365
Open

Add ability to force a reload of a descriptor in the new integrator #1174

prioux opened this issue Nov 18, 2021 · 2 comments · May be fixed by #1365
Assignees
Labels
Boutiques Boutiques integration Enhancement

Comments

@prioux
Copy link
Member

prioux commented Nov 18, 2021

This is just a feature, but given that the new integrator stores descriptors in memory at boot time, maybe having the ability to force a reload of all of them (just replacing their content) would be nice. This would allow the admin to edit a descriptor in the installation, click the reload button and then the new descriptor takes effect. Maybe an admin feature in the interface somewhere.

Notes:

  1. Maybe a new Control message could be sent to a Bourreau do perform the same reload
  2. Descriptors loaded by the integrator have from_file() method that is useful
  3. The admin must realize that eloading won't affect existing ToolConfigs and Tools (e.g. their container config attributes)
@prioux prioux added Enhancement Boutiques Boutiques integration labels Nov 18, 2021
@prioux
Copy link
Member Author

prioux commented Nov 18, 2021

While I was writing this, I realized that we should just reload them all, not have an option to reload any one in particular. There's not big cost anyway.

@prioux
Copy link
Member Author

prioux commented Nov 19, 2021

I've just had a brilliant idea.

Add to BoutiquesSupport::BoutiquesDescriptor a new internal attribute 'mtime_of_file' and add a new method called 'reload_if_file_timestamp_changed()'. Then the ToolConfig descriptor cache will just invoke the method whenever it's asked for a descriptor and update it if it finds the file on the filesystem has a new mtime .

That means automatic descriptor reloading if it changes on disk.

@bryancaron bryancaron changed the title Add ability to force a reload of a descriptor in the new integrator Add ability to force a reload of a descriptor in the s new integrator Mar 23, 2023
@prioux prioux changed the title Add ability to force a reload of a descriptor in the s new integrator Add ability to force a reload of a descriptor in the new integrator Mar 23, 2023
@MontrealSergiy MontrealSergiy self-assigned this Nov 27, 2023
MontrealSergiy added a commit to MontrealSergiy/cbrain that referenced this issue Nov 28, 2023
MontrealSergiy added a commit to MontrealSergiy/cbrain that referenced this issue Dec 6, 2023
MontrealSergiy added a commit to MontrealSergiy/cbrain that referenced this issue Dec 6, 2023
MontrealSergiy added a commit to MontrealSergiy/cbrain that referenced this issue Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Boutiques Boutiques integration Enhancement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants