#6849 [SOP] Add new content generator SOP
Merged 6 years ago by mohanboddu. Opened 6 years ago by sochotni.
sochotni/releng content-generator-sop  into  master

[SOP] Add new content generator SOP
Stanislav Ochotnicky • 6 years ago  
file modified
+1
@@ -42,6 +42,7 @@ 

      :maxdepth: 2

  

      sop_adding_build_targets

+     sop_adding_content_generator

      sop_adding_new_release_engineer

      sop_adding_packages_compose_artifact

      sop_adding_side_build_targets

@@ -0,0 +1,66 @@ 

+ .. SPDX-License-Identifier:    CC-BY-SA-3.0

+ 

+ =================================

+ Adding new koji content generator

+ =================================

+ 

+ Description

+ ===========

+ Koji added support for content generators some time ago. Basic premise of

+ content generators is that it lets us create build systems for new types of

+ content without affecting or changing core Koji code and in some way simplify

+ integration with rest of the release toolchain. More information about content

+ generators, background, requirements and more can be found in Koji `content

+ generator documentation`_

+ 

+ For content generator to be able to create/import builds into Koji following

+ prerequisites have to be met:

+ 

+ * Koji has to recognize the content generator type

+ * User doing the content generator import has to have permissions for this

+   action

+ * Any new content types have to be defined in Koji

+ 

+ Questions to ask

+ ================

+ There are some questions that should be answered before the content generator is

+ enabled/added to Koji

+ 

+ * Where is the content generator service running, what is its support status

+   etc?

+ * Is new type of content being added or is the content generator providing

+   different way to build content Koji already knows about?

+ * What is the expected size of content that will be imported into Koji?

+ * Does the content generator follow each of the requirements for writing it from

+   Koji documentation referenced above?

+ 

+ 

+ Adding a new content generator into koji

+ ========================================

+ 

+ First we create the content generator and give a user permission to do imports

+ for it:

+ 

+ :: 

+     

+     koji grant-cg-access <username> <content_generator_name> --new

+ 

+ In many cases the content generator will be adding content with new content

+ type. This can be achieved simply by running:

+ 

+ ::

+ 

+     koji call addBType <content type>

+ 

+ 

+ Explanation

+ -----------

+ * username - is a name of user which will be doing the imports. In most cases

+   this will be a service-level account

+ * content generator name - this name has to be provided by the content generator

+   development team

+ * --new - this switch ensures we create the content generator if it doesn't

+   exist

+ 

+ 

+ .. _content generator documentation: https://docs.pagure.org/koji/content_generators/

This adds initial SOP for enabling new koji content generator. It references Koji requirements for writing the content generator itself. Some examples of the rules:
Binaries (or other compiled content) from Upstream May Not become included in output
Avoid Using the Host’s Software
* Source of build environment content

And more

This might help move the https://pagure.io/releng/issue/6799 along

@sochotni we require all commits be signed off on

I would drop the new from "new build systems" and make the line read
"content generators is that it lets us create build systems for new types of"

overall it looks good. outside of needing to be signed off and the one change

rebased

6 years ago

Added the signoff & replaced "new build systems" with just "build systems"

Pull-Request has been merged by mohanboddu

6 years ago