类似于 Jenkins Groovy 文件。有没有竹子的文件?

Posted

技术标签:

【中文标题】类似于 Jenkins Groovy 文件。有没有竹子的文件?【英文标题】:Similar to Jenkins Groovy file. Is there Any file for Bamboo? 【发布时间】:2020-11-05 08:29:01 【问题描述】:

对于 Jenkins,我对这个 Devops 领域基本上是全新的,Groovy 文件用于维护准备-构建-部署,同样对于 Bamboo,使用哪个脚本?

我知道使用竹计划。但是计划是如何通过任何脚本或任何文件生成的。

我也有 Jenkins 的管道,类似地如何为 Bamboo 计划完成。

Jenkins 的 groovy 文件是

node 
    stage('Preparation')  // for display purposes
        // Get EDM code from a GitHub repository
        cleanWs()
        checkout scm
        sh "python $WORKSPACE/common/deployment_scripts/abc.py --localFolder $WORKSPACE --env dev"
    
    stage('Build') 
        // Run the maven build
        sh "mvn clean install -f $WORKSPACE/pom.xml -Dmaven.test.skip=true"
    
    stage('Deploy') 
        //Run the deployment script
        sh "python $WORKSPACE/common/deployment_scripts/ase.py $WORKSPACE lm-edm-builds-ndev $env.BUILD_NUMBER dev"
        sh "python $WORKSPACE/common/deployment_scripts/qwert.py --JsonParameterFile $WORKSPACE/common/deployment_scripts/my_properties.json --BuildVersion $env.BUILD_NUMBER --WorkSpace $WORKSPACE --environment dev"
    



【问题讨论】:

【参考方案1】:

对于 Bamboo,您可以使用 Bamboo Specs 执行此操作。 Bamboo Specs 允许您将 Bamboo 配置定义为代码,并在 Bamboo 中自动创建或更新相应的计划/部署。阅读有关Bamboo Specs here 的更多信息。

Bamboo Specs 识别两种创建计划的方法,使用 Java 或 YAML。选择最符合您需求的一种。两者的语法都可以在他们的official reference documentation 中找到。

用于定义计划的示例 YAML 规范如下所示,详见 this page:

---
version: 2
plan:
  project-key: MARS
  key: ROCKET
  name: Build the rockets

# List of plan's stages and jobs
stages:
  - Build the rocket stage:
    - Build

#Job definition
Build:
  tasks:
    - script:
        - mkdir -p falcon/red
        - echo wings > falcon/red/wings
        - sleep 1
        - echo 'Built it'
    - test-parser:
        type: junit
        test-results: '**/junit/*.xml' 
  # Job's requirements
  requirements:
     - isRocketFuel
  # Job's artifacts. Artifacts are shared by default.
  artifacts:
     - name: Red rocket built
       pattern: falcon/red/wings

您可以从 Creating a simple plan with Bamboo Java Specs 的本教程开始

【讨论】:

以上是关于类似于 Jenkins Groovy 文件。有没有竹子的文件?的主要内容,如果未能解决你的问题,请参考以下文章

jenkins2 -pipeline 常用groovy脚本

Groovy 和 Jenkins - 将 curl 输出捕获到文件

pipeline 学习

无法在 Jenkins 中安装 Groovy 插件

Jenkins-pipeline 从 groovy 中的属性文件中提取和设置变量

Groovy Jenkins 脚本中的 sh 命令