Okay, some answers I got on IRC:

* Koji doesn't have scratch builds, only scratch tasks. Since CG only imports builds and doesn't create tasks, it circumvents the scratch feature in Koji
* Koji will allow us to store a flag in the extra field of the imported build metadata, which would allow us to mark a build as "scratch" without using that feature in Koji itself
* An external system could look for this scratch flag and untag imported builds (after some grace period)
* Normal Koji GC would clean up untagged, imported builds normally (again, after some period elapses)

I just wanted to get that down in this thread to avoid confusion.

Thanks,

-john


On Wed, Nov 29, 2017 at 7:24 AM, John Casey <jcasey@redhat.com> wrote:
Hi,

I'm wondering if it's possible to import builds (via content generator) as scratch builds, so they get cleaned up automatically at some point in the future?

We're working on a system that will be doing continuous development / continuous delivery, and spans three different build systems. One is Koji, but the other two will use Koji's content generator interface for passing build data between the different systems.

We're trying to create a system where each PR triggers a whole workflow of builds and test runs. However, in these cases we KNOW these are not shippable builds, so we want to make them ephemeral in all of the build systems. Obviously, cleanup tasks become a concern here, since we will probably be doing many of these builds.

I think we could probably untag builds in Koji from an external system in order to trigger GC of these temporary builds, but it seems like it would be simpler to use a native cleanup routine in Koji.

Is this feasible?

Thanks,

-john