Przeglądaj źródła

08jenkins-agent-install-centos.sh

lizw 2 lat temu
rodzic
commit
abdea6732e
1 zmienionych plików z 35 dodań i 34 usunięć
  1. 35 34
      00base/08jenkins-agent-install-centos.sh

+ 35 - 34
00base/08jenkins-agent-install-centos.sh

@@ -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 \\