AcademySoftwareFoundation / AcademySoftwareFoundation/rez

Building file should be more atomic

Open
#445 7 comments 0 reactions 0 assignees View on GitHub
enhancement rez-build
Dominant language
Python
Stars
1.1k
Forks
369
Avg merge
12d 3h
Merged PRs (30d)
5

Description

Hi,

#### Description
`.buildingX.X.X` file should be more atomic in determining a package's viability for resolution. We feel that the existence of this file should prevent Rez from resolving a package, even if the `package.py` exists. The reason for this is that if Rez didn't get to the step where it removes this file, then _something_ failed - and if _something_ failed, we probably don't want that package to go into production.

#### Steps to Reproduce
1. Build a package.
2. Leave the `package.py` file in place.
3. Create an empty `.buildingX.X.X` file in the package family folder with the X.X.X representing the version.
4. Resolve an environment with this package and version. The resolution points to the built package.

#### Desired Result
If the `.buildingX.X.X` file is found, no additional steps should be done to attempt to resolve the package.

#### Additional
We're thinking about patching this in our local fork, and if you decide that you agree with this change, I'd be happy to push the changes upstream, but I'm sure we'll need more discussion about that.

So with this [recent discussion happening on the Rez Google Group](https://groups.google.com/forum/#!topic/rez-config/Mnpa0wDgra4), we have begun re-evaluating our package syncing solution between our facilities, as we believed the existence of the file would indicate what was described above. Now we are looking at either going with a solution similar to Alexandra's where our sync agent copies the `package.py` as a separate job after the package has been synced, or we're looking at patching our local fork.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.