{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":22351349,"defaultBranch":"master","name":"gate","ownerLogin":"spinnaker","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-07-28T17:27:56.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/7634182?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1713385779.0","currentOid":""},"activityList":{"items":[{"before":"070213f2068464b27f0e4aaa1dd2707949a78e53","after":"487f0d32595bdcab1d3cfc33ceba70a1d0ad6434","ref":"refs/heads/master","pushedAt":"2024-05-14T15:47:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"fix(web/test): stop leaking system properties from FunctionalSpec (#1798)\n\nWhen they leak, other tests fail with errors like:\n\nMainSpec > startupTest() FAILED\n java.lang.IllegalStateException: Failed to load ApplicationContext\n at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132)\n at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)\n at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)\n at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)\n at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)\n at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance(SpringExtension.java:138)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$6(ClassBasedTestDescriptor.java:350)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable(ClassBasedTestDescriptor.java:355)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$7(ClassBasedTestDescriptor.java:350)\n at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)\n at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)\n at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)\n at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)\n at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)\n at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312)\n at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)\n at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:734)\n at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors(ClassBasedTestDescriptor.java:349)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$4(ClassBasedTestDescriptor.java:270)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance(ClassBasedTestDescriptor.java:269)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$2(ClassBasedTestDescriptor.java:259)\n at java.base/java.util.Optional.orElseGet(Optional.java:369)\n at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$3(ClassBasedTestDescriptor.java:258)\n at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances(TestInstancesProvider.java:31)\n at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0(TestMethodTestDescriptor.java:101)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:100)\n at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare(TestMethodTestDescriptor.java:65)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$1(NodeTestTask.java:111)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.prepare(NodeTestTask.java:111)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:79)\n at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)\n at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)\n at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)\n at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)\n at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)\n at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)\n at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)\n at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)\n at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:32)\n at org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\n at org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:51)\n at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:108)\n at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)\n at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)\n at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)\n at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)\n at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:96)\n at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:75)\n at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:99)\n at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:79)\n at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:75)\n at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)\n at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.base/java.lang.reflect.Method.invoke(Method.java:566)\n at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)\n at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)\n at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)\n at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)\n at com.sun.proxy.$Proxy2.stop(Unknown Source)\n at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)\n at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)\n at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)\n at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)\n at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)\n at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)\n at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)\n at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)\n at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)\n\n Caused by:\n org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'applicationController': Unsatisfied dependency expressed through field 'applicationService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'applicationService' defined in file [/Users/dbyron/src/spinnaker/salesforce/gate/gate-web/build/classes/groovy/main/com/netflix/spinnaker/gate/services/ApplicationService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clouddriverServiceSelector' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Unsatisfied dependency expressed through method 'clouddriverServiceSelector' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clouddriverService' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.spinnaker.gate.services.internal.ClouddriverService]: Factory method 'clouddriverService' threw exception; nested exception is com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:659)\n at app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:639)\n at app//org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)\n at app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:953)\n at app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)\n at app//org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)\n at app//org.springframework.boot.SpringApplication.refresh(SpringApplication.java:780)\n at app//org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:453)\n at app//org.springframework.boot.SpringApplication.run(SpringApplication.java:343)\n at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:144)\n at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)\n at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)\n ... 85 more\n\n Caused by:\n org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'applicationService' defined in file [/Users/dbyron/src/spinnaker/salesforce/gate/gate-web/build/classes/groovy/main/com/netflix/spinnaker/gate/services/ApplicationService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clouddriverServiceSelector' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Unsatisfied dependency expressed through method 'clouddriverServiceSelector' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clouddriverService' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.spinnaker.gate.services.internal.ClouddriverService]: Factory method 'clouddriverService' threw exception; nested exception is com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)\n at app//org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:229)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1372)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1222)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n at app//org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)\n at app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:656)\n ... 104 more\n\n Caused by:\n org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clouddriverServiceSelector' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Unsatisfied dependency expressed through method 'clouddriverServiceSelector' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clouddriverService' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.spinnaker.gate.services.internal.ClouddriverService]: Factory method 'clouddriverService' threw exception; nested exception is com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800)\n at app//org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n at app//org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)\n at app//org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)\n at app//org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)\n ... 117 more\n\n Caused by:\n org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'clouddriverService' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.spinnaker.gate.services.internal.ClouddriverService]: Factory method 'clouddriverService' threw exception; nested exception is com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658)\n at app//org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)\n at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n at app//org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1389)\n at app//org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1309)\n at app//org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887)\n at app//org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791)\n ... 131 more\n\n Caused by:\n org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.netflix.spinnaker.gate.services.internal.ClouddriverService]: Factory method 'clouddriverService' threw exception; nested exception is com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)\n at app//org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653)\n ... 145 more\n\n Caused by:\n com.netflix.spinnaker.kork.exceptions.SystemException: No service client provider found for url (http://localhost:7002)\n at app//com.netflix.spinnaker.config.DefaultServiceClientProvider.lambda$findProvider$1(DefaultServiceClientProvider.java:64)\n at java.base@11.0.10/java.util.Optional.orElseThrow(Optional.java:408)\n at app//com.netflix.spinnaker.config.DefaultServiceClientProvider.findProvider(DefaultServiceClientProvider.java:61)\n at app//com.netflix.spinnaker.config.DefaultServiceClientProvider.getService(DefaultServiceClientProvider.java:53)\n at app//com.netflix.spinnaker.gate.config.GateConfig.buildService(GateConfig.groovy:365)\n at app//com.netflix.spinnaker.gate.config.GateConfig.buildService(GateConfig.groovy)\n at app//com.netflix.spinnaker.gate.config.GateConfig.createClient(GateConfig.groovy:335)\n at app//com.netflix.spinnaker.gate.config.GateConfig.createClient(GateConfig.groovy)\n at app//com.netflix.spinnaker.gate.config.GateConfig.clouddriverService(GateConfig.groovy:217)\n at app//com.netflix.spinnaker.gate.config.GateConfig$$EnhancerBySpringCGLIB$$12dec0b7.CGLIB$clouddriverService$36()\n at app//com.netflix.spinnaker.gate.config.GateConfig$$EnhancerBySpringCGLIB$$12dec0b7$$FastClassBySpringCGLIB$$c2c329d3.invoke()\n at app//org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)\n at app//org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)\n at app//com.netflix.spinnaker.gate.config.GateConfig$$EnhancerBySpringCGLIB$$12dec0b7.clouddriverService()\n at java.base@11.0.10/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n at java.base@11.0.10/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n at java.base@11.0.10/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n at java.base@11.0.10/java.lang.reflect.Method.invoke(Method.java:566)\n at app//org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)\n ... 146 more","shortMessageHtmlLink":"fix(web/test): stop leaking system properties from FunctionalSpec (#1798"}},{"before":"0c5e4bce27a8299799bbfac01a85c98d2f0af767","after":"070213f2068464b27f0e4aaa1dd2707949a78e53","ref":"refs/heads/master","pushedAt":"2024-05-10T18:24:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1797)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1797)"}},{"before":"4809af309d421abc7b3cc9da06a9946076ddf4e7","after":"0c5e4bce27a8299799bbfac01a85c98d2f0af767","ref":"refs/heads/master","pushedAt":"2024-05-08T17:51:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"feat(saml): Update SAML to use Spring Security (#1744)\n\nThis updates `gate-saml` to use the built-in SAML support in Spring\nSecurity which uses OpenSAML 4.x. Nearly all the previously supported\nproperties for SAML are still supported, though a couple niche options\nno longer seem to be configurable.\n\nThis also introduces `AuthenticationService`, a variation of\n`PermissionService` which can also return a user's granted authorities\nin one login call. It was also used for exception translation previously\nas retrofit exceptions are not serializable which would cause errors in\nSpring Security authentication failure error handlers, but the\nunderlying exception being thrown has since been updated to avoid that\nproblem.\n\nCo-authored-by: Jason ","shortMessageHtmlLink":"feat(saml): Update SAML to use Spring Security (#1744)"}},{"before":"4cf1b9d876103affc8738877c7fe3064a9c8c57b","after":"4809af309d421abc7b3cc9da06a9946076ddf4e7","ref":"refs/heads/master","pushedAt":"2024-05-01T18:00:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"feat(gha): run integration test in branch builds (#1795)","shortMessageHtmlLink":"feat(gha): run integration test in branch builds (#1795)"}},{"before":"c9339784fd79e185657f1c3932fdd9b8897451d3","after":"4cf1b9d876103affc8738877c7fe3064a9c8c57b","ref":"refs/heads/master","pushedAt":"2024-05-01T16:33:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"feat(build): add gate-integration module to exercise the just-built docker image (#1794)\n\n* feat(docker): add HEALTHCHECK\n\nto facilitate testing container startup\n\n* feat(build): add gate-integration module to exercise the just-built docker image\n\n* feat(gha): run integration test in pr builds\n\nmulti-arch with --load doesn't work, so add a separate step using the local platform to\nmake an image available for testing.\n\nsee docker/buildx#59","shortMessageHtmlLink":"feat(build): add gate-integration module to exercise the just-built d…"}},{"before":"8b9e8cc9cfd92e6cbea5fe70c861b5e54131c295","after":"c9339784fd79e185657f1c3932fdd9b8897451d3","ref":"refs/heads/master","pushedAt":"2024-04-28T03:18:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1793)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1793)"}},{"before":"13382b92944dc12a095a7659e7ab33c94e300c0b","after":"8b9e8cc9cfd92e6cbea5fe70c861b5e54131c295","ref":"refs/heads/master","pushedAt":"2024-04-27T02:24:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1792)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1792)"}},{"before":"74eb5648347e71ce421ee759834f9d4a779f3cd2","after":"13382b92944dc12a095a7659e7ab33c94e300c0b","ref":"refs/heads/master","pushedAt":"2024-04-27T00:44:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1791)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1791)"}},{"before":"fbef4d1b4a1c5c16a3ed5356f99192a596c7adff","after":"ae4dfc5eca9b8d2c4ea3829b064bcccb9dfb0dca","ref":"refs/heads/release-1.33.x","pushedAt":"2024-04-17T00:47:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1790)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1790)"}},{"before":"7e11a38d1643fcd3b2b3f4968c244bf7bdda548c","after":"fbef4d1b4a1c5c16a3ed5356f99192a596c7adff","ref":"refs/heads/release-1.33.x","pushedAt":"2024-04-16T23:55:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1789)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1789)"}},{"before":null,"after":"74eb5648347e71ce421ee759834f9d4a779f3cd2","ref":"refs/heads/release-1.34.x","pushedAt":"2024-04-16T23:54:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dbyron-sf","name":"David Byron","path":"/dbyron-sf","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/82477955?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1788)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1788)"}},{"before":"8d7be108561d33ced05060b1ccef325cc391e1d2","after":"74eb5648347e71ce421ee759834f9d4a779f3cd2","ref":"refs/heads/master","pushedAt":"2024-04-16T22:30:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1788)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1788)"}},{"before":"cc1dca421925c33b6f78d95a3d745ad959d9ab54","after":"8d7be108561d33ced05060b1ccef325cc391e1d2","ref":"refs/heads/master","pushedAt":"2024-04-06T04:26:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1787)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1787)"}},{"before":"b519b9198491a5817f54b300900e5ffcc9380dac","after":"cc1dca421925c33b6f78d95a3d745ad959d9ab54","ref":"refs/heads/master","pushedAt":"2024-04-02T20:29:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1786)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1786)"}},{"before":"3383e775e65a58f2499273fbf802ff5ae6efc081","after":"b519b9198491a5817f54b300900e5ffcc9380dac","ref":"refs/heads/master","pushedAt":"2024-04-02T19:25:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1785)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1785)"}},{"before":"f108416eae73fd37025e69dab4f498e6297c0233","after":"3383e775e65a58f2499273fbf802ff5ae6efc081","ref":"refs/heads/master","pushedAt":"2024-04-02T16:26:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"refactor(redis): moving config to a new class (#1781)","shortMessageHtmlLink":"refactor(redis): moving config to a new class (#1781)"}},{"before":"a438159b4afd942667cfb868af7e70cb8ae6feb0","after":"f108416eae73fd37025e69dab4f498e6297c0233","ref":"refs/heads/master","pushedAt":"2024-04-02T13:31:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependency): upgrade kotlin to 1.6.21 in gate along with kork (#1783)","shortMessageHtmlLink":"chore(dependency): upgrade kotlin to 1.6.21 in gate along with kork (#…"}},{"before":"7b3edc436fd1f8db8c9212a1433461d2d4fc9af3","after":"a438159b4afd942667cfb868af7e70cb8ae6feb0","ref":"refs/heads/master","pushedAt":"2024-04-02T13:07:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1784)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1784)"}},{"before":"c0b24caa11987936656fb496cda488c5e455489a","after":null,"ref":"refs/heads/dependabot/github_actions/softprops/action-gh-release-2","pushedAt":"2024-04-01T23:45:35.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"}},{"before":"d59518c05e5b612e0f6370448c1ad92b24edbdd1","after":"7b3edc436fd1f8db8c9212a1433461d2d4fc9af3","ref":"refs/heads/master","pushedAt":"2024-04-01T23:45:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(deps): bump softprops/action-gh-release from 1 to 2 (#1782)\n\nBumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 1 to 2.\n- [Release notes](https://github.com/softprops/action-gh-release/releases)\n- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/softprops/action-gh-release/compare/v1...v2)\n\n---\nupdated-dependencies:\n- dependency-name: softprops/action-gh-release\n dependency-type: direct:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): bump softprops/action-gh-release from 1 to 2 (#1782)"}},{"before":null,"after":"c0b24caa11987936656fb496cda488c5e455489a","ref":"refs/heads/dependabot/github_actions/softprops/action-gh-release-2","pushedAt":"2024-04-01T23:27:07.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"chore(deps): bump softprops/action-gh-release from 1 to 2\n\nBumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 1 to 2.\n- [Release notes](https://github.com/softprops/action-gh-release/releases)\n- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/softprops/action-gh-release/compare/v1...v2)\n\n---\nupdated-dependencies:\n- dependency-name: softprops/action-gh-release\n dependency-type: direct:production\n update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"chore(deps): bump softprops/action-gh-release from 1 to 2"}},{"before":"d3d55ad5469c4f2f9c013e7bcc8d92c1ed6df957","after":"d59518c05e5b612e0f6370448c1ad92b24edbdd1","ref":"refs/heads/master","pushedAt":"2024-03-26T23:44:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"fix(redis): circular dependencies (#1780)","shortMessageHtmlLink":"fix(redis): circular dependencies (#1780)"}},{"before":"1edd595a1908d018dda2019cec4269a30310f504","after":null,"ref":"refs/heads/mergify/bp/release-1.32.x/pr-1737","pushedAt":"2024-03-25T21:58:03.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"}},{"before":"a40c30f20260911034308f0ee7401a1721146293","after":"17f68c4c985e16bc9dadf90ab604eae015e38604","ref":"refs/heads/release-1.32.x","pushedAt":"2024-03-25T21:57:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"fix(core): RetrofitError thrown on login (#1737) (#1779)\n\nThis fixes a regression from when PermissionService was converted from\nGroovy to Java. Ideally, we'd remove the extra parameter from\nFiatService directly, but that requires patching Fiat first, something\nthat'll be easier to do when we migrate to the monorepo.\n\n(cherry picked from commit 5f73a67b3de899a8d519d225f657b5d81e63c44a)\n\nCo-authored-by: Matt Sicker ","shortMessageHtmlLink":"fix(core): RetrofitError thrown on login (#1737) (#1779)"}},{"before":null,"after":"1edd595a1908d018dda2019cec4269a30310f504","ref":"refs/heads/mergify/bp/release-1.32.x/pr-1737","pushedAt":"2024-03-25T21:49:41.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"fix(core): RetrofitError thrown on login (#1737)\n\nThis fixes a regression from when PermissionService was converted from\nGroovy to Java. Ideally, we'd remove the extra parameter from\nFiatService directly, but that requires patching Fiat first, something\nthat'll be easier to do when we migrate to the monorepo.\n\n(cherry picked from commit 5f73a67b3de899a8d519d225f657b5d81e63c44a)","shortMessageHtmlLink":"fix(core): RetrofitError thrown on login (#1737)"}},{"before":"c7c459242cc18e4d487c6afe803b923ba81a7ca9","after":"d3d55ad5469c4f2f9c013e7bcc8d92c1ed6df957","ref":"refs/heads/master","pushedAt":"2024-03-21T16:45:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1778)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1778)"}},{"before":"64afe5dd47c321b793bf9bfe136e9e4957d6b591","after":"c7c459242cc18e4d487c6afe803b923ba81a7ca9","ref":"refs/heads/master","pushedAt":"2024-03-12T20:07:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1777)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1777)"}},{"before":"7019150e16ca0a8bd0971075672495bf77070287","after":"64afe5dd47c321b793bf9bfe136e9e4957d6b591","ref":"refs/heads/master","pushedAt":"2024-03-12T19:15:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1776)\n\n* chore(dependencies): Autobump korkVersion\n\n* fix(test/core): refactor constructor by passing context to HttpSecurity instance updated with spring boot 2.6.x\n\nWhile upgrading spring boot 2.6.15 and spring cloud 2021.0.8, encounter below errors during execution of tests under gate-core modules:\n```\nCannot invoke \"org.springframework.context.ApplicationContext.getBeanNamesForType(java.lang.Class)\" because \"context\" is null\njava.lang.NullPointerException: Cannot invoke \"org.springframework.context.ApplicationContext.getBeanNamesForType(java.lang.Class)\" because \"context\" is null\n\tat org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer.(ExpressionUrlAuthorizationConfigurer.java:109)\n\tat org.springframework.security.config.annotation.web.builders.HttpSecurity.authorizeRequests(HttpSecurity.java:1265)\n\tat com.netflix.spinnaker.gate.config.AuthConfig.configure(AuthConfig.java:76)\n\tat com.netflix.spinnaker.gate.config.AuthConfigTest.test webhooks are unauthenticated by default(AuthConfigTest.groovy:51)\n\nCannot invoke \"org.springframework.context.ApplicationContext.getBeanNamesForType(java.lang.Class)\" because \"context\" is null\njava.lang.NullPointerException: Cannot invoke \"org.springframework.context.ApplicationContext.getBeanNamesForType(java.lang.Class)\" because \"context\" is null\n\tat org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer.(ExpressionUrlAuthorizationConfigurer.java:109)\n\tat org.springframework.security.config.annotation.web.builders.HttpSecurity.authorizeRequests(HttpSecurity.java:1265)\n\tat com.netflix.spinnaker.gate.config.AuthConfig.configure(AuthConfig.java:76)\n\tat com.netflix.spinnaker.gate.config.AuthConfigTest.test webhooks can be configured to be authenticated(AuthConfigTest.groovy:86)\n```\nAs per the reference given [here](https://stackoverflow.com/questions/71322261/nullpointerexception-at-org-springframework-security-config-annotation-web-confi), the implementation of spring-security-config got changed from 5.5.x to 5.6.x and it must require the ApplicationContext object. So, in order to fix this issue added a map containing ApplicationContext.class and its object to the constructor.\n\n* fix(tests): fix enableRedisKeyspaceNotificationsInitializer bean creation issue during upgrade to spring boot 2.6.x\n\nWhile upgrading spring boot 2.6.15 and spring cloud 2021.0.8, encounter below errors during execution of tests under gate-api-tck and gate-plugins-test modules:\n```\nFailed to load ApplicationContext\njava.lang.IllegalStateException: Failed to load ApplicationContext\n\tat org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98)\n\tat org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)\n\tat org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)\n\tat org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)\n\tat org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)\n\tat com.netflix.spinnaker.gate.plugins.test.GatePluginsTest$tests$1$1$invoke$$inlined$serviceFixture$1.invoke(PluginsTck.kt:78)\n\tat com.netflix.spinnaker.gate.plugins.test.GatePluginsTest$tests$1$1$invoke$$inlined$serviceFixture$1.invoke(PluginsTck.kt:76)\n\t...\nCaused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource [com/netflix/spinnaker/gate/config/GateConfig.class]: Invocation of init method failed; nested exception is org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n\tat app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n\tat app//org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)\n\tat app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)\n\tat app//org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)\n\tat app//org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)\n\tat app//org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:423)\n\tat app//org.springframework.boot.SpringApplication.run(SpringApplication.java:307)\n\tat app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:148)\n\tat app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)\n\tat app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)\n\t... 171 more\nCaused by: org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool\n\tat app//org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:292)\n\tat app//org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:514)\n\tat app//org.springframework.session.data.redis.config.annotation.web.http.RedisHttpSessionConfiguration$EnableRedisKeyspaceNotificationsInitializer.afterPropertiesSet(RedisHttpSessionConfiguration.java:331)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)\n\t... 186 more\nCaused by: redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool\n\tat app//redis.clients.jedis.util.Pool.getResource(Pool.java:84)\n\tat app//redis.clients.jedis.JedisPool.getResource(JedisPool.java:370)\n\tat app//redis.clients.jedis.JedisPool.getResource(JedisPool.java:15)\n\tat app//org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:283)\n\t... 190 more\nCaused by: redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.\n\tat app//redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:110)\n\tat app//redis.clients.jedis.Connection.connect(Connection.java:226)\n\tat app//redis.clients.jedis.BinaryClient.connect(BinaryClient.java:140)\n\tat app//redis.clients.jedis.BinaryJedis.connect(BinaryJedis.java:310)\n\tat app//redis.clients.jedis.BinaryJedis.initializeFromClientConfig(BinaryJedis.java:88)\n\tat app//redis.clients.jedis.BinaryJedis.(BinaryJedis.java:293)\n\tat app//redis.clients.jedis.Jedis.(Jedis.java:169)\n\tat app//redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:177)\n\tat app//org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:571)\n\tat app//org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:298)\n\tat app//org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:223)\n\tat app//redis.clients.jedis.util.Pool.getResource(Pool.java:75)\n\t... 193 more\nCaused by: java.net.ConnectException: Connection refused\n\tat java.base/sun.nio.ch.Net.pollConnect(Native Method)\n\tat java.base/sun.nio.ch.Net.pollConnectNow(Net.java:672)\n\tat java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:547)\n\tat java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:602)\n\tat java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)\n\tat java.base/java.net.Socket.connect(Socket.java:633)\n\tat redis.clients.jedis.DefaultJedisSocketFactory.createSocket(DefaultJedisSocketFactory.java:80)\n\t... 204 more\n```\nIn order to fix this issue add `@TestConfiguration` to create the required beans for initialization of `enableRedisKeyspaceNotificationsInitializer` bean.\n\n* refactor(web/test): remove circular reference from GateConfig class identified during upgrade to spring boot 2.6.x\n\nWhile upgrading spring boot 2.6.15 and spring cloud 2021.0.8, encounter below errors in gate-web module during gate-web:test task execution and 17 tests fail with similar error:\n```\nFailed to load ApplicationContext\njava.lang.IllegalStateException: Failed to load ApplicationContext\n\tat org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:98)\n\tat org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:124)\n\tat org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)\n\tat org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)\n\tat org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:248)\n\tat org.spockframework.spring.SpringTestContextManager.prepareTestInstance(SpringTestContextManager.java:56)\n\tat org.spockframework.spring.SpringInterceptor.interceptInitializerMethod(SpringInterceptor.java:46)\n\tat org.spockframework.runtime.extension.AbstractMethodInterceptor.intercept(AbstractMethodInterceptor.java:24)\n\tat org.spockframework.runtime.extension.MethodInvocation.proceed(MethodInvocation.java:101)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$prepare$2(NodeTestTask.java:123)\n\tat org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.prepare(NodeTestTask.java:123)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:90)\n\tat java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\n\tat org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\n\tat org.spockframework.runtime.model.MethodInfo.invoke(MethodInfo.java:148)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\n\tat org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\n\tat java.base/java.util.ArrayList.forEach(ArrayList.java:1511)\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)\n\tat org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)\n\tat org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)\n\tat org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)\n\tat org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)\n\tat org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)\n\tat org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)\n\tat org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)\n\tat org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:107)\n\tat org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:88)\n\tat org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:54)\n\tat org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:67)\n\tat org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:52)\n\tat org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:114)\n\tat org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:86)\n\tat org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute(DefaultLauncherSession.java:86)\n\tat org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:53)\n\tat org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses(JUnitPlatformTestClassProcessor.java:99)\n\tat org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000(JUnitPlatformTestClassProcessor.java:79)\n\tat org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop(JUnitPlatformTestClassProcessor.java:75)\n\tat org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)\n\tat org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)\n\tat org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)\n\tat org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)\n\tat org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)\n\tat org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)\n\tat org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)\n\tat org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)\n\tat org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)\n\tat org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)\n\tat org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)\n\tat org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)\n\tat worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)\n\tat worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)\nCaused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'gateConfig': Unsatisfied dependency expressed through method 'setConfigureRedisAction' parameter 0; nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'gateConfig': Requested bean is currently in creation: Is there an unresolvable circular reference?\n\tat app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.resolveMethodArguments(AutowiredAnnotationBeanPostProcessor.java:768)\n\tat app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:720)\n\tat app//org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)\n\tat app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:399)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n\tat app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n\tat app//org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)\n\tat app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:920)\n\tat app//org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)\n\tat app//org.springframework.boot.SpringApplication.refresh(SpringApplication.java:745)\n\tat app//org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:423)\n\tat app//org.springframework.boot.SpringApplication.run(SpringApplication.java:307)\n\tat app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:148)\n\tat app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:141)\n\tat app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:90)\n\t... 61 more\nCaused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'gateConfig': Requested bean is currently in creation: Is there an unresolvable circular reference?\n\tat app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.beforeSingletonCreation(DefaultSingletonBeanRegistry.java:355)\n\tat app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:227)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n\tat app//org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:410)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)\n\tat app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)\n\tat app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)\n\tat app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)\n\tat app//org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)\n\tat app//org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)\n\tat app//org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)\n\tat app//org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.resolveMethodArguments(AutowiredAnnotationBeanPostProcessor.java:760)\n\t... 80 more\n```\nand\n\n```\nError starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.\n2024-01-19 16:03:05.279 ERROR 705260 --- [ Test worker] o.s.b.d.LoggingFailureAnalysisReporter : []\n\n***************************\nAPPLICATION FAILED TO START\n***************************\n\nDescription:\n\nThe dependencies of some of the beans in the application context form a cycle:\n\n┌──->──┐\n| gateConfig\n└──<-──┘\n\nAction:\n\nRelying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true.\n\n2024-01-19 16:03:05.283 ERROR 705260 --- [ Test worker] o.s.test.context.TestContextManager : [] Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener@e044b4a] to prepare test instance [com.netflix.spinnaker.gate.config.GateCorsAllowedOriginConfigSpec@7f8e4389]\njava.lang.IllegalStateException: Failed to load ApplicationContext\n...\n```\nThe root cause of circular reference identification is new feature \"circular reference prohibition\" introduced in [Spring Boot 2.6.x](https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.6-Release-Notes#circular-references-prohibited-by-default).\nTo fix this issue refactoring the GateConfig class with explicit setConfigureRedisAction() setter.\n\n---------\n\nCo-authored-by: root \nCo-authored-by: j-sandy <30489233+j-sandy@users.noreply.github.com>","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1776)"}},{"before":"b7a1f83719e430f00a052c5251984f04e7cb58a8","after":"7019150e16ca0a8bd0971075672495bf77070287","ref":"refs/heads/master","pushedAt":"2024-03-12T16:21:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump korkVersion (#1775)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump korkVersion (#1775)"}},{"before":"5b4a9e34cf0ce32012db6546122deb46b39f219f","after":"a40c30f20260911034308f0ee7401a1721146293","ref":"refs/heads/release-1.32.x","pushedAt":"2024-03-08T19:17:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mergify[bot]","name":null,"path":"/apps/mergify","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/10562?s=80&v=4"},"commit":{"message":"chore(dependencies): Autobump fiatVersion (#1774)\n\nCo-authored-by: root ","shortMessageHtmlLink":"chore(dependencies): Autobump fiatVersion (#1774)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAESad8agA","startCursor":null,"endCursor":null}},"title":"Activity · spinnaker/gate"}