Changes

From SME Server
Jump to navigationJump to search
99 bytes removed ,  12:34, 27 September 2024
no edit summary
Line 1: Line 1:  
This howto is for using the Koozali.org Koji Build Farm (http://koji.koozali.org/koji).
 
This howto is for using the Koozali.org Koji Build Farm (http://koji.koozali.org/koji).
   −
{{Note box|This is no longer the case (Aug 2024):Warning: The Koji farm is still in development and locked inside the koozali compound, so you will need to have VPN access until we open it up to the world.
+
{{Note box|Koji is now publicly available for read-only, but you are advised to get a login in order that you can fully utilise it.
   −
Koji is now publically available, but you are advised to get a login in order that you can fully utilise it.}}
+
Developers should be following the guide at <>.
 +
This wiki page is for interacting directly with koji.}}
    
Official Koji documentation can be found at: https://docs.pagure.org/koji/
 
Official Koji documentation can be found at: https://docs.pagure.org/koji/
Line 9: Line 10:  
We are slowly migrating smeserver to newer build tools, which includes git for source management and koji for managing the builds.
 
We are slowly migrating smeserver to newer build tools, which includes git for source management and koji for managing the builds.
   −
Here we will try to explain how to setup and use Koji within the development process.
+
Here we will try to explain how to setup and and interact directly with Koji.
   −
Another document worth reading is [[Howto interact with gitea and koji to do an rpm build for SME11|here]]. This document is up to date as of Aug 2024.
+
Please read [[Howto interact with gitea and koji to do an rpm build for SME11|here]] for normal development. This is primarily focussed on i=understanding the koji backend and how to interact with it directly.  
    
== Web Interface ==
 
== Web Interface ==
Line 33: Line 34:     
Install the koji client ('sudo dnf install koji' or equivalent on your flavour of linux)
 
Install the koji client ('sudo dnf install koji' or equivalent on your flavour of linux)
* on fedora do  
+
* on fedora/rocky do
 
   dnf install koji-tool -y
 
   dnf install koji-tool -y
 
* on centos 7 do
 
* on centos 7 do
Line 69: Line 70:  
We have created build targets that align with the standard development practice of building into test, then migrating that build through the different environments
 
We have created build targets that align with the standard development practice of building into test, then migrating that build through the different environments
   −
* smeserver/<pkg>-<tag> -> sme11-test (dist-sme11-os-testing) -> dist-sme11-updates-testing -> dist-sme11-updates
+
* smeserver/<pkg>-<tag> -> sme11-test (dist-sme11-testing) -> dist-sme11-os
* smecontribs/<pkg>-<tag> -> sme11-contribs-test (dist-sme11-contribs-testing) -> dist-sme11-contribs
+
* smecontribs/<pkg>-<tag> -> sme11-contribs (smecontribs11-testing) -> smecontribs11
 
{{Note box|There is a target of sme11-os that will build into dist-sme11-os, but this should ONLY be used for tthe initial load of the smeos repository}}
 
{{Note box|There is a target of sme11-os that will build into dist-sme11-os, but this should ONLY be used for tthe initial load of the smeos repository}}
There is ONLY 1 build tag for sme11 which is used by all targets (dist-sme11-build) as all sme11 builds use the same external repos and settings.
+
There is 1 build tag for each of smeserver and smecontribs to allow for the use of different external repos and settings.
      Line 78: Line 79:     
* smeos (dist-sme11-os)
 
* smeos (dist-sme11-os)
* smetest (dist-sme11-os-test)
+
* smetest (dist-sme11-test)
* smeupdates-test (dist-sme11-updates-testing)
+
* smecontribs-test (smecontribs11-testing)
* smeupdates (dist-sme11-updates)
+
* smecontribs (smecontribs11)
* smecontribs-test (dist-sme11-contribs-testing)
  −
* smecontribs (dist-sme11-contribs)
  −
*smeaddons (dist-sme11-addons)
      
==Advanced commands ==
 
==Advanced commands ==
to add a rpm to the base rpm to install in a mock environment :
+
If adding a new package, it needs to be added to the parent tag for that Stream/Release:<syntaxhighlight lang="bash">
 +
koji add-pkg --owner kojiadmin smecontribs11 smeserver-my-new-contrib
 +
</syntaxhighlight>to add a rpm to the build group to install in a mock environment :
 
   
 
   
 
  koji add-group-pkg dist-sme11-build build perl-Module-Install
 
  koji add-group-pkg dist-sme11-build build perl-Module-Install
Line 99: Line 99:  
   koji add-pkg  --owner jpp dist-sme12-os smeserver-manager-jsquery  
 
   koji add-pkg  --owner jpp dist-sme12-os smeserver-manager-jsquery  
   −
to tag and existing build against a new tag (e.g. copy from testing to updates-testing-)
+
to tag and existing build against a new tag (e.g. copy from testing to os)
     koji tag-build dist-sme11-updates-testing smeserver-updaye-11.0.0-7.el8.sme
+
     koji tag-build dist-sme11-os smeserver-update-11.0.0-7.el8.sme
   −
to populate an external repo for use by dnf
+
to manually populate an external repo for use by dnf (external repos should be automatically generated when a new build is attached to that tag)
     koji dist-repo dist-sme11-testing --allow-missing-signatures
+
     koji dist-repo dist-sme11-testing <gpg key>
    koji dist-repo dist-sme11-updates-testing --allow-missing-signatures
+
     koji dist-repo dist-sme11-os <gpg key>
     koji dist-repo dist-sme11-os --allow-missing-signatures
+
     koji dist-repo smecontribs11-testing <gpg key>
     koji dist-repo dist-sme11-contribs-testing --allow-missing-signatures
+
     koji dist-repo smecontribs11 <gpg key>
     koji dist-repo dist-sme11-contribs --allow-missing-signatures
+
 
+
 
[[Category:Developer]]
+
[[Category:Developer]]
384

edits

Navigation menu