【问题标题】:How to print AmazonEC2 Slave details via groovy script in Jenkins Script Console如何通过 Jenkins 脚本控制台中的 groovy 脚本打印 AmazonEC2 Slave 详细信息
【发布时间】:2021-05-26 10:55:29
【问题描述】:

我正在使用 CloudBees Jenkins。我们正在通过 AmazonEC2 插件配置动态运行器(或从属),其中我们提到了运行器详细信息,例如 AMI ID、密钥、区域、标签等,并且运行器是根据这些信息创建的。

我想编写一个我想在 Jenkins 脚本控制台中运行的 Groovy 脚本,以查看配置的所有此类运行器详细信息的详细信息。

我可以看到我需要的所有信息都存储在hudson.plugins.ec2.SlaveTemplate类中。

但我看不到任何获取此类实例的方法。我已经设法写了这个只打印配置的奴隶的标签

Jenkins.instance.clouds
Jenkins.instance.clouds.each {
 
println it.name
}

任何人都可以通过 groovy 帮助打印所有(或至少一些,如 AMI ID、区域等)吗?

【问题讨论】:

    标签: jenkins groovy jenkins-pipeline jenkins-groovy cloudbees


    【解决方案1】:

    我自己找到了答案。如果这对其他人有帮助,请在此处分享:

    import hudson.plugins.ec2.AmazonEC2Cloud
    import hudson.plugins.ec2.SlaveTemplate
    import hudson.slaves.Cloud
    import com.cloudbees.opscenter.client.cloud.CloudImpl
    
    
    Jenkins.instance.clouds.each {
      
      if(!(it instanceof CloudImpl)){
        
        
        Cloud cloud = it
        AmazonEC2Cloud ac = cloud
        
        List<SlaveTemplate>  stL = ac.getTemplates()
        
        for (SlaveTemplate st : stL){
          
          if(st == null){
           println "SlaveTemplate is null" 
          } else{
           
            println st.ami
            println st.labels 
          }
          
        }
        
        
      }
    
    

    如果您想打印有关已配置从站的更多详细信息,可以在 https://javadoc.jenkins.io/plugin/ec2/hudson/plugins/ec2/SlaveTemplate.html 找到 class attribute 名称

    【讨论】:

      猜你喜欢
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-21
      • 2021-11-30
      • 2013-10-02
      • 1970-01-01
      • 2011-12-08
      相关资源
      最近更新 更多