Мне нужна книга для установки Gitlab-Runner и запуска сервиса. Я написал пьесу, которая вызывает скрипт оболочки, и получаю это. Но это не помогает мне при работе на удаленных серверах. Может кто-нибудь помочь мне с Playbook установить все функции, используя существующий код, который делает то же самое. Это должна быть одна пьеса. ниже приведен скрипт, который я использую для установки его для пользователей сборки andriod, и он работает как положено. Может ли кто-нибудь помочь мне сделать это, как в пьесе
PROCESSOR_COUNT=`cat /proc/cpuinfo | grep "processor\\s\+:" | wc -l`
EMULATOR_COUNT=`expr ${PROCESSOR_COUNT} / 2`
EMULATOR_COUNT=$([ ${EMULATOR_COUNT} -le "16" ] && echo "${EMULATOR_COUNT}" || echo "16")
AGENT_COUNT=`expr ${PROCESSOR_COUNT} - ${EMULATOR_COUNT}`
echo "" > /etc/androidBuild.conf
echo "PROCESSOR_COUNT=${PROCESSOR_COUNT}" >> /etc/androidBuild.conf
echo "EMULATOR_COUNT=${EMULATOR_COUNT}" >> /etc/androidBuild.conf
echo "AGENT_COUNT=${AGENT_COUNT}" >> /etc/androidBuild.conf
echo "ANDROID_EMULATOR_NAME=\"${ANDROID_EMULATOR_NAME}\"" >> /etc/androidBuild.conf
echo "ANDROID_EMULATOR_TYPE=\"${ANDROID_EMULATOR_TYPE}\"" >> /etc/androidBuild.conf
chmod 666 /etc/androidBuild.conf
killall gitlab-runner
#Install the GitLab runner
curl http://artifactory.abc.com/artifactory/dcp-mobile-android-release/gitlab/gitlab-runner-linux-amd64 > /usr/local/bin/gitlab-runner
chmod +x /usr/local/bin/gitlab-runner
gitlab-runner unregister --all-runners
AGENT_NAME=`hostname | grep -o "[a-zA-Z0-9]\+"`
PORT=5554
cat <<EOF > /etc/gitlab-runner/config.toml
concurrent = ${PROCESSOR_COUNT}
check_interval = 0
EOF
#Create Runners according to proc count.
for agent_number in `seq 1 ${EMULATOR_COUNT}`
do
gitlab-runner register -n \
--r Te4Ny4xXDaqMrabck \
--u "https://gitlab.abc.com/" \
--executor shell \
--tag-list android,android-emulator \
--name "${AGENT_NAME}-${agent_number}" \
--env "ANDROID_SERIAL=emulator-${PORT}" \
--limit 1 \
--builds-dir "${AGENT_NAME}-${agent_number}" \
--shell bash
PORT=`expr ${PORT} + 2`
done
if [ ${PROCESSOR_COUNT} -gt ${EMULATOR_COUNT} ]; then
#Create Build-Only Runners according to proc count.
for agent_number in `seq $(expr 1 + ${EMULATOR_COUNT}) ${PROCESSOR_COUNT}`
do
gitlab-runner register -n \
--r Te4Ny4xXDaqMrbmkabc \
--u "https://gitlab.abc.com/" \
--executor shell \
--tag-list android-build \
--name "${AGENT_NAME}-${agent_number}" \
--limit 1 \
--builds-dir "${AGENT_NAME}-${agent_number}" \
--shell bash
done
fi
Artifactoryrepo.yml
---
-
connection: local
hosts: localhost
tasks:
-
copy:
content: |
[artifactory-base]
name=Artifactory CentOS-$releasever - Base
baseurl=http://artifactory.abc.com/artifactory/centos/$releasever/os/$basearch/
gpgcheck=0
[artifactory-updates]
name=Artifactory CentOS-$releasever - Updates
baseurl=http://artifactory.abc.com/artifactory/centos/$releasever/updates/$basearch/
gpgcheck=0
[artifactory-extras]
name=Artifactory CentOS-$releasever - Extras
baseurl=http://artifactory.abc.com/artifactory/centos/$releasever/extras/$basearch/
gpgcheck=0
[artifactory-centosplus]
name=Artifactory CentOS-$releasever - Plus
baseurl=http://artifactory.abc.com/artifactory/centos/$releasever/centosplus/$basearch/
gpgcheck=0
dest: /etc/yum.repos.d/artifactory.repo
name: "Create artifactory repo"
-
file:
mode: "0775"
path: /etc/yum.repos.d/artifactory.repo
name: "Give permissions to artifactory.repo"
--------------------------------------------------------
Run Emulators.sh
cp centos/Artifactory.repo /etc/yum.repos.d/
mkdir -p /opt/EmulatorService
cp centos/service/RunEmulators.sh /opt/EmulatorService/
chmod +x /opt/EmulatorService/RunEmulators.sh
cp centos/service/Emulator.service /etc/systemd/system/
systemctl enable Emulator.service