bounty将在5天后过期。回答此问题可获得+50的声誉奖励。Peter Penzov正在寻找来自声誉良好来源的答案。
我有这个jenkins作业,用于删除AWS ECR存储库中的所有项目:
pipeline {
agent any
environment {
AWS_ACCOUNT_ID="0000000021764"
AWS_DEFAULT_REGION="us-east-1"
IMAGE_REPO_NAME="testio"
IMAGE_TAG="latest"
REPOSITORY_URI = "0000000021764.dkr.ecr.us-east-1.amazonaws.com/testio:latest"
REPOSITORY_NAME = "testio"
}
stages{
stage('Delete all image in repository') {
steps {
script{
docker.withRegistry('https://0000000021764.dkr.ecr.us-east-1.amazonaws.com') {
sh '''
aws ecr batch-delete-image --repository-name $REPOSITORY_NAME --image-ids "$(aws ecr list-images --repository-name $REPOSITORY_NAME --query 'imageIds[*]' --output json
)" || true
'''
}
}
}
}
}
}
是否有可能有下拉列表,我可以选择要删除的项目?
2条答案
按热度按时间zz2j4svz1#
是的,这是可能的,例如
在jenkins pipeline how to give choice parameters dynamically上也提出了类似的问题
关于declarative pipeline parameters的教程
jjhzyzn02#
你可以使用Jenkins Input Step来实现这个问题,因为我没有AWS的repo,所以我不能给予一个精确的解决方案,但是下面是你如何做到这一点。
如果要选择多个图像,请使用
multiselect
参数而不是选择参数。