-
Notifications
You must be signed in to change notification settings - Fork 59
feat!: Add editable Farm and Queue fields #948
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
base: mainline
Are you sure you want to change the base?
feat!: Add editable Farm and Queue fields #948
Conversation
- Replace read-only DeadlineFarmDisplay and DeadlineQueueDisplay with editable DeadlineFarmListComboBox and DeadlineQueueListComboBox - Add DeadlineStorageProfileNameListComboBox that shows only when queue has storage profiles available - Config updates immediately on selection change - Remove unused display classes and imports - Add unit tests for new combo box functionality Signed-off-by: Louise Fox <[email protected]>
Previously, queue parameters would only refresh when the queue ID changed. This fix ensures queue environments are also refreshed when the farm ID changes, since queue environments are specific to a farm+queue combination. Signed-off-by: Louise Fox <[email protected]>
The storage profile selector was not showing in the Submit Dialog even when profiles were available. Two issues were fixed: 1. _update_storage_profile_visibility() only checked itemData(0), but <none selected> sorts alphabetically first and has empty string data, so it always returned False. Now iterates through all items to find any with real profile data. 2. Model signals (rowsInserted, etc.) weren't firing because the base class uses block_signals when populating the combo box. Added a connection to the _list_update signal which fires after async refresh. Signed-off-by: Louise Fox <[email protected]>
|
| """ | ||
| Refreshes the controls for UI items that depend on the AWS Deadline Cloud API | ||
| for their values. | ||
| self.storage_profile_box_label = QLabel(tr("Default storage profile")) |
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.
nit: in this case, this is just the storage profile that we're using, so we don't need to specify it as the "Default storage profile", just "Storage profile"
| self.deadline_authentication_status.api_availability_changed.connect( | ||
| self.refresh_deadline_settings | ||
| ) | ||
| self.deadline_authentication_status.deadline_config_changed.connect( |
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.
Overall this looks good to me and is working! Just one small comment to address, otherwise it's good to go!



What was the problem/requirement? (What/Why)
As a new user, it is difficult to know I have to go to the settings to select my Farm and queue.
What was the solution? (How)
This change makes the farm and queue selectable on the main GUI.
What is the impact of this change?
Easier for new users to setup a job
How was this change tested?
Manually and with unit tests.
See DEVELOPMENT.md for information on running tests.
downloadorasset_syncmodules? If so, then it is highly recommended nothat you ensure that the docker-based unit tests pass.
Was this change documented?
code was commented but no documentation was changed
Does this PR introduce new dependencies?
No
This library is designed to be integrated into third-party applications that have bespoke and customized deployment environments. Adding dependencies will increase the chance of library version conflicts and incompatabilities. Please evaluate the addition of new dependencies. See the Dependencies section of DEVELOPMENT.md for more details.
Is this a breaking change?
No
A breaking change is one that modifies a public contract in a way that is not backwards compatible. See the
Public Contracts section
of the DEVELOPMENT.md for more information on the public contracts.
If so, then please describe the changes that users of this package must make to update their scripts, or Python applications.
Does this change impact security?
No
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.