Я пишу сценарий с конвейером как часть многоотраслевого конвейера, в котором мне нужно прочитать пары ключ-значение из файла JSON.Когда я запускаю конвейер, я получаю следующую ошибку: /home/jenkins/workspace/dMyproject-QRMU74PK33RGCZRTDPVXCWOT55L2NNSXNPY2LJQ5R2UIIYSJR2RQ@tmp/durable-c4b5faa2/script.sh * 100 * мой код поиска 100: * найден * заменитель * 100 * * * * * * * *2 *в частности, эта строка вызывает ошибку:
String fileContents = new File( ".env" ).text;
Но я не могу выяснить, что именно не так.Мой файл env выглядит так:
{
"key" :"value",
"key2" :"value2"
}
import groovy.json.JsonSlurper
import java.io.File
node('google-cloud-node') {
dockerfile {
filename 'BuildDockerfile'
}
currentBuild.result = "SUCCESS"
try {
String dockerFileName = "BuildDockerfile"
def customImage = docker.build("my-image:${env.BUILD_ID}","-f ${dockerFileName} .")
customImage.inside('-u root') {
stage('Checkout'){
checkout scm
}
stage('Build'){
notify("#test-ci-builds","Oh, time to build something!")
sh '''
set +x
whoami
pwd
npm install
npm build
'''
}
stage('Deploy') {
parseArgsFile()
withCredentials([file(credentialsId: "scanner-dev-ssh-service-account", variable: 'ID')]) {
sh '''
set +x
gcloud auth activate-service-account jenkins-test1@scanner-dev-212008.iam.gserviceaccount.com --key-file=$ID --project=scanner-dev-212008
gcloud compute --project scanner-dev-212008 ssh --zone us-west2-a ubuntu@docker-slave --command "uname -a"
'''
}
}
}
}
catch (err) {
notify("#test-ci-builds","Oh, crap!")
currentBuild.result = "FAILURE"
sh 'echo ${env.BUILD_URL}'
throw err
}
}
def notify(channel,text) {
slackSend (channel: "${channel}", message: "${text}", teamDomain: "distillery-tech", token: "0W6205gwiR1CEVOV4iMFiNQw")
}
def parseArgsFile(params=null){
String fileContents = new File( ".env" ).text;
def InputJSON = new JsonSlurper().parseText(inputFile.text)
InputJSON.each{ println it }
}