Syncing from upstream odoo/runbot (18.0-better-error-merge-xdo)#1027
Closed
bt-admin wants to merge 17 commits intobrain-tec:18.0-better-error-merge-xdofrom
Closed
Syncing from upstream odoo/runbot (18.0-better-error-merge-xdo)#1027bt-admin wants to merge 17 commits intobrain-tec:18.0-better-error-merge-xdofrom
bt-admin wants to merge 17 commits intobrain-tec:18.0-better-error-merge-xdofrom
Conversation
The initial way to configure upgrades was working fine and automatically but does not alway match the reality of what should be supported. Saying, upgrade from the last main version and last intermediate (for 18, from 17.0 and 17.4) we may also want to test from 17.2 because for some reason there are many people in 17.2 taht will need to upgrade in 18.0. But the transition 17.2->17.3 doesn't make sense anymore after a while since people will go in 18 imediatly at some point. This matrix can be generated automatically from the parameters and new versions should appear automatically, but it is possible to tweak the values on demand. [IMP] runbot: limit trigger to same category Since only reference_batch from the same category are stored, it makes senses to limit the complement trigger to the same category. [IMP] runbot: use upgrade matrix The current way to define the transition to use is made both using the version (upgrade from, upgrade too) combined with a selection decision on the config step (Last intermediate, all intermediate, previous major) This doesn't allow to easily define in a major version that we should upgrade from some specific saas version but not to specific saas 17.0 -> 18.0 17.3 -> 18.0 17.4 -> 18.0 but not 17.3->17.4 For now by default using the "last intermediate" and "previous major" we will test 17.0->18.0 17.4->18.0 17.3->17.4 17.0->17.3 17.0->17.4 We an easily disable 'upgrade to' on 17.3 and 17.4 if this is not support by the plaform anymore 17.0->18.0 17.4->18.0 17.0->17.4 The issue there is that the upgrade from 17.3 to 18.0 was partially tested through 17.4, but upgrade from 17.4 is not tested at all anymore. It is also difficult to define coherent version for all upgrades, regarding upgrade stables (pushing in master in upgrade repo) and upgrade to current + templates. The upgrade stable only test major version to reduce load (7.0->18.0) but does not test 17.4->18.0 making it possible to merge a pr that breaks the upgrade tests in stable. This pr proposes to change that using upgrade matrixs, allowing to define precisely the upgrade to test. The upgrades will still be defined automatically when merging a new branch, but can be disabled, reenabled, ..
Prepare the models for #1289 This pr contains teh changes needed for the new upgrade strategy without any other change to the code reducing the risk to break something Some new fiels are added, mainly upgrade_current and upgrade_from_base to replace upgrade_current_source and upgrade_current_target with a more understandable configuration. Some views are adapted to reflect this changes The compute of the fingerprint was modified to inlude upgrade related informations in a more precise way, to make allow_similar_build_quick_result more effective.
Since the commit [^1] deferring the loading of the runbot frontend JS bundle, the stats page broke due to a jQuery call being made before the actual load of the page. This commit properly moves it in the "onload" listener. [^1]: 9940718
This commit fxes all remaining upgrades usage to work with the upgrade matrix and removes the old code.
When a build error has test-tags, a red ribbon is displayed but when the user scrolls the ribbon is not visible anymore. In that case, it happens that an error is archived while having disabling tags. With this commit, test active field is displayed in red with a warning sign in order to bring user attention.
Before this commit, build error's random field is recomputed on error_content_ids change. But flagging an existing error content as random doesn't change it (which could be useful when manually flagging one as such). This commit adapts the dependency accordingly. Also, it allows to manually flag tbe BuildError as random.
Before this commit, and since the update to Odoo 19.0, click/middle-click on FrontendUrl fields in list view opened the record's modal form view in addition to the actual link in a new tab. This commit fixes it by stopping the event's propagation beyond the actual `<a>` tag. Steps to reproduce: - open an error's form view, - in the Error Content list view, click on the first/last seen date - related build link opens in a new tab => the error's form view also opens in modal
Obvisoulsy #1312 was not enough, it was only applied on BuildErrorContent. So it was working when all build error contents had the same version ids or if they appeared in the right order. With this commit, the sorting is applied on the build error computed versions.
- Add breaking pr to the fields to merge - Add a test
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
bt_gitbot