Keep repository files and only update changes

Hi there,

As part of our build pipeline we use a tool to build large asset groups. These asset groups use a tool that checks for date/time changes against resulting assets. This tool is a third party tool we do not have control over.

What happens is that whenever a build is started, the source asset files from GIT are updated with the latest date/time and continually get rebuilt.

I need a build directory with a set of files that are only updated on changes and the source files are kept not in a cache, but in a source folder that we build with.

Basically, I need to maintain the local files from the repository across builds… How can I do this if at all ?

Regards,

Hi Peter,

We’re not entirely clear about how your build pipeline works - it may be better to provide details of the types of actions which are in your workflow. The issue does however seem to boil down using the files or artifacts from one build in the next build. 

Each build has a separate workspace to prevent collisions when multiple builds are running concurrently. Also builds may be distributed across multiple agents without access to each other. You could create a UNC share which is accessible by all agents. You could then use the File Copy action of FinalBuilder to copy the files to the share and the end of the build and back to the workspace at the start of the build. Note however that you will still have concurrency issues if the next build starts before the previous build has finished copying the files.
 
We have plans in the future to implement a dependencies feature where builds can be set up to depend on and use the artifacts from builds on another configuration. I’m not sure if this is relevant in your case as it seems that you wish to maintain files across builds in a single configuration. We also have ideas for developing an artifacts repository for storing and retrieving output files with access locking and versioning to prevent concurrency issues. It will however be sometime before we are able to implement these features.