jenkins工具集成

以宿主机为agent:Jenkins 添加node

#集成Npm

node_Release (opens new window)node-v12.18.3-linux-x64.tar.gz(opens new window)

#Agent 安装 node

test -d /data/soft || mkdir -p /data/soft && cd /data/soft
wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.gz
tar xf node-v12.18.3-linux-x64.tar.gz -C /usr/local/
#添加全局变量(/etc/profile)
export NODE_HOME=/usr/local/node-v12.18.3-linux-x64
export PATH=$PATH:$NODE_HOME/bin
source /etc/profile
1
2
3
4
5
6
7

jenkins_node1.jpg

jenkins_node1.jpg

  • 在Jenkins全局工具配置中并没有node,可以直接通过Jenkinsfile定义使用。

  • 编写Jenkinsfile

#!groovy
pipeline {
    agent any
    stages {
        stage ("Print npm"){
            steps {
                script {
                sh """
                   export npmHome=/usr/local/node-v12.18.3-linux-x64
                   export PATH=\$PATH:\$npmHome/bin
                   npm -v
                   """
                }
            }
        }
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  • 测试构建

jenkins_node1.jpg

#npm 命令

设置成淘宝源:npm config set registry https://registry.npm.taobao.org ,(内容存在 ~/.npmrc)

查看结果:npm config get registry

在命令行里指定源:npm --registry https://registry.npm.taobao.org install [name]

单个包指定源:npm config set chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

jenkins_node1.jpg

安装模块:npm install

清除缓存:npm cache clean

检查模块是否过时:npm outdated

#集成Ant

最新版本截图

Apache-ant 下载页(opens new window)

jenkins_ant.jpg

#Agent 安装ant

test -d /data/soft || mkdir -p /data/soft && cd /data/soft
wget https://dlcdn.apache.org//ant/binaries/apache-ant-1.10.12-bin.tar.gz
tar xf apache-ant-1.10.12-bin.tar.gz -C /usr/local/
#添加全局变量(/etc/profile)
export ANT_HOME=/usr/local/apache-ant-1.10.12
export PATH=$PATH:$MAVEN_HOME/bin:$ANT_HOME/bin
source /etc/profile
1
2
3
4
5
6
7

jenkins_ant.jpg

#Jenkins配置 ant

安装插件:ant

  • 配置jenkins Global

Manage Jenkins => Global Tool Configuration => Ant

jenkins_ant.jpg

  • 编写Jenkinsfile
#!groovy
pipeline {
    agent any
    stages {
        stage ("Print Ant"){
            steps {
                script {
                    antHome = tool 'ANT'
                    sh "${antHome}/bin/ant -version"
                }
            }
        }
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  • 测试构建

jenkins_ant.jpg

ant有一个很致命的缺陷,那就是没办法管理依赖。我们一个工程,要使用很多第三方工具,不同的工具,不同的版本。 每次打包都要自己手动去把正确的版本拷到lib下面去,不用说,这个工作既枯燥还特别容易出错。

#集成Maven

提示: JDK:在maven3.3 以上的版本需要JDK版本1.7+。内存:没有最低限制。

apache下载地址(opens new window)

maven-3_Release(opens new window)

最新版本截图

jenkins_maven1.jpg

#Agent 安装maven

test -d /data/soft || mkdir -p /data/soft && cd /data/soft
wget https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
tar xf apache-maven-3.6.3-bin.tar.gz  -C /usr/local/
#设置全局变量(/etc/profile)
export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile
1
2
3
4
5
6
7

jenkins_maven2.jpg

#Jenkins配置 maven

  • 配置jenkins Global

Manage Jenkins => Global Tool Configuration => Maven

jenkins_maven3.jpg

  • 编写Jenkinsfile
#!groovy
pipeline {
    agent any
    stages {
        stage ("Print Maven3"){
            steps {
                script {
                    mavenHome = tool 'Maven3'
                    sh "${mavenHome}/bin/mvn -v"
                }
            }
        }
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  • 测试构建

jenkins_maven2.jpg

#mvn 命令

package < install < deploy (三个命令都有:项目编译、单元测试、打包功能)

    package : *没有*把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库
    install :同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但*没有*布署到远程maven私服仓库
    deploy :同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库

不需要部署到私服:mvn clean package install -Dmaven.test.skip=true -U -T $(nproc)

部署到私服:mvn clean deploy -Dmaven.test.skip=true -T $(nproc)

#集成gradle

gradle_Releases (opens new window)gradle-v6.8.2.tar.gz(opens new window)

  • 配置jdk

openjdk

#Agent 安装 gradle

test -d /data/soft || mkdir -p /data/soft && cd /data/soft
#wget https://github.com/gradle/gradle/archive/refs/tags/v6.8.2.tar.gz
#tar xf  v6.8.2.tar.gz 
#cd gradle-6.8.2 && cp -a gradlew /usr/local/bin/gradle

wget https://services.gradle.org/distributions/gradle-6.8.2-bin.zip
unzip gradle-6.8.2-bin.zip -d /usr/local/
#添加全局变量(/etc/profile)
export GRADLE_HOME=/usr/local/gradle-6.8.2
export PATH=$PATH:$GRADLE_HOME/bin

source /etc/profile
1
2
3
4
5
6
7
8
9
10
11
12

jenkins_gradle1.jpg

#配置sdkmanager

cmdline-tools/sdkmanager

#Jenkins配置 gradle

安装插件:Gradle

  • 配置jenkins Global

Manage Jenkins => Global Tool Configuration => Gradle

jenkins_gradle2.jpg

  • 编写Jenkinsfile
#!groovy
pipeline {
    agent any
    stages {
        stage ("Print Gradle"){
            steps {
                script {
                    gradleHome = tool 'GRADLE'
                    sh "${gradleHome}/bin/gradle -v"
                }
            }
        }
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  • 测试构建

jenkins_gradle3.jpg

#gradle 命令

一般打包存放路径: 统一在app/build/outputs/apk/[debug|release]目录下。

    gradle -v 版本号,首次运行,没有gradle的要下载的哦。
    gradle clean 删除HelloWord/app目录下的build文件夹
    gradle build -x test 检查依赖并编译打包
    gradle assembleDebug 编译并打Debug包
    gradle assembleRelease 编译并打Release的包
    gradle installRelease Release模式打包并安装
    gradle uninstallRelease 卸载Release模式包
posted @ 2023-03-15 16:59  GaoYanbing  阅读(98)  评论(0编辑  收藏  举报