Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

citgm-smoker-nobuild fails to start on Node 6 and 8 #1602

Closed
targos opened this issue Nov 25, 2018 · 15 comments
Closed

citgm-smoker-nobuild fails to start on Node 6 and 8 #1602

targos opened this issue Nov 25, 2018 · 15 comments

Comments

@targos
Copy link
Member

targos commented Nov 25, 2018

See the runs from https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker-pipeline/46/console

15:28:19 Started by upstream project "citgm-smoker-pipeline" build number 46
15:28:19 originally caused by:
15:28:19  Started by user Michaël Zasso
15:28:19 [EnvInject] - Loading node environment variables.
15:28:19 Building remotely on test-packetnet-ubuntu1604-x64-1 (Ubuntu Ubuntu-16.04 amd64-Ubuntu jenkins-workspace amd64-Ubuntu-16.04 16.04 amd64) in workspace /home/iojs/build/workspace/citgm-smoker-nobuild
15:28:19 using NODE_VERSION: v8
15:28:19 sliced: 8
15:28:19 FATAL: String index out of range: 2
15:28:19 java.lang.StringIndexOutOfBoundsException: String index out of range: 2
15:28:19 	at java.lang.String.substring(String.java:1963)
15:28:19 	at org.codehaus.groovy.runtime.StringGroovyMethods.getAt(StringGroovyMethods.java:1480)
15:28:19 	at org.codehaus.groovy.runtime.StringGroovyMethods.getAt(StringGroovyMethods.java:1467)
15:28:19 	at org.codehaus.groovy.runtime.dgm$1086.invoke(Unknown Source)
15:28:19 	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:274)
15:28:19 	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:56)
15:28:19 	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
15:28:19 	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
15:28:19 	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
15:28:19 	at Script1.run(Script1.groovy:9)
15:28:19 	at groovy.lang.GroovyShell.evaluate(GroovyShell.java:585)
15:28:19 	at groovy.lang.GroovyShell.evaluate(GroovyShell.java:623)
15:28:19 	at groovy.lang.GroovyShell.evaluate(GroovyShell.java:594)
15:28:19 	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript.evaluate(SecureGroovyScript.java:343)
15:28:19 	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript$evaluate.call(Unknown Source)
15:28:19 	at org.jenkinsci.plugins.ScriptRunner.run(ScriptRunner.groovy:71)
15:28:19 	at org.jenkinsci.plugins.ScriptRunner$run.call(Unknown Source)
15:28:19 	at org.jenkinsci.plugins.GroovyScriptMES.decideOrder(GroovyScriptMES.groovy:62)
15:28:19 	at org.jenkinsci.plugins.GroovyScriptMES$decideOrder.callCurrent(Unknown Source)
15:28:19 	at org.jenkinsci.plugins.BaseMES.run(BaseMES.groovy:51)
15:28:19 	at hudson.matrix.MatrixBuild$MatrixBuildExecution.doRun(MatrixBuild.java:375)
15:28:19 	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504)
15:28:19 	at hudson.model.Run.execute(Run.java:1819)
15:28:19 	at hudson.matrix.MatrixBuild.run(MatrixBuild.java:323)
15:28:19 	at hudson.model.ResourceController.execute(ResourceController.java:97)
15:28:19 	at hudson.model.Executor.run(Executor.java:429)
15:28:19 All downstream projects complete!
15:28:19 Notifying upstream projects of job completion
15:28:19 Join notifier cannot find upstream project: citgm-smoker-pipeline
15:28:19 Finished: FAILURE

/cc @richardlau

@richardlau
Copy link
Member

There is a bug with the groovy script in the job. I tried to fix it as part of #1577 but groovy script edits in Jenkins jobs require admin approval (being a member of citgm-admins is not sufficient).

I can't access the CI at the moment since it's locked down for the security releases.

@richardlau
Copy link
Member

It may be possible to work around the bug by specifying a more exact version (e.g. v8.13.0 instead of v8).

@refack

This comment has been minimized.

@refack
Copy link
Contributor

refack commented Nov 25, 2018

So in Groovy there's a difference between '.' and ".", and .split needs to former. NM.

Well this works:

  def verString = parameters['NODE_VERSION'].toString()
  println "using NODE_VERSION: " + verString
  def sliced = verString.substring(1)
  println "sliced: $sliced"
  def spaced = spaced.replace(".", " ")
  def split = sliced.split()
  println "split : $split"
  nodeMajorVersion = split[0].toInteger()

@refack
Copy link
Contributor

refack commented Nov 25, 2018

And BTW ws fails :(

@refack
Copy link
Contributor

refack commented Nov 25, 2018

BTW2 I restored fetching the groovy script from GitHub which I hacked in #1509 (comment)

@richardlau
Copy link
Member

richardlau commented Nov 25, 2018

Instead of the slicing/replacing, we could always use a regexp to extract the major version. Something like:

def nodeMajorVersion = (verString =~ /v?(\d+)/)[0][1]

@refack
Copy link
Contributor

refack commented Nov 25, 2018

def nodeMajorVersion = (verString =~ /v?(\d+)/)[0][1]

I think I don't like Groovy 😢

IMO what we should do is rename the job Parameters like I did in https://ci.nodejs.org/job/refack-node-test-node-addon-api/, and use numbers instead of strings (with no v), and then update citgm-smoker-pipeline.

@richardlau
Copy link
Member

def nodeMajorVersion = (verString =~ /v?(\d+)/)[0][1]

I think I don't like Groovy 😢

IMO what we should do is rename the job Parameters like I did in https://ci.nodejs.org/job/refack-node-test-node-addon-api/, and use numbers instead of strings (with no v), and then update citgm-smoker-pipeline.

That sounds more or less what I did with the node-report job: #1421

@rvagg
Copy link
Member

rvagg commented Nov 26, 2018

@refack can I get you to hold off on the citgm job testing please? I need to get all these security jobs through and your testing is blocking that. I'd really like a pause on all non-security-release-related CI activity to be honest. There's a ton to do including fixing small bugs across all release lines and getting to citgm when things are stable.

@refack
Copy link
Contributor

refack commented Nov 26, 2018

Abort them. The pipe line just schedules a ton of job.

@rvagg
Copy link
Member

rvagg commented Nov 26, 2018

I feel bad cancelling people's stuff, it's always hard to know how critical something is or how much I'm going to ruin their day. Thanks for cancelling, it turns out that I have a small, but extremely hairy yak to shave and it's taking a lot of jenkins time to get it done.

@lpinca
Copy link
Member

lpinca commented Nov 29, 2018

And BTW ws fails :(

@refack we are testing it in AppVeyor, Node v6, v8, v10, v11 both x86 and x64. Why it fails on CITGM? What tests are failing?

@richardlau
Copy link
Member

BTW2 I restored fetching the groovy script from GitHub which I hacked in #1509 (comment)

Had to fix up the matrix axis name (MACHINE->nodes) to match what the script was expecting: #1632 (comment)

Anyway I think the reported issue has now been fixed?

@targos
Copy link
Member Author

targos commented Dec 11, 2018

Seems fixed indeed

@targos targos closed this as completed Dec 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants