smeserver-koji/README.md

74 lines
3.2 KiB
Markdown

# ![smeserver-koji](https://www.koozali.org/images/koozali/Logo/Png/Koozali_logo_2016.png)
## 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 :)