J'exécute ce pipeline simple:
Started by user Paco Running in Durability level: MAX_SURVIVABILITY [Pipeline] Start of Pipeline [Pipeline] node Running on Jenkins in /opt/bitnami/apps/jenkins/jenkins_home/workspace/tespipeline [Pipeline] End of Pipeline an exception which occurred: in field java.util.HashMap.loadFactor in object java.util.HashMap@660dfa72 in field org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.closures in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@5f085500 in object org.jenkinsci.plugins.workflow.cps.CpsThreadGroup@5f085500 Caused: java.lang.IllegalAccessException: Class org.jboss.marshalling.river.RiverMarshaller can not access a member of class java.util.HashMap with modifiers "final" at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:102) at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:296) at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:288) at java.lang.reflect.Field.getFloat(Field.java:645) at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1028) Caused: java.io.InvalidObjectException: Unexpected illegal access exception at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1037) at org.jboss.marshalling.river.RiverObjectOutputStream.defaultWriteObject(RiverObjectOutputStream.java:165) at java.util.HashMap.writeObject(HashMap.java:1360) at sun.reflect.GeneratedMethodAccessor55.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.jboss.marshalling.reflect.JDKSpecific$SerMethods.callWriteObject(JDKSpecific.java:156) at org.jboss.marshalling.reflect.SerializableClass.callWriteObject(SerializableClass.java:191) at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:976) at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854) at org.jboss.marshalling.river.RiverMarshaller.doWriteFields(RiverMarshaller.java:1032) at org.jboss.marshalling.river.RiverMarshaller.doWriteSerializableObject(RiverMarshaller.java:988) at org.jboss.marshalling.river.RiverMarshaller.doWriteObject(RiverMarshaller.java:854) at org.jboss.marshalling.AbstractObjectOutput.writeObject(AbstractObjectOutput.java:58) at org.jboss.marshalling.AbstractMarshaller.writeObject(AbstractMarshaller.java:111) at org.jenkinsci.plugins.workflow.support.pickles.serialization.RiverWriter.lambda$writeObject$0(RiverWriter.java:144) at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:136) at org.jenkinsci.plugins.workflow.support.pickles.serialization.RiverWriter.writeObject(RiverWriter.java:143) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:482) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgram(CpsThreadGroup.java:458) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.saveProgramIfPossible(CpsThreadGroup.java:445) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:372) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$200(CpsThreadGroup.java:83) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:244) at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:232) at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:131) at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28) at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59) 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) Finished: FAILURE
Et j'ai l'erreur suivante au travail:
node ('main') { echo 'Hello World' }
Mon La version de Jenkins est la 2.164.1 (la plus récente), la version du pipeline que j'ai installée est la 2.6, mais j'ai également essayé une précédente.
J'ai aussi essayé avec google sans chance.
Une idée du problème?
3 Réponses :
Tout d'abord, assurez-vous d'avoir déclaré un pipeline
, puis vous pouvez utiliser les étapes
, stage
et étapes
, enfin, lancez votre pipeline
.
Je vous donne le code de test suivant ci-dessous.
pipeline { agent any stages { stage('Build') { steps { echo 'Building..' } } stage('Test') { steps { echo 'Testing..' } } stage('Deploy') { steps { echo 'Deploying....' } } } }
Si vous avez besoin d'utiliser node, vous pouvez utilisez les exemples
J'espère que cela pourra vous aider!
Le script de la question vise à être un pipeline scripté tel qu'il en a l'air.
Votre script n'est pas une syntaxe de pipeline scriptée valide. Voir la documentation
Un nœud
doit contenir une étape
, puis les étapes
node('main'){ stage('Print message'){ echo 'Hello world!' } }
Merci pour la réponse, l'utilisation de ce code échoue également. Il ressemble à quelque chose de version de plugin ou peut-être de nouvelle version de Jenkins
J'ai trouvé la solution, c'était un problème avec la permission de l'utilisateur au niveau SO. J'ai créé une nouvelle instance et y ai ajouté une sauvegarde sans changer l'autorisation de l'utilisateur de l'exécuteur jenkins, et cela fonctionne comme un charme.
Merci à tous pour vos réponses!
Que signifie SO? Souvent, sur ce site, il représente le nom de ce site, StackOverflow. Mais probablement pas dans ce cas. J'ai une erreur similaire et je recherche un correctif. Le travail Jenkins échoue et la pile d'appels comprend des entrées similaires. Mais l'exception dans mon cas est en fait le débordement de pile.
Le déclaratif fonctionne-t-il ou est-ce une erreur similaire à votre script?
Oui c'est le cas. J'ai une autre instance avec une ancienne sauvegarde et cela fonctionne. On dirait que quelque chose est lié à une nouvelle version du plugin Pipeline ou de Jenkins. Je vais essayer de trouver le problème en mettant à jour pas à pas les plugins ainsi que la version Jenkins.