首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以将函数导入管道外的jenkinsfile

是否可以将函数导入管道外的jenkinsfile
EN

Stack Overflow用户
提问于 2021-06-05 07:41:27
回答 1查看 821关注 0票数 1

我有一条简单的管道。我能够在管道块之外获取属性并成功地运行它。当我尝试将属性块移动到外部groovy并使用"load“导入它,甚至使用共享库时,管道失败。是否有一种方法可以在管道块之外共享代码块?

下面是我对失败的共享库的尝试。

代码语言:javascript
复制
@Library("shared-library") _

properties()

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                echo 'Building..'
            }
        }
        stage('Test') {
            steps {
                echo 'Testing..'
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying....'
            }
        }
    }
}

下面是失败的导入groovy的尝试。

代码语言:javascript
复制
def shared_funcs = load "${env.WORKSPACE}/shared/@script/shared_funcs.groovy"
shared_funcs.properties()

pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                echo 'Building..'
            }
        }
        stage('Test') {
            steps {
                echo 'Testing..'
            }
        }
        stage('Deploy') {
            steps {
                echo 'Deploying....'
            }
        }
    }
}

这将输出“所需的上下文类hudson.FilePath缺失--也许您忘记了用提供此步骤的步骤包围代码,例如:节点”。

shared_funcs.groovy

代码语言:javascript
复制
def call() {
properties([ parameters([
  string( name: 'AWS_ACCESS_KEY_ID', defaultValue: ''),
  string( name: 'AWS_SECRET_ACCESS_KEY', defaultValue: '')
]), pipelineTriggers([]) ])
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-08 18:28:40

确保您的全球管道库具有正确的结构。https://www.jenkins.io/doc/book/pipeline/shared-libraries/#directory-structure

确保在该库的vars/目录中有一个文件。为了达到您的目的,应该将其命名为shared_funcs.groovy,并将其构造为一个函数。

代码语言:javascript
复制
def call(){
  properties([ parameters([
    string( name: 'AWS_ACCESS_KEY_ID', defaultValue: ''),
    string( name: 'AWS_SECRET_ACCESS_KEY', defaultValue: '')
    ]), pipelineTriggers([]) ])
}

您需要用call()来构造它,这样它才能工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67847462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档