inv | ||
koji-setup | ||
selinux | ||
install-koji-farm.sh | ||
koji.yaml | ||
LICENSE | ||
README.md |
Koji Setup Scripts
The purpose of these scripts it to enable setting up a koji environment quickly with reasonable configurations.
These scripts were originally borrowed from Clear Linux and heavily modified to suit the smeserver (Koozali.org) setup. Thanks to George T Kramer for doing a lot of the prework for these over at Clear Linux.
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)
- postgres db will be installed on hub (it is possible to use an external db server, but the script does not support that - yet)
- Koji web server can exist on the hub or it's own server
- 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:
- accept the ECDSA key fingerprint of the build server
- enter the root password for the build server
On your koji hub server (as root):
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> | scm=<IP or Name of SCM>:/* | debug]
- No parameters will deploy an all-in-one server with the web and builder installed on the hub.
- You can have multiple build=<builder FQDN> parameters.
- You can have multiple scm= parameters which will be added to the allowed SCMS (src.koozali.org:/* is already included)
- 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]
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 (either on the hub or any device with the koji client installed) and will create a .koji directory with cli 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 :)