Merge branch 'stable-2.16' into stable-3.0 * stable-2.16: setup_local_env: Fix README markdown lint warnings dockerised_local_env: Formalize slashes for git-ignored folders Sort .gitignore files using LC_COLLATE=C like core dockerised_local_env: Fix ssh private key permission dockerised_local_env: Make gerrit-1 ssh host known dockerised_local_env: Add replication.jar as a lib dockerised_local_env: Add wget to README prerequisites Change-Id: Icd86417b72770e9f303630a1b215b4d7a51c2ba7
diff --git a/.gitignore b/.gitignore index 6b0bf05..4d4a78b 100644 --- a/.gitignore +++ b/.gitignore
@@ -1,13 +1,17 @@ +# LC_COLLATE=C sort + .DS_Store +/.apt_generated/ /.classpath +/.primary_build_tool /.project /.settings/ -/.primary_build_tool + /bazel-bin /bazel-genfiles +/bazel-multi-site /bazel-out /bazel-reviewers /bazel-testlogs -/bazel-multi-site + /eclipse-out/ -/.apt_generated/
diff --git a/dockerised_local_env/.gitignore b/dockerised_local_env/.gitignore index c88a11c..36a108e 100644 --- a/dockerised_local_env/.gitignore +++ b/dockerised_local_env/.gitignore
@@ -1,25 +1,28 @@ -gerrit-1/plugins -gerrit-1/db -gerrit-1/git -gerrit-1/logs -gerrit-1/index -gerrit-1/data -gerrit-1/bin -gerrit-1/etc -gerrit-1/tmp -gerrit-1/lib -gerrit-1/ssh/known_hosts -gerrit-2/plugins -gerrit-2/db -gerrit-2/git -gerrit-2/logs -gerrit-2/index -gerrit-2/data -gerrit-2/bin -gerrit-2/etc -gerrit-2/tmp -gerrit-2/lib -gerrit-2/ssh/known_hosts -gerrit-2/bin -syslog-sidecar/logs -syslog-sidecar/socket +# LC_COLLATE=C sort + +/gerrit-1/bin/ +/gerrit-1/data/ +/gerrit-1/db/ +/gerrit-1/etc/ +/gerrit-1/git/ +/gerrit-1/index/ +/gerrit-1/lib/ +/gerrit-1/logs/ +/gerrit-1/plugins/ +/gerrit-1/ssh/known_hosts +/gerrit-1/tmp/ + +/gerrit-2/bin/ +/gerrit-2/data/ +/gerrit-2/db/ +/gerrit-2/etc/ +/gerrit-2/git/ +/gerrit-2/index/ +/gerrit-2/lib/ +/gerrit-2/logs/ +/gerrit-2/plugins/ +/gerrit-2/ssh/known_hosts +/gerrit-2/tmp/ + +/syslog-sidecar/logs/ +/syslog-sidecar/socket/
diff --git a/dockerised_local_env/Makefile b/dockerised_local_env/Makefile index 0b6b7e3..f02695b 100644 --- a/dockerised_local_env/Makefile +++ b/dockerised_local_env/Makefile
@@ -35,7 +35,8 @@ plugin_multi_site: prepare $(WGET) $(CI_URL)/plugin-multi-site-bazel-stable-2.16/lastSuccessfulBuild/artifact/bazel-bin/plugins/multi-site/multi-site.jar -P $(GERRIT_1_LIB_DIRECTORY) - cp $(GERRIT_1_LIB_DIRECTORY)/multi-site.jar $(GERRIT_2_LIB_DIRECTORY)/multi-site.jar + cp $(GERRIT_1_PLUGINS_DIRECTORY)/replication.jar $(GERRIT_1_LIB_DIRECTORY) + cp $(GERRIT_1_LIB_DIRECTORY)/*.jar $(GERRIT_2_LIB_DIRECTORY) plugin_healthcheck: prepare $(WGET) $(CI_URL)/plugin-healthcheck-bazel-stable-2.16/lastSuccessfulBuild/artifact/bazel-bin/plugins/healthcheck/healthcheck.jar -P $(GERRIT_1_PLUGINS_DIRECTORY)
diff --git a/dockerised_local_env/README.md b/dockerised_local_env/README.md index 099be72..8c2bf41 100644 --- a/dockerised_local_env/README.md +++ b/dockerised_local_env/README.md
@@ -2,13 +2,19 @@ ## Prerequisites - * envsubst: +* envsubst: ```bash brew install gettext brew link --force gettext ``` +* wget: + +```bash +brew install wget +``` + ## Instructions The docker compose provided in this directory is meant to orchestrate the spin up
diff --git a/dockerised_local_env/gerrit-2/docker-entrypoint.sh b/dockerised_local_env/gerrit-2/docker-entrypoint.sh index 532377c..06f928f 100755 --- a/dockerised_local_env/gerrit-2/docker-entrypoint.sh +++ b/dockerised_local_env/gerrit-2/docker-entrypoint.sh
@@ -11,7 +11,11 @@ echo "Waiting for gerrit1 server to become available." sleep 120 + + chmod go-r /var/gerrit/.ssh/id_rsa + ssh-keyscan -t rsa -p 29418 gerrit-1 > /var/gerrit/.ssh/known_hosts ssh -p 29418 admin@gerrit-1 replication start + echo "Waiting for replication to complete." sleep 30 fi
diff --git a/setup_local_env/README.md b/setup_local_env/README.md index 2df0c2b..441f98d 100644 --- a/setup_local_env/README.md +++ b/setup_local_env/README.md
@@ -2,27 +2,35 @@ This script configures a full environment to simulate a Gerrit Multi-Site setup. The environment is composed by: - - 2 gerrit instances deployed by default in /tmp - - 1 kafka node and 1 zookeeper node - - 1 HA-PROXY + +- 2 gerrit instances deployed by default in /tmp +- 1 kafka node and 1 zookeeper node +- 1 HA-PROXY ## Requirements - - java - - docker and docker-compose - - wget - - envsubst - - haproxy + +- java +- docker and docker-compose +- wget +- envsubst +- haproxy ## Examples + Simplest setup with all default values and cleanup previous deployment + ```bash sh setup_local_env/setup.sh --release-war-file /path/to/release.war --multisite-plugin-file /path/to/multi-site.jar ``` + Cleanup the previous deployments + ```bash sh setup_local_env/setup.sh --just-cleanup-env true ``` + Help + ```bash Usage: sh setup.sh [--option ] @@ -52,6 +60,7 @@ ``` ## Limitations - - Assumes the ssh replication is done always on port 22 on both instances - - When cloning projects via ssh, public keys entries are added to `known_hosts` - - Clean up the old entries when doing a new deploymet, otherwise just use HTTP \ No newline at end of file + +- Assumes the ssh replication is done always on port 22 on both instances +- When cloning projects via ssh, public keys entries are added to `known_hosts` + - Clean up the old entries when doing a new deployment, otherwise just use HTTP