spinnaker-plugins / aws-lambda-deployment-plugin-spinnaker

Spinnaker plugin to support deployment of AWS Lambda functions via Spinnaker pipelines
Apache License 2.0
23 stars 22 forks source link

java.lang.IllegalAccessError in class LambdaCacheRefreshTask for CloudDriverConfigurationProperties.getCloudDriverBaseUrl() #125

Open jaredstehler opened 1 year ago

jaredstehler commented 1 year ago

After upgrading to spinnaker 1.29.0, seeing lambda deployments hanging on the "Lambda Cache Refresh Task" step, with the following error in orca logs. Verified this is still an issue with version 1.0.10 and 1.0.11 of this plugin.

2022-10-21 03:12:45.004 ERROR 1 --- [    handlers-20] com.netflix.spinnaker.q.QueueProcessor   : [] Unhandled throwable from RunTask(executionType=pipeline, executionId=01GFW8EJ2DJFGEC41VQKV1D09Z, application=imlporgmapupdate, stageId=01GFW8EJC3VCMGFMZJP7SB02A9, taskId=1, taskType=class com.amazon.aws.spinnaker.plugin.lambda.verify.LambdaCacheRefreshTask)
java.lang.IllegalAccessError: class com.amazon.aws.spinnaker.plugin.lambda.verify.LambdaCacheRefreshTask tried to access method 'java.lang.String com.netflix.spinnaker.orca.clouddriver.config.CloudDriverConfigurationProperties.getCloudDriverBaseUrl()' (com.amazon.aws.spinnaker.plugin.lambda.verify.LambdaCacheRefreshTask is in unnamed module of loader org.pf4j.PluginClassLoader @6a00b08c; com.netflix.spinnaker.orca.clouddriver.config.CloudDriverConfigurationProperties is in unnamed module of loader 'app')
    at com.amazon.aws.spinnaker.plugin.lambda.verify.LambdaCacheRefreshTask.forceCacheRefresh(LambdaCacheRefreshTask.java:93)
    at com.amazon.aws.spinnaker.plugin.lambda.verify.LambdaCacheRefreshTask.execute(LambdaCacheRefreshTask.java:68)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1$1$1.invoke(RunTaskHandler.kt:150)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1$1$1.invoke(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withLoggingContext(RunTaskHandler.kt:428)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.access$withLoggingContext(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1$1.invoke(RunTaskHandler.kt:106)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1$1.invoke(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.AuthenticationAware$sam$java_util_concurrent_Callable$0.call(AuthenticationAware.kt)
    at com.netflix.spinnaker.security.AuthenticatedRequest.lambda$wrapCallableForPrincipal$0(AuthenticatedRequest.java:272)
    at com.netflix.spinnaker.orca.q.handler.AuthenticationAware$DefaultImpls.withAuth(AuthenticationAware.kt:46)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withAuth(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1.invoke(RunTaskHandler.kt:105)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$handle$1.invoke(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$withTask$1.invoke(RunTaskHandler.kt:256)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler$withTask$1.invoke(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$withTask$1.invoke(OrcaMessageHandler.kt:69)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$withTask$1.invoke(OrcaMessageHandler.kt:46)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$withStage$1.invoke(OrcaMessageHandler.kt:86)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$withStage$1.invoke(OrcaMessageHandler.kt:46)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$DefaultImpls.withExecution(OrcaMessageHandler.kt:96)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withExecution(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$DefaultImpls.withStage(OrcaMessageHandler.kt:75)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withStage(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$DefaultImpls.withTask(OrcaMessageHandler.kt:61)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withTask(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.withTask(RunTaskHandler.kt:245)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.handle(RunTaskHandler.kt:102)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.handle(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.q.MessageHandler$DefaultImpls.invoke(MessageHandler.kt:36)
    at com.netflix.spinnaker.orca.q.handler.OrcaMessageHandler$DefaultImpls.invoke(OrcaMessageHandler.kt)
    at com.netflix.spinnaker.orca.q.handler.RunTaskHandler.invoke(RunTaskHandler.kt:76)
    at com.netflix.spinnaker.orca.q.audit.ExecutionTrackingMessageHandlerPostProcessor$ExecutionTrackingMessageHandlerProxy.invoke(ExecutionTrackingMessageHandlerPostProcessor.kt:72)
    at com.netflix.spinnaker.q.QueueProcessor$callback$1$1.run(QueueProcessor.kt:90)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
jaredstehler commented 1 year ago

i believe this is related to a change in orca, will see about making a PR in there..

mad-briller commented 1 year ago

any workaround for this issue? it appears that the pr to revert the incorrect change has been merged but not released yet unfortunately

mad-briller commented 1 year ago

https://spinnaker.io/changelogs/1.29.1-changelog/

released in 1.29.1 of spinnaker!