Go to file
Trevor Batley d7c58fbfa1 _ not -
2023-09-15 15:37:11 +10:00
inv Initial load 2023-08-28 14:44:38 +10:00
koji-setup supress duplicate httpd stuff when web on hub 2023-09-12 16:59:13 +10:00
install-koji-farm.sh _ not - 2023-09-15 15:37:11 +10:00
koji.yaml add deploy web to ansible yaml 2023-09-11 17:14:43 +10:00
LICENSE Initial commit 2023-08-28 06:37:57 +02:00
README.md README 2023-09-11 17:09:33 +10:00

smeserver-koji

Koji Setup Scripts

The purpose of these scripts it to enable setting up a koji environment quickly with reasonable configurations.

These scripts have been borrowed from Clear Linux and modified to suit the smeserver (Koozali.org) setup. Thanks to George T Kramer for doing a lot of the prework for these over at ClearLinux.

Assumptions

  • All scripts are run as the root user
  • The root user has a password set
  • These are run on a bare Rocky 8 minimal install
  • Basic configurations (e.g. network, time, etc.) have been applied
  • servers are reachable by their FQDNs (DNS or you've added them into the appropriate /etc/hosts files)
  • Koji builder can exist on the hub or multiple build servers

Installing

The install script will install all required components on the hub, web and build servers.

You will need to fill in some information on the way through.

  • info for your ssl certs (Country, State, City, Org, Org Unit)
  • If you have a separate web server:
    • accept the ECDSA key fingerprint of the web server
    • enter the root password for the web server
  • For each build server:
    • enter the FQDN for the build server, if you haven't entered build=<FQDN> parameter/s
    • accept the ECDSA key fingerprint of the build server
    • enter the root password for the build server

On your koji hub server:

curl https://src.koozali.org/smedev/smeserver-koji/raw/branch/master/install-koji-farm.sh > install-koji-farm.sh
chmod o+x install-koji-farm.sh
./install-koji-farm.sh

There are optional parameters available on the install-koji-farm.sh script

install-koji-farm.sh [web=<web server FQDN> | build=<build server FQDN> | debug]
  • The web server FQDN defaults to the hub FQDN, if not enetered.
  • You can have multiple build= parameters (up to 7 parameters in total). This will bypass the build server prompt loop.
  • If you enter build=<hub FQDN> you will get an all-in-one server with the builder installed on the hub.
  • debug will print each command executed and be very noisy (still noisy without)

The web interface will be available at http://<web FQDN>/koji

Adding additional Build servers

To add additional build servers into your farm, just run the following script on your hub as root

koji-add-builder.sh <FQDN of new build server> [debug]

It should already be there from the install, but if not

curl https://src.koozali.org/smedev/smeserver-koji/raw/branch/master/koji-setup/koji-add-builder.sh > ~/bin/koji-add-builder.sh
chmod o+x ~/bin/koji-add-builder.sh

Adding Users

You can add Users for both the CLI and Web

koji-add-user <User Name> [ permisssion=<permissions> | debug ]

This will add them into the db and generate ssl CLI and browser keys, which will be bundled up in a tgz file at /etc/pki/koji/bundle/koji-<User Name>-bundle.tgz. This bundle should be extracted in their home (~) directory and will create a .koji directory with config and keys.

cd ~
tar -zxf koji-\<User Name\>-bundle.tgz

Other components

The other scripts in the repository are used by the install-koji-farm.sh and koji-add-builder.sh scripts or I'm still experimenting with them :)