Gerrit requires Java to run. It is recommended to install Java 8 or higher. You can install Java using the following command:
sudo dnf install java-1.8.0-openjdk-devel
Gerrit runs as a Git repository server. Install Git using the following command:
sudo dnf install git
Download the latest Gerrit package from the official website (https://www.gerritcodereview.com/download.html). You can use the following command to download Gerrit:
wget https://gerrit-releases.storage.googleapis.com/gerrit-3.4.4.war
Once the download is complete, move the Gerrit WAR file to /var/gerrit/ directory, and rename it to gerrit.war. You can do this using the following commands:
sudo mkdir -p /var/gerrit/
sudo cp gerrit-3.4.4.war /var/gerrit/gerrit.war
Create a new user called gerrit. You can use the following command to create a new user:
sudo useradd -r -m -d /var/gerrit/ -s /bin/bash gerrit
The -r option tells useradd to create a system account, -m creates a home directory for the user, -d sets the home directory, -s specifies the login shell to be used.
Install NGINX using the following command:
sudo dnf install nginx
Create a new virtual host configuration file for NGINX that will forward requests to Gerrit. You can do this using the following command:
sudo nano /etc/nginx/conf.d/gerrit.conf
Add the following content to this file:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Replace example.com with your domain name. Save and exit the file.
Reload NGINX to apply the changes:
sudo systemctl restart nginx
As the gerrit user, navigate to the Gerrit installation directory:
cd /var/gerrit/
Run the Gerrit setup:
sudo -u gerrit java -jar gerrit.war init
Answer the setup questions as follows:
2 for HTTP authentication and 1 for Single sign-on.example.com as the Canonical hostname.Gerrit user authentication method, select OpenID and enter https://www.google.com/accounts/o8/id as the OpenID URL.site or use an existing one, select Create a new site.Once the setup is complete, start Gerrit using the following command:
sudo -u gerrit java -jar gerrit.war daemon --console-log --show-stack-trace
You can now open a web browser and navigate to http://example.com to access the Gerrit web interface.
Congratulations, you have successfully installed Gerrit on your Fedora server!
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!