关于 Jenkins BitBucket 使用管道和管道脚本的问题,以及 运行 当新数据被推送到 bitbucket 时的问题
Question on Jenkins BitBucket using pipeline and pipeline script but also running when new data is pushed to bitbucket
我使用管道创建了一个项目,然后在管道中选择管道脚本,
这允许我 运行 分阶段构建。如下
[代码]
管道 {
agent any
tools {
terraform 'terraform-11'
}
stages {
stage('Git Checkout terraform') {
steps {
git credentialsId: '********', url: 'https://******/********.git'
}
}
stage('Terraform Init') {
steps {
sh 'terraform init'
}
}
stage('Terraform A'){
steps {
dir(dev){
sh 'terraform plan -var-file="terraform.tfvars"'
sh 'terraform apply -auto-approve'
}
}
}
stage('Terraform B'){
steps {
dir(env){
sh 'terraform plan -var-file="terraform.tfvars"'
sh 'terraform apply -auto-approve'
}
}
}
}
}
[/code]
这个效果很好,我把代码拿出来和运行一系列的阶段。还有比这更多的阶段。我想做的是在每次更新 terrform 脚本时让 jenkins build 运行 。我看过示例,但 none 个示例是 PipeLine/PipeLine 脚本
的一部分
有 Freestyle 项目,但它不允许我构建我需要的所有阶段。
有来自 SCM 的 PipeLine /Pipeline 脚本,它又不允许我构建我需要的所有阶段。
我想做的是坚持我当前的管道,但将其设置为 运行 当脚本被推送到 Bitbucket 时。我所需要的只是指向正确的文档。如果可能的话。如果不可能,那我就重新开始画板。
我想出了解决办法。我设置了一个文件夹项目,设置了 Git Repo。然后我创建了一个名为 JenkinsFile 的 Jenkins 文件,其中包含所有阶段和步骤。然后将其上传到正在构建的仓库中。因此构建将 运行 拉入 JenkinsFile 的主要项目并 运行s 它。
我使用管道创建了一个项目,然后在管道中选择管道脚本, 这允许我 运行 分阶段构建。如下 [代码] 管道 {
agent any
tools {
terraform 'terraform-11'
}
stages {
stage('Git Checkout terraform') {
steps {
git credentialsId: '********', url: 'https://******/********.git'
}
}
stage('Terraform Init') {
steps {
sh 'terraform init'
}
}
stage('Terraform A'){
steps {
dir(dev){
sh 'terraform plan -var-file="terraform.tfvars"'
sh 'terraform apply -auto-approve'
}
}
}
stage('Terraform B'){
steps {
dir(env){
sh 'terraform plan -var-file="terraform.tfvars"'
sh 'terraform apply -auto-approve'
}
}
}
}
} [/code]
这个效果很好,我把代码拿出来和运行一系列的阶段。还有比这更多的阶段。我想做的是在每次更新 terrform 脚本时让 jenkins build 运行 。我看过示例,但 none 个示例是 PipeLine/PipeLine 脚本
的一部分有 Freestyle 项目,但它不允许我构建我需要的所有阶段。 有来自 SCM 的 PipeLine /Pipeline 脚本,它又不允许我构建我需要的所有阶段。
我想做的是坚持我当前的管道,但将其设置为 运行 当脚本被推送到 Bitbucket 时。我所需要的只是指向正确的文档。如果可能的话。如果不可能,那我就重新开始画板。
我想出了解决办法。我设置了一个文件夹项目,设置了 Git Repo。然后我创建了一个名为 JenkinsFile 的 Jenkins 文件,其中包含所有阶段和步骤。然后将其上传到正在构建的仓库中。因此构建将 运行 拉入 JenkinsFile 的主要项目并 运行s 它。