|
@@ -9,7 +9,7 @@
|
|
|
#-----------------------------------------------------------------------------------------------------
|
|
|
|
|
|
# 配置
|
|
|
-BASE_DIR="/data/jenkins-agent/env"
|
|
|
+BASE_DIR="/data/jenkins-agent"
|
|
|
|
|
|
# 软件
|
|
|
#--- jdk8
|
|
@@ -223,7 +223,8 @@ function init:mkdir() {
|
|
|
function init:jenkins_agent() {
|
|
|
log::info "[jenkins-agent]" "下载jenkins-agent..."
|
|
|
local host="127.0.0.1"
|
|
|
- local agent_file="${BASE_DIR}/../agent.jar"
|
|
|
+ local agent_dir=``
|
|
|
+ local agent_file="${BASE_DIR}/agent.jar"
|
|
|
local java_mem_opts=" -DappName=jenkins -server -Xmx1g"
|
|
|
local database_opts=" -Ddatabase.codeset=ISO-8859-1 -Ddatabase.logging=false"
|
|
|
local java_opts_ext=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dapplication.codeset=UTF-8 -Dfile.encoding=UTF-8 -Duser.timezone=Asia/Shanghai"
|
|
@@ -289,38 +290,38 @@ function init:java() {
|
|
|
log::info "[java]" "安装java..."
|
|
|
local host="127.0.0.1"
|
|
|
# jdk8
|
|
|
- local java8_path="${BASE_DIR}/java/${JDK8_DIR_NAME}"
|
|
|
+ local java8_path="${BASE_DIR}/env/java/${JDK8_DIR_NAME}"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$java8_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/java
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK8_URL} -O ${BASE_DIR}/java/${JDK8_FILE_NAME}
|
|
|
- cd ${BASE_DIR}/java
|
|
|
+ mkdir -p ${BASE_DIR}/env/java
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK8_URL} -O ${BASE_DIR}/env/java/${JDK8_FILE_NAME}
|
|
|
+ cd ${BASE_DIR}/env/java
|
|
|
tar -zxvf ${JDK8_FILE_NAME}
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/java
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/java
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "java" "$host 安装java8" "exit"
|
|
|
# jdk11
|
|
|
- local java11_path="${BASE_DIR}/java/${JDK11_DIR_NAME}"
|
|
|
+ local java11_path="${BASE_DIR}/env/java/${JDK11_DIR_NAME}"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$java11_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/java
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK11_URL} -O ${BASE_DIR}/java/${JDK11_FILE_NAME}
|
|
|
- cd ${BASE_DIR}/java
|
|
|
+ mkdir -p ${BASE_DIR}/env/java
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK11_URL} -O ${BASE_DIR}/env/java/${JDK11_FILE_NAME}
|
|
|
+ cd ${BASE_DIR}/env/java
|
|
|
tar -zxvf ${JDK11_FILE_NAME}
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/java
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/java
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "java" "$host 安装java11" "exit"
|
|
|
# jdk17
|
|
|
- local java17_path="${BASE_DIR}/java/${JDK17_DIR_NAME}"
|
|
|
+ local java17_path="${BASE_DIR}/env/java/${JDK17_DIR_NAME}"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$java17_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/java
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK17_URL} -O ${BASE_DIR}/java/${JDK17_FILE_NAME}
|
|
|
- cd ${BASE_DIR}/java
|
|
|
+ mkdir -p ${BASE_DIR}/env/java
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate ${JDK17_URL} -O ${BASE_DIR}/env/java/${JDK17_FILE_NAME}
|
|
|
+ cd ${BASE_DIR}/env/java
|
|
|
tar -zxvf ${JDK17_FILE_NAME}
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/java
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/java
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "java" "$host 安装java17" "exit"
|
|
@@ -334,14 +335,14 @@ function init:gradle() {
|
|
|
local gradle_url="https://downloads.gradle-dn.com/distributions/gradle-${GRADLE_VERSION}-bin.zip"
|
|
|
local gradle_file_name="gradle-${GRADLE_VERSION}-bin.zip"
|
|
|
local gradle_dir_name="gradle-${GRADLE_VERSION}"
|
|
|
- local gradle_path="${BASE_DIR}/gradle/$gradle_dir_name"
|
|
|
+ local gradle_path="${BASE_DIR}/env/gradle/$gradle_dir_name"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$gradle_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/gradle
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $gradle_url -O ${BASE_DIR}/gradle/$gradle_file_name
|
|
|
- cd ${BASE_DIR}/gradle
|
|
|
+ mkdir -p ${BASE_DIR}/env/gradle
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $gradle_url -O ${BASE_DIR}/env/gradle/$gradle_file_name
|
|
|
+ cd ${BASE_DIR}/env/gradle
|
|
|
unzip $gradle_file_name
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/gradle
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/gradle
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "gradle" "$host 安装gradle(${GRADLE_VERSION})" "exit"
|
|
@@ -355,14 +356,14 @@ function init:maven() {
|
|
|
local maven_url="https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz"
|
|
|
local maven_file_name="apache-maven-${MAVEN_VERSION}-bin.tar.gz"
|
|
|
local maven_dir_name="apache-maven-${MAVEN_VERSION}"
|
|
|
- local maven_path="${BASE_DIR}/maven/$maven_dir_name"
|
|
|
+ local maven_path="${BASE_DIR}/env/maven/$maven_dir_name"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$maven_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/maven
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $maven_url -O ${BASE_DIR}/maven/$maven_file_name
|
|
|
- cd ${BASE_DIR}/maven
|
|
|
+ mkdir -p ${BASE_DIR}/env/maven
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $maven_url -O ${BASE_DIR}/env/maven/$maven_file_name
|
|
|
+ cd ${BASE_DIR}/env/maven
|
|
|
tar -zxvf $maven_file_name
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/maven
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/maven
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "maven" "$host 安装maven(${MAVEN_VERSION})" "exit"
|
|
@@ -376,14 +377,14 @@ function init:nodejs() {
|
|
|
local nodejs_url="https://nodejs.org/dist/v${NODEJS_VERSION}/node-v${NODEJS_VERSION}-linux-x64.tar.gz"
|
|
|
local nodejs_file_name="node-v${NODEJS_VERSION}-linux-x64.tar.gz"
|
|
|
local nodejs_dir_name="node-v${NODEJS_VERSION}-linux-x64"
|
|
|
- local nodejs_path="${BASE_DIR}/nodejs/$nodejs_dir_name"
|
|
|
+ local nodejs_path="${BASE_DIR}/env/nodejs/$nodejs_dir_name"
|
|
|
command::exec "${host}" "
|
|
|
if [ ! -d "$nodejs_path" ]; then
|
|
|
- mkdir -p ${BASE_DIR}/nodejs
|
|
|
- wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $nodejs_url -O ${BASE_DIR}/nodejs/$nodejs_file_name
|
|
|
- cd ${BASE_DIR}/nodejs
|
|
|
+ mkdir -p ${BASE_DIR}/env/nodejs
|
|
|
+ wget --timeout=10 --waitretry=3 --tries=5 --retry-connrefused --no-check-certificate $nodejs_url -O ${BASE_DIR}/env/nodejs/$nodejs_file_name
|
|
|
+ cd ${BASE_DIR}/env/nodejs
|
|
|
tar -zxvf $nodejs_file_name
|
|
|
- sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/nodejs
|
|
|
+ sudo chown -R \$(id -u):\$(id -g) ${BASE_DIR}/env/nodejs
|
|
|
fi
|
|
|
"
|
|
|
check::exit_code "$?" "nodejs" "$host 安装nodejs(${NODEJS_VERSION})" "exit"
|
|
@@ -404,7 +405,7 @@ Usage:
|
|
|
Available Commands:
|
|
|
init 初始化系统
|
|
|
Flag:
|
|
|
- -base-dir 新增用户名, 默认: '/data/jenkins-agent/env'
|
|
|
+ -base-dir 新增用户名, 默认: '/data/jenkins-agent'
|
|
|
-agent jenkins-agent下载地址(\${JENKINS_URL}/jnlpJars/agent.jar), 默认: ''
|
|
|
-git 是否安装git, 默认: '1'
|
|
|
-java 是否安装java(8, 11, 17), 默认: '1'
|
|
@@ -414,7 +415,7 @@ Flag:
|
|
|
|
|
|
Example:
|
|
|
jenkins-agent-install-centos.sh init \\
|
|
|
- -base-dir '/data/jenkins-agent/env' \\
|
|
|
+ -base-dir '/data/jenkins-agent' \\
|
|
|
-agent '' \\
|
|
|
-git 0 \\
|
|
|
-java 0 \\
|