Как решить jenkins npm установить Отказано в разрешении - PullRequest
0 голосов
/ 01 февраля 2020

Это мой Jenkinsfile

pipeline {
  agent any
  tools {nodejs "nodejs10"}
  stages {
      stage('Test') {
        steps {
          echo 'Testing...'
        }
      }
      stage ('Build source') {
        steps {
          sh '''
            mkdir -p .npm-global
            mkdir -p _cacache
            export PATH=.npm-global/bin:$PATH

            npm config set prefix '.npm-global'
            npm config set cache '_cacache'
            npm config set jobs 1
            npm config set strict-ssl false
          '''
          dir('e2e/test1'){
            sh "$PWD"
          }
          sh 'npm i'
        }
      }
  }
}

Не удалось установить npm. Я получаю эту ошибку:

Pipeline] dir
Running in /var/jenkins_home/workspace/jenkins_docker2/e2e/test1
[Pipeline] {
[Pipeline] sh
+ /
/var/jenkins_home/workspace/jenkins_docker2/e2e/test1@tmp/durable-e0a8070a/script.sh: 1: /var/jenkins_home/workspace/jenkins_docker2/e2e/test1@tmp/durable-e0a8070a/script.sh: /: Permission denied
[Pipeline] }
[Pipeline] // dir
[Pipeline] }

Я что-то упустил в моем конвейере?

У меня есть nodejs плагин с node10. Я собрал jenkins, используя docker в моей операционной системе windows 10, используя docker Community Edition, используя такой том:

docker run -p 81:8080 -p 50000:50000 --name myjenkins --privileged -v %cd%/jenkins:/var/jenkins_home jenkins/jenkins

1 Ответ

0 голосов
/ 01 февраля 2020

Хорошо, я обнаружил, npm установка работает, когда я не использую dir, и я помещаю свой пакет. json файл в root. ИТ-отдел не объясняет, почему мне отказывают в разрешении, меняя рабочий каталог на другую папку с пакетом. json, но сейчас у меня есть рабочее решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...