Gallardot commented on code in PR #14555:
URL: 
https://github.com/apache/dolphinscheduler/pull/14555#discussion_r1273720149


##########
.github/workflows/e2e-k8s.yml:
##########
@@ -0,0 +1,188 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+on:
+  pull_request:
+  push:
+    branches:
+      - dev
+
+name: E2E-K8S
+
+concurrency:
+  group: E2E-K8S-${{ github.event.pull_request.number || github.ref }}
+  cancel-in-progress: true
+
+
+jobs:
+  paths-filter:
+    name: E2E-K8S-Path-Filter
+    runs-on: ubuntu-latest
+    outputs:
+      not-ignore: ${{ steps.filter.outputs.not-ignore }}
+    steps:
+      - uses: actions/checkout@v2
+      - uses: dorny/paths-filter@b2feaf19c27470162a626bd6fa8438ae5b263721
+        id: filter
+        with:
+          filters: |
+            not-ignore:
+              - '!(docs/**)'
+  e2e-k8s:
+    name: E2E-K8S-Execute
+    needs: paths-filter
+    if: ${{ (needs.paths-filter.outputs.not-ignore == 'true') || 
(github.event_name == 'push') }}
+    runs-on: ubuntu-latest
+    timeout-minutes: 20
+    steps:
+      - uses: actions/checkout@v2
+        with:
+          submodules: true
+      - name: Build Image
+        run: |
+          ./mvnw -B clean package \
+          -Dmaven.test.skip \
+          -Dmaven.javadoc.skip \
+          -Dspotless.skip=true \
+          -Dmaven.checkstyle.skip \
+          -Dmaven.deploy.skip \
+          -Ddocker.push.skip=true \
+          -Pdocker,release -Ddocker.tag=ci \
+          -pl org.apache.dolphinscheduler:dolphinscheduler-alert-server \
+          -pl dolphinscheduler-tools \
+          -pl dolphinscheduler-api \
+          -pl dolphinscheduler-master \
+          -pl dolphinscheduler-worker -am
+      - name: Create k8s Kind Cluster
+        run: |
+          # install kubectl
+          curl -LO "https://dl.k8s.io/release/$(curl -L -s 
https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
+          sudo chmod +x kubectl /usr/local/bin/kubectl
+          sudo mv kubectl /usr/local/bin/kubectl
+
+          # install kind
+          curl -LO 
https://github.com/kubernetes-sigs/kind/releases/download/v0.20.0/kind-linux-amd64
+          sudo chmod +x kind-linux-amd64
+          sudo mv kind-linux-amd64 /usr/local/bin/kind
+          kind version
+
+          # create kind cluster
+          kind_node_image="kindest/node:v1.23.17"
+          echo "Kubernetes version: ${kind_node_image}"
+          kind create cluster --name dolphinscheduler --image 
${kind_node_image}
+          kubectl version --short
+          kubectl get all --all-namespaces
+      - name: Load images
+        run: |
+          components=("master" "worker" "api" "tools" "alert-server")
+          for component in "${components[@]}"; do
+            kind load docker-image apache/dolphinscheduler-${component}:ci 
--name dolphinscheduler
+          done
+      - name: Helm install dolphinscheduler
+        working-directory: ${{ github.workspace 
}}/deploy/kubernetes/dolphinscheduler
+        run: |
+          curl 
https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
+          helm repo add bitnami https://charts.bitnami.com/bitnami
+          helm dependency update .
+          helm upgrade --install --create-namespace -n dolphinscheduler 
dolphinscheduler . -f - <<EOF
+          image:
+            registry: apache
+            tag: ci
+          conf:
+            common:
+              resource.azure.client.id: minioadmin

