Cómo instalar Gerrit2 en CentOS 7. Gerrit es una aplicación de revisión de código basada en web que utiliza el sistema de control de versiones Git. Gerrit facilita la revisión del código al generar los cambios de código en una vista previa de lado a lado, lo que permite comentarios en línea que un revisor puede agregar. Gerrit permite que cualquier usuario autorizado envíe cambios al repositorio maestro de Git, lo que simplifica el proceso cuando el mantenedor del proyecto debe fusionar manualmente un cambio aprobado.
¿Requisitos del sistema?
- Un alojamiento VPS Linux
- JAVA JDK superior a 1.7
- Servidor de base de datos
- Servidor web
- GIT
- SO CentOS 7
1. SISTEMA DE ACTUALIZACIÓN
Lo primero que debe hacer es SSH
a su servidor, inicie una screen
sesión y asegúrese de que su CentOS 7 VPS esté completamente actualizado ejecutando:
## screen -U -S gerrit-screen ## yum update
instalar git y vim
## yum install git vim
2. INSTALAR JAVA
A continuación, se requiere JAVA para la instalación de Gerrit, así que descargue la última versión de JAVA desde aquí. Al momento de escribir este artículo, la última versión de JAVA es 8u25 y se puede descargar e instalar usando los siguientes comandos:
para sistemas de 64 bits:
## wget --no-cookies \ --no-check-certificate \ --header "Cookie: oraclelicense=accept-securebackup-cookie" \ "http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-linux-x64.rpm" \ -O /opt/jdk-8-linux-x64.rpm
para sistemas de 32 bits:
## wget --no-cookies \ --no-check-certificate \ --header "Cookie: oraclelicense=accept-securebackup-cookie" \ "http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-linux-i586.rpm" \ -O /opt/jdk-8-linux-i586.rpm
una vez que se haya descargado el paquete JAVA, instálelo usando yum
de la siguiente manera:
para sistemas de 32 bits use:
## yum install /opt/jdk-8-linux-i586.rpm
para sistemas de 64 bits use:
## yum install /opt/jdk-8-linux-x64.rpm
configurar el paquete JAVA usando alternatives
como en:
## JDK_DIRS=($(ls -d /usr/java/jdk*)) ## JDK_VER=${JDK_DIRS[@]:(-1)} ## alternatives --install /usr/bin/java java /usr/java/"${JDK_VER##*/}"/jre/bin/java 20000 ## alternatives --install /usr/bin/jar jar /usr/java/"${JDK_VER##*/}"/bin/jar 20000 ## alternatives --install /usr/bin/javac javac /usr/java/"${JDK_VER##*/}"/bin/javac 20000 ## alternatives --install /usr/bin/javaws javaws /usr/java/"${JDK_VER##*/}"/jre/bin/javaws 20000 ## alternatives --set java /usr/java/"${JDK_VER##*/}"/jre/bin/java ## alternatives --set javaws /usr/java/"${JDK_VER##*/}"/jre/bin/javaws ## alternatives --set javac /usr/java/"${JDK_VER##*/}"/bin/javac ## alternatives --set jar /usr/java/"${JDK_VER##*/}"/bin/jar
compruebe la versión de JAVA que se ejecuta en su sistema:
## java -version
3. INSTALAR MARIADB (MYSQL)
Instale MariaDB, el servidor de bases de datos predeterminado en CentOS 7, que es un reemplazo directo para MySQL usando yum
:
## yum install mariadb mariadb-server mysql
Una vez instalado, edite su archivo de configuración del servidor en /etc/my.cnf.d/server.cnf
y agrega lo siguiente:
## vim /etc/my.cnf.d/server.cnf [mysqld] #log-bin=mysql-bin #binlog_format=mixed bind-address = 127.0.0.1
Inicie y agregue MariaDB al inicio de su sistema usando systemctl
:
## systemctl restart mariadb ## systemctl status mariadb ## systemctl enable mariadb
Opcional pero recomendado, ejecute mysql_secure_installation
para finalizar la configuración de MariaDB:
## mysql_secure_installation Enter current password for root (enter for none): ENTER Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
4. INSTALAR GERRIT
Crear una base de datos
Debe crear un usuario y una base de datos y otorgar privilegios sobre la base de datos al usuario recién creado. Puede lograr esto usando los siguientes comandos:
## mysql -u root -p MariaDB> create database gerritdb; MariaDB> grant all on gerritdb.* to gerrit@localhost identified by 'secret';
Inicializar el sitio
Gerrit almacena los archivos de configuración, las claves SSH del servidor y los repositorios Git administrados en un directorio local. Se recomienda ejecutar Gerrit Code Review como una cuenta de usuario separada en el sistema, así que primero creemos un nuevo usuario e iniciemos sesión con el usuario recién creado:
## useradd -m gerrit2 ## su - gerrit2
Descargar Gerrit
Puedes descargar gerrit usando el siguiente comando:
## wget https://gerrit-releases.storage.googleapis.com/gerrit-2.9.1.war -O /home/gerrit2/gerrit.war
una vez que se haya descargado el archivo de guerra de gerrit2 y haya iniciado sesión como gerrit2
, ejecute el siguiente comando para inicializar un nuevo directorio del sitio:
## java -jar gerrit.war init -d /home/gerrit2/review_site
complete las preguntas formuladas por el asistente, por ejemplo:
Location of Git repositories [git]: Database server type [mysql]: Server hostname [localhost]: Server port [(mysql default)]: Database name [gerritdb]: Database username [gerrit]: Change gerrit's password [y/N]? n Type [LUCENE/?]: Authentication method [HTTP/?]: Get username from custom HTTP header [y/N]? SSO logout URL : Install Verified label [y/N]? SMTP server hostname [localhost]: SMTP server port [(default)]: SMTP encryption [NONE/?]: SMTP username : Run as [gerrit2]: Java runtime [/usr/java/jdk1.8.0_25/jre]: Upgrade /home/gerrit2/review_site/bin/gerrit.war [Y/n]? Copying gerrit.war to /home/gerrit2/review_site/bin/gerrit.war Listen on address [*]: Listen on port [29418]: Behind reverse proxy [Y/n]? Proxy uses SSL (https://) [y/N]? Subdirectory on proxy server [/gerrit/]: Listen on address [*]: Listen on port [8081]: Canonical URL [http://vs377.rosehosting.com/gerrit/]: Install plugin commit-message-length-validator version v2.9.1 [y/N]? Install plugin download-commands version v2.9.1 [y/N]? Install plugin replication version v2.9.1 [y/N]? Install plugin reviewnotes version v2.9.1 [y/N]? Install plugin singleusergroup version v2.9.1 [y/N]? Initialized /home/gerrit2/review_site
a continuación, ejecute el siguiente comando para reconstruir el índice de gerrit:
## java -jar gerrit.war reindex -d /home/gerrit2/review_site
e inicie el gerrit usando el siguiente comando:
## /home/gerrit2/review_site/bin/gerrit.sh start
salga a root ejecutando exit
comando.
5. INSTALAR APACHE
Instale Apache usando yum
:
## yum install httpd httpd-tools openssl mod_ssl
Agregue lo siguiente a /etc/httpd/conf.d/options.conf
## vim /etc/httpd/conf.d/options.conf TraceEnable off ## Disable Signature ServerSignature Off ## Disable Banner ServerTokens Prod
## vim /etc/httpd/conf.d/vhosts.conf # Load my vhosts IncludeOptional vhosts.d/*.conf
## mkdir /etc/httpd/vhosts.d
Reinicie Apache y agréguelo para que se inicie automáticamente en el inicio de su sistema usando:
## systemctl restart httpd ## systemctl status httpd ## systemctl enable httpd
6. PROXY DE APACHE A GERRIT
## vim /etc/httpd/vhosts.d/gerrit.conf <VirtualHost your_ip_address:80> ServerName your_hostname ProxyRequests Off ProxyVia Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> <Location /gerrit/login/> AuthType Basic AuthName "Gerrit Code Review" Require valid-user AuthUserFile '/etc/httpd/gerrit.htpasswd' </Location> AllowEncodedSlashes On ProxyPass /gerrit/ http://your_ip_address:8081/gerrit/ </VirtualHost>
crear usuario usando htpasswd
## htpasswd -c /etc/httpd/gerrit.htpasswd admin New password: Re-type new password: Adding password for user admin
reiniciar apache usando
## systemctl restart httpd
a continuación, vaya a http://your_hostname/gerrit/ y debería cargar la aplicación de revisión de Gerrit en su navegador.
¿Qué sigue?
- Configuración del proyecto
- Flujo de trabajo de Gerrit
Por supuesto, no tiene que instalar Gerrit2 en CentOS 7, si utiliza uno de nuestros servicios de alojamiento VPS de CentOS, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que instalen Gerrit2 en CentOS 7 por usted. Están disponibles las 24 horas del día, los 7 días de la semana y atenderán su solicitud de inmediato.
PD. Si le gustó esta publicación sobre cómo instalar Gerrit2 en CentOS 7, compártala con sus amigos en las redes sociales usando los botones a la izquierda o simplemente deje una respuesta a continuación. Gracias.