| #!/bin/bash -ex |
| : ${JEEPYB_WORKSPACE:=$(pwd)/.workspace} |
| |
| PROJECTS_INI=${JEEPYB_WORKSPACE}/projects.ini |
| PROJECTS_YAML=$(pwd)/projects.yaml |
| |
| export PROJECTS_INI PROJECTS_YAML |
| |
| mkdir -p "${JEEPYB_WORKSPACE}" |
| |
| cp "$(pwd)/conf/projects.ini.template" "${PROJECTS_INI}" |
| |
| [ -n "${JEEPYB_GERRIT_HOST}" ] \ |
| && sed -i "s|^gerrit-host.*|gerrit-host=${JEEPYB_GERRIT_HOST}|" "${PROJECTS_INI}" |
| [ -n "${JEEPYB_USER}" ] \ |
| && sed -i "s|^gerrit-user.*|gerrit-user=${JEEPYB_USER}|" "${PROJECTS_INI}" |
| [ -n "${JEEPYB_COMMITTER}" ] \ |
| && sed -i "s|^gerrit-committer.*|gerrit-committer=${JEEPYB_COMMITTER}|" "${PROJECTS_INI}" |
| [ -n "${JEEPYB_SSH_KEY}" ] \ |
| && echo "gerrit-key=${JEEPYB_SSH_KEY}" >> "${PROJECTS_INI}" |
| |
| COMMITTER=$(git config --file "${PROJECTS_INI}" projects.gerrit-committer) |
| GIT_COMMITTER_NAME=$(echo "${COMMITTER}" | awk -F '[<>]' '{print $1}') |
| GIT_COMMITTER_NAME=${GIT_COMMITTER_NAME% *} |
| GIT_COMMITTER_EMAIL=$(echo "${COMMITTER}" | awk -F '[<>]' '{print $2}') |
| export GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL |
| |
| sed -i "s|^gerrit-system-user.*|gerrit-system-user=$(id -u)|" "${PROJECTS_INI}" |
| sed -i "s|^gerrit-system-group.*|gerrit-system-group=$(id -u)|" "${PROJECTS_INI}" |
| sed -i "s|^acl-dir.*|acl-dir=$(pwd)/acls|" "${PROJECTS_INI}" |
| sed -i "s|^local-git-dir.*|local-git-dir=${JEEPYB_WORKSPACE}/git|" "${PROJECTS_INI}" |
| sed -i "s|^jeepyb-cache-dir.*|jeepyb-cache-dir=${JEEPYB_WORKSPACE}/cache|" "${PROJECTS_INI}" |
| |
| # Backward compatibility with legacy format: |
| # remove acls/ path prefix from `acl-config` params |
| sed -i 's|acl-config: acls/|acl-config: |g' "${PROJECTS_YAML}" |
| |
| manage-projects -v -d $@ |