Review Comment:
   ```
   [INFO] 2023-07-21 23:09:36.524 +0800 
org.apache.dolphinscheduler.remote.factory.NettyRemotingClientFactory:[32] - 
NettyRemotingClient initialized with config: NettyClientConfig(workerThreads=8, 
tcpNoDelay=true, soKeepalive=true, sendBufferSize=65535, 
receiveBufferSize=65535, connectTimeoutMillis=3000)
   [INFO] 2023-07-21 23:09:37.645 +0800 
com.azure.core.implementation.ReflectionUtils:[542] - Unable to create 
MethodHandles to use Java 9+ MethodHandles.privateLookupIn. Will attempt to 
fallback to using the package-private constructor.
   [WARN] 2023-07-21 23:09:37.648 +0800 
com.azure.identity.ClientSecretCredentialBuilder:[500] - Must provide non-null 
values for clientId, tenantId, clientSecret properties in 
ClientSecretCredentialBuilder
   [WARN] 2023-07-21 23:09:37.649 +0800 
org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext:[591]
 - Exception encountered during context initialization - cancelling refresh 
attempt: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'cloudController': Injection of resource dependencies 
failed; nested exception is 
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'cloudServiceImpl' defined in URL 
[jar:file:/opt/dolphinscheduler/libs/dolphinscheduler-api-dev-SNAPSHOT.jar!/org/apache/dolphinscheduler/api/service/impl/CloudServiceImpl.class]:
 Instantiation of bean failed; nested exception is 
java.lang.ExceptionInInitializerError
   [INFO] 2023-07-21 23:09:37.657 +0800 
org.apache.dolphinscheduler.remote.NettyRemotingClient:[340] - netty client 
closed
   [INFO] 2023-07-21 23:09:37.658 +0800 
org.apache.dolphinscheduler.service.log.LogClient:[239] - LogClientService 
closed
   [INFO] 2023-07-21 23:09:37.661 +0800 
org.apache.curator.framework.imps.CuratorFrameworkImpl:[998] - 
backgroundOperationsLoop exiting
   [WARN] 2023-07-21 23:09:37.818 +0800 
org.springframework.beans.factory.support.DisposableBeanAdapter:[248] - 
Invocation of close method failed on bean with name 'springApplicationContext': 
org.springframework.beans.factory.BeanCreationNotAllowedException: Error 
creating bean with name 'applicationAvailability': Singleton bean creation not 
allowed while singletons of this factory are in destruction (Do not request a 
bean from a BeanFactory in a destroy method implementation!)
   [INFO] 2023-07-21 23:09:37.822 +0800 
com.zaxxer.hikari.HikariDataSource:[350] - DolphinScheduler - Shutdown 
initiated...
   [INFO] 2023-07-21 23:09:37.831 +0800 
com.zaxxer.hikari.HikariDataSource:[352] - DolphinScheduler - Shutdown 
completed.
   [INFO] 2023-07-21 23:09:37.837 +0800 org.eclipse.jetty.server.session:[149] 
- node0 Stopped scavenging
   [INFO] 2023-07-21 23:09:37.838 +0800 
org.eclipse.jetty.server.handler.ContextHandler:[1159] - Stopped 
o.s.b.w.e.j.JettyEmbeddedWebAppContext@da67c46{application,/dolphinscheduler,[file:///tmp/jetty-docbase.12345.4698056214290860435/,
 
jar:file:/opt/dolphinscheduler/libs/swagger-ui-4.11.1.jar!/META-INF/resources],STOPPED}
   [INFO] 2023-07-21 23:09:37.872 +0800 
org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLoggingListener:[136]
 -
   
   Error starting ApplicationContext. To display the conditions report re-run 
your application with 'debug' enabled.
   [ERROR] 2023-07-21 23:09:37.923 +0800 
org.springframework.boot.SpringApplication:[824] - Application run failed
   org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'cloudController': Injection of resource dependencies failed; nested 
exception is org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'cloudServiceImpl' defined in URL 
[jar:file:/opt/dolphinscheduler/libs/dolphinscheduler-api-dev-SNAPSHOT.jar!/org/apache/dolphinscheduler/api/service/impl/CloudServiceImpl.class]:
 Instantiation of bean failed; nested exception is 
java.lang.ExceptionInInitializerError
        at 
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:332)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
        at 
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
        at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
        at 
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147)
        at 
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734)
        at 
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408)
        at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
        at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:1306)
        at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:1295)
        at 
org.apache.dolphinscheduler.api.ApiApplicationServer.main(ApiApplicationServer.java:54)
   Caused by: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'cloudServiceImpl' defined in URL 
[jar:file:/opt/dolphinscheduler/libs/dolphinscheduler-api-dev-SNAPSHOT.jar!/org/apache/dolphinscheduler/api/service/impl/CloudServiceImpl.class]:
 Instantiation of bean failed; nested exception is 
java.lang.ExceptionInInitializerError
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1334)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1232)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at 
org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
        at 
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.autowireResource(CommonAnnotationBeanPostProcessor.java:544)
        at 
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.getResource(CommonAnnotationBeanPostProcessor.java:520)
        at 
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor$ResourceElement.getResourceToInject(CommonAnnotationBeanPostProcessor.java:673)
        at 
org.springframework.beans.factory.annotation.InjectionMetadata$InjectedElement.inject(InjectionMetadata.java:228)
        at 
org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
        at 
org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessProperties(CommonAnnotationBeanPostProcessor.java:329)
        ... 17 common frames omitted
   Caused by: java.lang.ExceptionInInitializerError: null
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at 
org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:211)
        at 
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1326)
        ... 33 common frames omitted
   Caused by: java.lang.IllegalArgumentException: Must provide non-null values 
for clientId, tenantId, clientSecret properties in ClientSecretCredentialBuilder
        at 
com.azure.identity.implementation.util.ValidationUtil.validate(ValidationUtil.java:27)
        at 
com.azure.identity.ClientSecretCredentialBuilder.build(ClientSecretCredentialBuilder.java:74)
        at 
org.apache.dolphinscheduler.api.service.impl.CloudServiceImpl.<clinit>(CloudServiceImpl.java:55)
        ... 40 common frames omitted
   ```
   
   Above is the exception log encountered at that time
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to