如何在詹金斯管道脚本中使用Helm命令

时间:2020-09-02 12:23:18

标签: jenkins kubernetes-helm

我一直在尝试将由docker构建在jenkins上的图像部署到掌舵图表上,我已经在网站https://dev.to/sword-health/seamless-ci-cd-with-jenkins-helm-and-kubernetes-5e00上引用了几个文档 和https://cloudcompilerr.wordpress.com/2018/06/03/docker-jenkins-kubernetes-run-jenkins-on-kubernetes-cluster/并管理到将Docker映像推入dockerhub的位置,但我被卡在掌舵 我没有得到确切的错误。

詹金斯错误

+ helm list
/var/lib/jenkins/workspace/01@tmp/durable-68e91f76/script.sh: 1: /var/lib/jenkins/workspace/01@tmp/durable-68e91f76/script.sh: helm: not found

PIPELINESCRIPT

pipeline {
   environment {
       registry = "hemanthpeddi/springboot"
       registryCredential = 'dockerhub'
   }
  agent any
  tools {maven "maven" }
  stages {
    stage('Cloning Git') {
      steps {
        git 'https://github.com/hrmanth/game-of-life.git'
      }
    }
    stage('Build'){
      steps{
           sh script: 'mvn clean package'
         }
       }
    stage('Building image') {
      steps{
        script {
          dockerImage = docker.build registry + ":$BUILD_NUMBER"
        }
      }
    }
    stage('Deploy Image') {
      steps{
         script {
            docker.withRegistry( '', registryCredential ) {
            dockerImage.push()
            }    
          }
        }
      }
    stage('Remove Unused docker image') {
      steps{
        sh "docker rmi $registry:$BUILD_NUMBER"
      }
    }
    stage('Run Helm') {
      steps {
      script {      
      container('helm') {
        sh "helm ls"
       }
      } 
      }
}
}
}

在詹金斯中使用头盔之前,我是否缺少任何特定的配置?我已经在jenkins的 cloud配置中配置了我的kubernetes IP,请帮助

已安装插件

Kubernetes插件

Docker插件

3 个答案:

答案 0 :(得分:1)

您需要头盔,默认情况下不可用。您可以在Jenkins中将helm作为工具添加并使用。 https://www.jenkins.io/doc/book/pipeline/syntax/#tools

答案 1 :(得分:0)

您应该在所有节点(包括主/从Jenkins节点)中安装头盔。看来您尚未在jenkins中安装头盔。

答案 2 :(得分:0)

我不太熟悉,但是当你使用“容器(‘掌舵’)”的步骤,我认为它是指 Kubernetes Plugin
所以,在阅读this docs,我觉得 “ podTemplate ” 中缺少配置。
因此,你需要做的是配置在“podTemplate”一个头盔容器,并把名称为“掌舵”。你可以尝试使用,例如,“高山/掌舵”的形象。 再见。

相关问题