如何通过 Jenkins 脚本控制台中的 groovy 脚本打印 AmazonEC2 Slave 详细信息

How to print AmazonEC2 Slave details via groovy script in Jenkins Script Console

我正在使用 CloudBees Jenkins。我们正在通过 AmazonEC2 插件配置动态 运行ners(或从属),其中我们提到 运行ners 详细信息,如 AMI ID、密钥、区域、标签等,运行ners 是基于此创建的信息。

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

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

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

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

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

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

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 名称