This is an example of how to install a fresh Gerrit with verify-status plugin.
java -jar gerrit-stable-2.13.war init --batch --no-auto-start --install-all-plugins -d mysite
*NOTE - This will create an H2 db for gerrit.
Copy verify-status.jar to mysite/plugins folder
CREATE USER 'gerrit2'@'localhost' IDENTIFIED BY 'secret'; create database reviewdb; GRANT ALL ON reviewdb.* TO 'gerrit2'@'localhost'; create database cidata; GRANT ALL ON cidata.* TO 'gerrit2'@'localhost'; FLUSH PRIVILEGES;
Add the following to etc/gerrit.config file
[database] type = mysql database = reviewdb username = gerrit2 password = secret hostname = localhost [plugin "verify-status"] dbType = mysql database = cidata username = gerrit2 password = secret hostname = localhost
NOTE - only do this if you've change reviewdb from H2 to mysql otherwise you may get the following error
Exception in thread "main" com.google.gwtorm.server.OrmException: Cannot initialize schema at com.google.gerrit.server.schema.SchemaUpdater.update(SchemaUpdater.java:104) at com.google.gerrit.pgm.init.BaseInit$SiteRun.upgradeSchema(BaseInit.java:367) at com.google.gerrit.pgm.init.BaseInit.run(BaseInit.java:133) at com.google.gerrit.pgm.util.AbstractProgram.main(AbstractProgram.java:64) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at com.google.gerrit.launcher.GerritLauncher.invokeProgram(GerritLauncher.java:163) at com.google.gerrit.launcher.GerritLauncher.mainImpl(GerritLauncher.java:104) at com.google.gerrit.launcher.GerritLauncher.main(GerritLauncher.java:59) at Main.main(Main.java:25) Caused by: java.io.IOException: Cannot update refs/meta/config in /Users/zaro0508/work-gerrit/gerrit-213/mysite/git/All-Projects.git: LOCK_FAILURE at com.google.gerrit.server.git.VersionedMetaData$1.updateRef(VersionedMetaData.java:436) at com.google.gerrit.server.git.VersionedMetaData$1.createRef(VersionedMetaData.java:335) at com.google.gerrit.server.git.VersionedMetaData.commitToNewRef(VersionedMetaData.java:217) at com.google.gerrit.server.schema.AllProjectsCreator.initAllProjects(AllProjectsCreator.java:180) at com.google.gerrit.server.schema.AllProjectsCreator.create(AllProjectsCreator.java:100) at com.google.gerrit.server.schema.SchemaCreator.create(SchemaCreator.java:86) at com.google.gerrit.server.schema.SchemaUpdater.update(SchemaUpdater.java:102) ... 11 more
The 1st run of init syncs the git repos to H2 DB. Now we want to setup git repos with mysql reviewdb. We are setting up a new reviewdb this time so we need to sync with new git repos. Delete and next step will create new repos.
rm -rf mysite/git/*
Rerun init to setup tables for reviewdb and cidata
java -jar gerrit-stable-2.13.war init --batch --no-auto-start --install-all-plugins -d mysite