smoketest manual rebasing during cache-hit can cause merge conflicts and build failures

Description

On a cache hit, the smoketest action should:
1) retrieves the base branch PR sources (at the time cache was built)
2) apply a diff patch, based on that original base SHA and the PR commit(s).
3) touches source to timestamp built - to ensure only next changes trigger re-makes.
4) switch/checkout current PR sha, which means only source differences are touched.

However, step 2) leaves the applied changes as working source differences, then 4) attempts a checkout merge.
Step 4) could cause merge conflicts. The build proceeds and fails.

It shouldn't be trying to merge, but fully switch in step 4).
One way is via git checkout --force, however that causes more than just the differences to be touched and therefore a lot more than is necessary will be rebuilt.

This can be avoided by committing the apply merge-patch, before checking out to the PR sha without force.

Conclusion

None

Activity

Show:
Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Components

Assignee

Reporter

Priority

Fix versions

Created April 13, 2021 at 2:41 PM
Updated April 16, 2021 at 1:06 PM
Resolved April 14, 2021 at 11:27 AM

Flag notifications