-
Notifications
You must be signed in to change notification settings - Fork 153
docs(rfc): Improve Time & Flow of the core Job Deployment & other areas #152
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
docs(rfc): Improve Time & Flow of the core Job Deployment & other areas #152
Conversation
Pull Request Test Coverage Report for Build 1897022334
💛 - Coveralls |
I see we are trying to cache the upstream job dependency in db at optimus level instead of plugin level(bq2bq does in-memory cache at the moment) but one problem with this approach that I see is upstream dependencies can change without even modifying the job. For example in case |
@kushsharma @sravankorumilli how about Optimus provides the ability to do dependency resolution for all jobs in a project? It can be a separate command, that can be run before the job deployment, on-demand, or can be called in deploy --all. Or we can also make it a flag. The point is there will be 2 abilities, resolve the dependencies for all jobs when needed, and also only the modified ones. |
If it is outside of Optimus then, it is not suggested but as @arinda-arif mentioned we can have a mechanism of refresh all jobs, which computes the dependencies & priorities of all jobs, either it can be automated in the pipeline or it can be used by admins for fixing any errors. For the resources being managed within Optimus, it is fair point to automatically infer the dependencies, so we need to have a relationship b/w resources & jobs, through which we can do the dependency resolution for the jobs for which these views are the sources, it is just that we need to keep the design clean with this change. |
Summary of discussion
|
As discussed, this is the expected behavior of jobs and resources. This behavior is the guideline on what to build and improve. Job Creation / Modification
Job Deletion
Refresh all Jobs at namespace or at project level (Deploy)
Clean Refresh all jobs (Clean Deploy)
Upgrade Jobs at namespace, project (upgrading plugins)
Resource Creation
Refresh all Resources at namespace or at project level.
Clean Refresh all resources
|
|
RFC to improve the time taken to do: