jenkins - JenkinsFile 和 Pipeline 中的 sed 命令
问题描述
我正在尝试运行下面包含两个 sed 命令的 JenkinsFile。但是当我对文件进行分类时,我遇到了字符串插值的不同问题。
你知道我如何在 JenkinsFile 中运行它吗?提前致谢。
pipeline {
agent any
tools {nodejs "NodeJS 6.7.0"}
stages {
stage('checking out gitlab branch master') {
steps {
checkout([$class: 'GitSCM', branches: [[name: '*/development']]])
}
}
stage('executing release process') {
environment {
ARTIFACTORY_APIKEY = credentials('sandbox-gms-password')
}
steps {
sh 'cp bowerrc.template .bowerrc'
sh 'sed -i -e "s/username/zest-jenkins/g" .bowerrc'
sh 'sed -i -e "s/password/${ARTIFACTORY_APIKEY}/g" .bowerrc'
sh 'cat .bowerrc'
}
}
}
}
解决方案
将命令放在单个“ sh ”块中,请参考以下内容:-
pipeline {
agent any
tools {nodejs "NodeJS 6.7.0"}
stages {
stage('checking out gitlab branch master') {
steps {
checkout([$class: 'GitSCM', branches: [[name: '*/development']]])
}
}
stage('executing release process') {
environment {
ARTIFACTORY_APIKEY = credentials('sandbox-gms-password')
}
steps {
sh '''
cp bowerrc.template .bowerrc
sed -i -e "s/username/zest-jenkins/g" .bowerrc
sed -i -e "s/password/${ARTIFACTORY_APIKEY}/g" .bowerrc
cat .bowerrc
'''
}
}
}
}
推荐阅读
- java - 无法使用 MapStruct 映射来自 Integer 的枚举
- c++ - C ++从向量中删除对象?
- python - ValueError:数据框必须有列“ds”和“y”分别包含日期和值
- javascript - 使用多个月份时向 react-datepicker 添加自定义标题
- python - 从文件列表中读取特定的 json 键并将其保存为新文件
- plsql - 如果数字之间有间隔并且它们是随机顺序的,如何重置编号?
- php - 更改购物车中的 WooCommerce 优惠券折扣金额
- angular - 取路由参数并插入表格
- git - 如何在 Git 中列出悬空的分支/分支提示?
- html - Power Apps 门户 - 保存后 div id 标记消失