mirror of
https://src.koozali.org/infra/smeserver-koji.git
synced 2024-11-23 10:07:28 +01:00
74 lines
3.2 KiB
Markdown
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 :)
|