赞
踩
kubesphere 3.4.0版本,默认支持的jav版本是8和11,不支持17 。需要我们自己定义JenKins Agent 。方法如下:
1、我们需要从Jenkins Agent的github仓库拉取master最新源码,最新源码里已经支持jdk17了。
git clone https://github.com/kubesphere/devops-agent
2、将maven目录拷贝到可以docker build的服务器上。并且cd到maven目录。
3、构建maven-jdk17,命令如下:
docker build --build-arg JDK_VERSION=17 -t builder-maven:v3.2.1-jdk17 .
4、将该镜像打tag,并且推送到指定的harbor仓库。
- docker tag builder-maven:v3.2.1-jdk17 192.168.0.100:5000/library/builder-maven:v3.2.1-jdk17
-
- #推送到仓库
- docker push 192.168.0.100:5000/library/builder-maven:v3.2.1-jdk17
docker镜像到此完成,接下来需要配置kubesphere了。
5、平台管理-配置--配置字典,找到jenkins-casc-config,点击进去,这里字典里包含2个yaml文件,点击“更多操作---》编辑设置”---》打开编辑jenkins_user.yaml 。
6、编辑jenkins_user.yaml
在mavenjdk11后面加个同级节点。
- - name: "mavenjdk17"
- label: "mavenjdk17"
- inheritFrom: "maven"
- containers:
- - name: "maven"
- image: "192.168.0.100:5000/library/builder-maven:v3.2.1-jdk17"
7、我看了下jenkins.yaml 里也有类似的节点,我也加上了。(不确定是否有用,至少不会报错)
- pipeline {
- agent {
- node {
- label 'mavenjdk17'
- }
-
- }
- stages {
- stage('Print Maven and JDK version') {
- agent none
- steps {
- container('maven') {
- sh 'docker version'
- sh ''' java -version
- mvn -v
-
- cd /opt
- ls -a
-
- cd /opt/apache-maven-3.5.3/
- ls -a
- cd conf
- ls -a
- pwd
- cat settings.xml'''
- }
-
- }
- }
-
- }
- }
参考文章:https://blog.csdn.net/qq_40674583/article/details/127839554
https://ask.kubesphere.io/forum/d/9047-kubesphere-devops-jdk17maven
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。