Я хочу использовать плагин Artifactory для моего сценария Jenkins Scripted Pipeline для проекта NPM. Во время установки NPM я сталкиваюсь с проблемой:
SEVERE: process hasn't exited
java.lang.IllegalThreadStateException: process hasn't exited
at java.lang.UNIXProcess.exitValue(UNIXProcess.java:423)
at org.jfrog.build.extractor.executor.CommandExecutor.exeCommand(CommandExecutor.java:78)
at org.jfrog.build.extractor.npm.NpmDriver.runCommand(NpmDriver.java:80)
at org.jfrog.build.extractor.npm.NpmDriver.install(NpmDriver.java:42)
at org.jfrog.build.extractor.npm.extractor.NpmBuildInfoExtractor.runInstall(NpmBuildInfoExtractor.java:153)
at org.jfrog.build.extractor.npm.extractor.NpmBuildInfoExtractor.extract(NpmBuildInfoExtractor.java:61)
at org.jfrog.build.extractor.npm.extractor.NpmInstall.execute(NpmInstall.java:50)
at org.jfrog.hudson.npm.NpmInstallCallable.invoke(NpmInstallCallable.java:53)
at org.jfrog.hudson.npm.NpmInstallCallable.invoke(NpmInstallCallable.java:20)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3085)
at hudson.remoting.UserRequest.perform(UserRequest.java:212)
at hudson.remoting.UserRequest.perform(UserRequest.java:54)
at hudson.remoting.Request$2.run(Request.java:369)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Я использую Artifactory плагин для Jenkins (v. 3.2.2) в Scripted Pipeline в Jenkins. Я слежу за официальной документацией Jfrog .
Я уже как-то общаюсь с поддержкой JFrog, я уже поднял проблему в официальном Github и помогал в поддержке JFrog здесь .
Я уже использую этот плагин для скриптового конвейера для maven Project, и он отлично работает. Я много пытался отладить проблему, иногда она работала, когда я удалил некоторые зависимости из package.json .
Это конфигурация в моем отличном скрипте.
def server = Artifactory.server 'artifacts-prod-01'
server.credentialsId = 'artifactory-credentials-id'
def rtNpm = Artifactory.newNpmBuild()
rtNpm.resolver server: server, repo: 'npm-main-dev'
withEnv(["PATH+NODEJS=${tool 'NodeJS 10'}/bin"]) {
def buildInfo = rtNpm.install path: '.'
}
Я ожидаю установки всех пакетов, указанных в package.json , но похоже, что во время установки npm истекло время ожидания. У меня есть только один интересный момент. Я попытался установить их версию Снимка с фиксированным временем ожидания здесь со следующим исправлением здесь и затем я получаю эту ошибку:
[Bitbucket] Notifying commit build result
[Bitbucket] Build result notified
java.io.IOException: Unexpected EOF
at hudson.remoting.ChunkedInputStream.readUntilBreak(ChunkedInputStream.java:99)
at hudson.remoting.ChunkedCommandTransport.readBlock(ChunkedCommandTransport.java:39)
at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:35)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:63)
Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to stg-default-agent-eu
at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1741)
at hudson.remoting.Request.call(Request.java:202)
at hudson.remoting.Channel.call(Channel.java:954)
at hudson.FilePath.act(FilePath.java:1071)
at hudson.FilePath.act(FilePath.java:1060)
at org.jfrog.hudson.pipeline.common.executors.NpmInstallExecutor.execute(NpmInstallExecutor.java:57)
at org.jfrog.hudson.pipeline.scripted.steps.NpmInstallStep$Execution.run(NpmInstallStep.java:64)
at org.jfrog.hudson.pipeline.scripted.steps.NpmInstallStep$Execution.run(NpmInstallStep.java:39)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:47)
at hudson.security.ACL.impersonate(ACL.java:290)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:44)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused: hudson.remoting.RequestAbortedException
at hudson.remoting.Request.abort(Request.java:340)
at hudson.remoting.Channel.terminate(Channel.java:1038)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:96)
Finished: FAILURE
Кто-нибудь использует плагин Artifactory Jenkins для создания своих проектов NPM по сценариям конвейера? Если да, можете ли вы поделиться своей конфигурацией, пожалуйста? Большое спасибо.