question on dependency artificat clean up option

In the clean-up policy for a project there is an option

"Check the Prevent dependency artifacts cleanup option to keep artifacts of the build, if by the moment clean up starts there's at least one build depending on these artifacts."

Does this mean a build pending that relies on the artifact, or just any project at all?

We have a release build that generates large setup files.  We want those setup files to be available for the last 2-3 builds and that's it.  But there are other projects that depend on the artifact from the release build.. but these run right after the release build and always use the last successful build.

So if this option is left unchecked.. will my large release artifacts based on the 'clean artifiacts' policy successfully?

Comment actions Permalink


  Assume, ProjectA uses artifacts of ProjectB.
  If you enable option "Prevent dependency artifacts cleanup" for Project B, than all builds with artifacts from Project B used by builds from Project A, will be kept.

  As long as builds from ProjectA are deleted by cleanup, corresponding builds from Project B without references to its artifacts will be deleted as well (if they are subject for remove according to other cleanup rules).

  Hope this helps,

Comment actions Permalink

I guess my question is... define 'used by Project A' means in 'than all builds with artifacts from Project B used by builds from Project A, will be kept'

Project A's builds can be in various states

- hasn't executed yet, and will use the artificats from B
- has executed, and we have artificacts from Project A stored, with history, and stats
- has executed, but we've cleaned up artificats, but not history, stats, etc

That's what I'm trying to clarify... because we would like to keep history and status... but not keep the huge artifacts lying around.  So I'm not sure how aggressive I must be on A, to ensure artifacts from B are deleted.


Please sign in to leave a comment.