Promoting old revisions uses the latest revision in the dependent build
I'm trying to set up a build with a snapshot dependency that would be used to automatically merge into a specific branch when promoted from a snapshot dependency build. However, when I select to promote a build for an older commit, that commit is not checked out in the dependent build. Instead the latest commit on the promoted branch is taken, even if the changes tab for the dependent build from the promotion correctly shows the old commit. Snapshot dependency is of course configured to enforce revisions synchronization.
In the build log first I see something like this:
Compute revision for 'MyGit'
[Compute revision for 'MyGit'] Upper limit revision: <LATEST_COMMIT_ON_BRANCH>
[Compute revision for 'MyGit'] The first revision that was detected in the branch <PROMOTION_BRANCH>: <LATEST_COMMIT_ON_BRANCH>
[Compute revision for 'MyGit'] No modification from VCS root is attached to build configuration and checkout rules include all changes, use upper limit revision
[Compute revision for 'MyGit'] Computed revision: <LATEST_COMMIT_ON_BRANCH>
Compute revision for 'MyGit' in <SNAPSHOT_DEPENDENCY>
[Compute revision for 'MyGit' in <SNAPSHOT_DEPENDENCY>] Upper limit revision: <LATEST_COMMIT_ON_BRANCH>
[Compute revision for 'MyGit' in <SNAPSHOT_DEPENDENCY>] The first revision that was detected in the branch <PROMOTION_BRANCH>: <FIRST_COMMIT_ON_BRANCH>
[Compute revision for 'MyGit' in <SNAPSHOT_DEPENDENCY>] Latest commit attached to build configuration (with id <= <ID>): <PROMOTED_OLD_COMMIT>
[Compute revision for 'MyGit' in <SNAPSHOT_DEPENDENCY>] Computed revision: <PROMOTED_OLD_COMMIT>
However later during checkout of sources I see:
[Updating sources] VCS Root: <MyGit>
[VCS Root: MyGit] revision: <LATEST_COMMIT_ON_BRANCH>
That is, the latest commit is still checked out during the dependent build. What is going wrong here? Am I overlooking something?
P.S. using TC 2020.2.4
Please sign in to leave a comment.