This is an automated email from the ASF dual-hosted git repository.

marat pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git


The following commit(s) were added to refs/heads/main by this push:
     new 85f2d1c3 Update for #771
85f2d1c3 is described below

commit 85f2d1c37193ad093fdb88d8b75f020ece12d0c1
Author: Marat Gubaidullin <[email protected]>
AuthorDate: Thu Jun 15 18:13:40 2023 -0400

    Update for #771
---
 karavan-builder/Dockerfile                         |   8 +-
 karavan-cli/CLI.md                                 |  31 ++
 karavan-cli/pom.xml                                |   4 +-
 .../org/apache/camel/karavan/cli/CommandUtils.java |  34 +-
 .../org/apache/camel/karavan/cli/Constants.java    |   3 +-
 .../org/apache/camel/karavan/cli/KaravanCli.java   |  14 +-
 .../apache/camel/karavan/cli/KaravanConfig.java    |  25 +-
 .../camel/karavan/cli/resources/KaravanSecret.java |   2 +-
 karavan-cli/src/main/resources/dashboard.yaml      | 334 +++++++++++++++++++
 .../main/resources/{tekton.yaml => pipelines.yaml} | 353 ++++++++++++++++++---
 .../resources/quarkus-builder-script-kubernetes.sh |   2 +-
 .../resources/quarkus-builder-script-openshift.sh  |   2 +-
 .../spring-boot-builder-script-kubernetes.sh       |   2 +-
 .../spring-boot-builder-script-openshift.sh        |   2 +-
 14 files changed, 738 insertions(+), 78 deletions(-)

diff --git a/karavan-builder/Dockerfile b/karavan-builder/Dockerfile
index 3f7ee135..477cdaf1 100644
--- a/karavan-builder/Dockerfile
+++ b/karavan-builder/Dockerfile
@@ -3,12 +3,8 @@ FROM jbangdev/jbang-action:0.106.1
 # Add Camel-JBang
 RUN jbang trust add -o --fresh --quiet 
https://github.com/apache/camel/blob/HEAD/dsl/camel-jbang/camel-jbang-main/dist/CamelJBang.java
 
-# Add Maven Daemon
-# ADD 
https://dist.apache.org/repos/dist/release/maven/mvnd/1.0-m6/maven-mvnd-1.0-m6-m39-linux-amd64.zip
 .
-
+# Add Maven
 RUN apt-get update -y && apt-get install maven git -y && apt-get clean         
                     
-    # unzip maven-mvnd-1.0-m6-m39-linux-amd64.zip && \                       
-    # mv maven-mvnd-1.0-m6-m39-linux-amd64/* /opt/mvnd  
 
 WORKDIR /scripts
-ENTRYPOINT ["entrypoint", "-Dcamel.jbang.version=3.20.4", "camel@apache/camel"]
+ENTRYPOINT ["entrypoint", "-Dcamel.jbang.version=3.20.5", "camel@apache/camel"]
diff --git a/karavan-cli/CLI.md b/karavan-cli/CLI.md
new file mode 100644
index 00000000..7f572360
--- /dev/null
+++ b/karavan-cli/CLI.md
@@ -0,0 +1,31 @@
+## Install Karavan with CLI
+
+### Requirements
+1. minikube v1.30+ installed with `--driver=hyperkit`
+
+### Installation
+1. Start minikube
+    ```
+    minikube start --driver=hyperkit
+    ```
+2. Enable registry addon
+    ```
+    minikube addons enable registry
+    ```
+3. Start dashboard (optional)
+    ```
+    minikube dashboard
+    ```
+4. Package karavan-cli
+    ```
+    mvn clean package
+    ```
+5. Install Karavan
+    ```
+    java -jar target/karavan-cli-VERSION.jar --git-repository=$GIT_REPOSITORY 
--git-password=$GIT_TOKEN --git-username=$GIT_USERNAME  --node-port=30777
+    ```
+5. Get karavan service URL
+    ```
+    minikube service karavan --url --namespace karavan
+    ```
+   Use karavan URL to connect to the application
diff --git a/karavan-cli/pom.xml b/karavan-cli/pom.xml
index 9bf406b0..ec4a662f 100644
--- a/karavan-cli/pom.xml
+++ b/karavan-cli/pom.xml
@@ -9,11 +9,11 @@
     <version>3.20.2-SNAPSHOT</version>
     <packaging>jar</packaging>
     <properties>
-        <compiler-plugin.version>3.8.1</compiler-plugin.version>
-        <surefire-plugin.version>3.0.0-M9</surefire-plugin.version>
+        <compiler-plugin.version>3.10.1</compiler-plugin.version>
         <maven.compiler.parameters>true</maven.compiler.parameters>
         <maven.compiler.source>11</maven.compiler.source>
         <maven.compiler.target>11</maven.compiler.target>
+        <surefire-plugin.version>3.0.0-M5</surefire-plugin.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <kubernetes-client.version>6.7.1</kubernetes-client.version>
diff --git 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/CommandUtils.java 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/CommandUtils.java
index 748d684b..c465f48b 100644
--- a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/CommandUtils.java
+++ b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/CommandUtils.java
@@ -28,6 +28,7 @@ import io.fabric8.tekton.pipeline.v1beta1.Task;
 import org.apache.camel.karavan.cli.resources.*;
 
 import java.util.Arrays;
+import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
 
@@ -58,6 +59,7 @@ public class CommandUtils {
                 System.exit(0);
             }
             installTekton(config, client);
+            disableAffinityAssistant(client);
         }
         log("Tekton is installed");
 
@@ -111,7 +113,7 @@ public class CommandUtils {
             createOrReplace(KaravanService.getRoute(config), client);
         }
         log("Karavan is installed");
-        System.out.print("Karavan is starting ");
+        System.out.print("\uD83D\uDC2B Karavan is starting ");
         while (!checkReady(config, client)) {
             try {
                 Thread.sleep(1000);
@@ -132,6 +134,14 @@ public class CommandUtils {
 
     public static boolean tryToCreateKaravanSecrets(KaravanConfig config, 
KubernetesClient client) {
         if (config.gitConfigured()) {
+            if (config.getImageRegistry() == null) {
+                if (config.isOpenShift()) {
+                    
config.setImageRegistry(Constants.DEFAULT_IMAGE_REGISTRY_OPENSHIFT);
+                } else {
+                    Service registryService = 
client.services().inNamespace("kube-system").withName("registry").get();
+                    
config.setImageRegistry(registryService.getSpec().getClusterIP());
+                }
+            }
             if ((config.isAuthOidc() && config.oidcConfigured())
                     || (config.isAuthBasic() && config.getMasterPassword() != 
null && config.getMasterPassword().isEmpty())
                     || (config.getAuth().equals("public"))) {
@@ -167,10 +177,24 @@ public class CommandUtils {
     }
 
     private static void installTekton(KaravanConfig config, KubernetesClient 
client) {
-        log("⏳ Installing Tekton");
-        
client.load(CommandUtils.class.getResourceAsStream("/tekton.yaml")).create().forEach(hasMetadata
 -> {
-            log(" - " + hasMetadata.getKind() + " " + 
hasMetadata.getMetadata().getName());
+        System.out.print("⏳ Installing Tekton");
+        
client.load(CommandUtils.class.getResourceAsStream("/pipelines.yaml")).create().forEach(hasMetadata
 -> {
+            System.out.print(".");
+        });
+        
client.load(CommandUtils.class.getResourceAsStream("/dashboard.yaml")).create().forEach(hasMetadata
 -> {
+            System.out.print(".");
         });
+        System.out.println();
+        log("Tekton is installed");
+    }
+
+    private static void disableAffinityAssistant(KubernetesClient client) {
+        log("⏳ Set disable-affinity-assistant equals 'true'");
+        ConfigMap configMap = 
client.configMaps().inNamespace("tekton-pipelines").withName("feature-flags").get();
+        Map<String, String> data = configMap.getData();
+        data.put("disable-affinity-assistant", "true");
+        configMap.setData(data);
+        client.resource(configMap).createOrReplace();
     }
 
     private static boolean isTektonInstalled(KubernetesClient client) {
@@ -213,7 +237,7 @@ public class CommandUtils {
     }
 
     private static String getErrorMessage(String message) {
-        return "‼\uFE0F" + message;
+        return "‼\uFE0F " + message;
     }
 
     private static boolean isOpenShift(KubernetesClient client) {
diff --git 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/Constants.java 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/Constants.java
index 8aad563b..ce83af9f 100644
--- a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/Constants.java
+++ b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/Constants.java
@@ -22,7 +22,8 @@ public final class Constants {
     public static final String DEFAULT_RUNTIMES = "quarkus,spring-boot";
     public static final String DEFAULT_AUTH = "public";
     public static final String DEFAULT_GIT_PULL_INTERVAL = "off";
-    public static final String DEFAULT_IMAGE_REGISTRY = 
"image-registry.openshift-image-registry.svc:5000";
+    public static final String DEFAULT_IMAGE_REGISTRY_OPENSHIFT = 
"image-registry.openshift-image-registry.svc:5000";
+    public static final String DEFAULT_IMAGE_REGISTRY_MINIKUBE = 
"registry.kube-system.svc.cluster.local";
     public static final int DEFAULT_NODE_PORT = 0;
     public static final int DEFAULT_INSTANCES = 1;
     public static final String DEFAULT_BUILD_IMAGE = 
"ghcr.io/apache/camel-karavan-builder";
diff --git 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanCli.java 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanCli.java
index 5760ea97..11e9e874 100644
--- a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanCli.java
+++ b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanCli.java
@@ -5,7 +5,6 @@ import picocli.CommandLine;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.util.HashMap;
-import java.util.Map;
 import java.util.concurrent.Callable;
 
 @CommandLine.Command(name = "karavan",
@@ -57,11 +56,15 @@ public class KaravanCli implements Callable<Integer> {
     private String gitBranch;
     @CommandLine.Option(names = {"--git-pull"}, description = "Git pull 
interval. Default: off", defaultValue = "off")
     private String gitPullInterval;
-    @CommandLine.Option(names = {"--registry"}, description = "Image 
registry", defaultValue = Constants.DEFAULT_IMAGE_REGISTRY)
+    @CommandLine.Option(names = {"--registry"}, description = "Image registry")
     private String imageRegistry;
+    @CommandLine.Option(names = {"--registry-username"}, description = "Image 
registry username")
+    private String imageRegistryUsername;
+    @CommandLine.Option(names = {"--registry-password"}, description = "Image 
registry password")
+    private String imageRegistryPassword;
 
     @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, 
description = "Display help")
-    private boolean helpRequested = false;
+    private boolean helpRequested;
 
     @Override
     public Integer call() throws Exception {
@@ -86,14 +89,15 @@ public class KaravanCli implements Callable<Integer> {
                 gitPassword,
                 gitBranch,
                 gitPullInterval,
-                imageRegistry
+                imageRegistry,
+                imageRegistryUsername,
+                imageRegistryPassword
         );
         if (yaml) {
             Files.writeString(Path.of(file), 
ResourceUtils.generateResources(config));
         } else {
             CommandUtils.installKaravan(config);
         }
-        System.out.println(masterPassword);
         return 0;
     }
 
diff --git 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanConfig.java 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanConfig.java
index 98658e3e..4c143601 100644
--- a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanConfig.java
+++ b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/KaravanConfig.java
@@ -16,8 +16,6 @@
  */
 package org.apache.camel.karavan.cli;
 
-import picocli.CommandLine;
-
 import java.util.Map;
 import java.util.Objects;
 
@@ -45,12 +43,15 @@ public class KaravanConfig {
     private String gitBranch;
     private String gitPullInterval;
     private String imageRegistry;
+    private String imageRegistryUsername;
+    private String imageRegistryPassword;
 
     public KaravanConfig(String version, String namespace, String environment, 
String runtimes, String auth,
                          int nodePort, int instances, String baseImage, String 
baseBuilderImage, boolean isOpenShift,
                          Map<String, String> labels, String masterPassword, 
String oidcSecret, String oidcServerUrl,
                          String oidcFrontendUrl, String gitRepository, String 
gitUsername, String gitPassword,
-                         String gitBranch, String gitPullInterval, String 
imageRegistry) {
+                         String gitBranch, String gitPullInterval, String 
imageRegistry, String imageRegistryUsername,
+                         String imageRegistryPassword) {
         this.version = version;
         this.namespace = namespace;
         this.environment = environment;
@@ -72,6 +73,8 @@ public class KaravanConfig {
         this.gitBranch = gitBranch;
         this.gitPullInterval = gitPullInterval;
         this.imageRegistry = imageRegistry;
+        this.imageRegistryUsername = imageRegistryUsername;
+        this.imageRegistryPassword = imageRegistryPassword;
     }
 
     public boolean gitConfigured() {
@@ -262,4 +265,20 @@ public class KaravanConfig {
     public void setGitBranch(String gitBranch) {
         this.gitBranch = gitBranch;
     }
+
+    public String getImageRegistryUsername() {
+        return imageRegistryUsername;
+    }
+
+    public void setImageRegistryUsername(String imageRegistryUsername) {
+        this.imageRegistryUsername = imageRegistryUsername;
+    }
+
+    public String getImageRegistryPassword() {
+        return imageRegistryPassword;
+    }
+
+    public void setImageRegistryPassword(String imageRegistryPassword) {
+        this.imageRegistryPassword = imageRegistryPassword;
+    }
 }
diff --git 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/resources/KaravanSecret.java
 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/resources/KaravanSecret.java
index a7e47fed..71eba64f 100644
--- 
a/karavan-cli/src/main/java/org/apache/camel/karavan/cli/resources/KaravanSecret.java
+++ 
b/karavan-cli/src/main/java/org/apache/camel/karavan/cli/resources/KaravanSecret.java
@@ -28,7 +28,7 @@ public class KaravanSecret {
     public static Secret getSecret(KaravanConfig config) {
 
         Map<String, String> secretData = Map.of(
-                "master-password", (config.isAuthBasic() ? 
config.getMasterPassword() : "xxx"),
+                "master-password", (config.isAuthBasic() ? 
config.getMasterPassword() : "karavan"),
                 "oidc-secret", (config.isAuthOidc() ? config.getOidcSecret() : 
"xxx"),
                 "oidc-server-url", (config.isAuthOidc() ? 
config.getOidcServerUrl() :"https://localhost/auth/realms/karavan";),
                 "oidc-frontend-url", (config.isAuthOidc() ? 
config.getOidcFrontendUrl() : "https://localhost/auth";),
diff --git a/karavan-cli/src/main/resources/dashboard.yaml 
b/karavan-cli/src/main/resources/dashboard.yaml
new file mode 100644
index 00000000..df8ac21c
--- /dev/null
+++ b/karavan-cli/src/main/resources/dashboard.yaml
@@ -0,0 +1,334 @@
+apiVersion: apiextensions.k8s.io/v1
+kind: CustomResourceDefinition
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: extensions.dashboard.tekton.dev
+spec:
+  group: dashboard.tekton.dev
+  names:
+    categories:
+      - tekton
+      - tekton-dashboard
+    kind: Extension
+    plural: extensions
+    shortNames:
+      - ext
+      - exts
+  preserveUnknownFields: false
+  scope: Namespaced
+  versions:
+    - additionalPrinterColumns:
+        - jsonPath: .spec.apiVersion
+          name: API version
+          type: string
+        - jsonPath: .spec.name
+          name: Kind
+          type: string
+        - jsonPath: .spec.displayname
+          name: Display name
+          type: string
+        - jsonPath: .metadata.creationTimestamp
+          name: Age
+          type: date
+      name: v1alpha1
+      schema:
+        openAPIV3Schema:
+          type: object
+          x-kubernetes-preserve-unknown-fields: true
+      served: true
+      storage: true
+      subresources:
+        status: {}
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: tekton-dashboard
+  namespace: tekton-pipelines
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  labels:
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: tekton-dashboard-info
+  namespace: tekton-pipelines
+rules:
+  - apiGroups:
+      - ""
+    resourceNames:
+      - dashboard-info
+    resources:
+      - configmaps
+    verbs:
+      - get
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: tekton-dashboard-backend
+rules:
+  - apiGroups:
+      - apiextensions.k8s.io
+    resources:
+      - customresourcedefinitions
+    verbs:
+      - get
+      - list
+  - apiGroups:
+      - security.openshift.io
+    resources:
+      - securitycontextconstraints
+    verbs:
+      - use
+  - apiGroups:
+      - tekton.dev
+    resources:
+      - clustertasks
+    verbs:
+      - get
+      - list
+      - watch
+  - apiGroups:
+      - triggers.tekton.dev
+    resources:
+      - clusterinterceptors
+      - clustertriggerbindings
+    verbs:
+      - get
+      - list
+      - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: tekton-dashboard-tenant
+rules:
+  - apiGroups:
+      - dashboard.tekton.dev
+    resources:
+      - extensions
+    verbs:
+      - get
+      - list
+      - watch
+  - apiGroups:
+      - ""
+    resources:
+      - events
+      - namespaces
+      - pods
+      - pods/log
+    verbs:
+      - get
+      - list
+      - watch
+  - apiGroups:
+      - tekton.dev
+    resources:
+      - tasks
+      - taskruns
+      - pipelines
+      - pipelineruns
+      - customruns
+    verbs:
+      - get
+      - list
+      - watch
+  - apiGroups:
+      - triggers.tekton.dev
+    resources:
+      - eventlisteners
+      - interceptors
+      - triggerbindings
+      - triggers
+      - triggertemplates
+    verbs:
+      - get
+      - list
+      - watch
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  labels:
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: tekton-dashboard-info
+  namespace: tekton-pipelines
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: tekton-dashboard-info
+subjects:
+  - apiGroup: rbac.authorization.k8s.io
+    kind: Group
+    name: system:authenticated
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+    rbac.dashboard.tekton.dev/subject: tekton-dashboard
+  name: tekton-dashboard-backend
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: ClusterRole
+  name: tekton-dashboard-backend
+subjects:
+  - kind: ServiceAccount
+    name: tekton-dashboard
+    namespace: tekton-pipelines
+---
+apiVersion: v1
+data:
+  version: v0.36.1
+kind: ConfigMap
+metadata:
+  labels:
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+  name: dashboard-info
+  namespace: tekton-pipelines
+---
+apiVersion: v1
+kind: Service
+metadata:
+  labels:
+    app: tekton-dashboard
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/name: dashboard
+    app.kubernetes.io/part-of: tekton-dashboard
+    app.kubernetes.io/version: v0.36.1
+    dashboard.tekton.dev/release: v0.36.1
+    version: v0.36.1
+  name: tekton-dashboard
+  namespace: tekton-pipelines
+spec:
+  ports:
+    - name: http
+      port: 9097
+      protocol: TCP
+      targetPort: 9097
+  selector:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/name: dashboard
+    app.kubernetes.io/part-of: tekton-dashboard
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  labels:
+    app: tekton-dashboard
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/name: dashboard
+    app.kubernetes.io/part-of: tekton-dashboard
+    app.kubernetes.io/version: v0.36.1
+    dashboard.tekton.dev/release: v0.36.1
+    version: v0.36.1
+  name: tekton-dashboard
+  namespace: tekton-pipelines
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app.kubernetes.io/component: dashboard
+      app.kubernetes.io/instance: default
+      app.kubernetes.io/name: dashboard
+      app.kubernetes.io/part-of: tekton-dashboard
+  template:
+    metadata:
+      labels:
+        app: tekton-dashboard
+        app.kubernetes.io/component: dashboard
+        app.kubernetes.io/instance: default
+        app.kubernetes.io/name: dashboard
+        app.kubernetes.io/part-of: tekton-dashboard
+        app.kubernetes.io/version: v0.36.1
+      name: tekton-dashboard
+    spec:
+      containers:
+        - args:
+            - --port=9097
+            - --logout-url=
+            - --pipelines-namespace=tekton-pipelines
+            - --triggers-namespace=tekton-pipelines
+            - --read-only=true
+            - --log-level=info
+            - --log-format=json
+            - --namespace=
+            - --stream-logs=true
+            - --external-logs=
+          env:
+            - name: INSTALLED_NAMESPACE
+              valueFrom:
+                fieldRef:
+                  fieldPath: metadata.namespace
+          image: 
gcr.io/tekton-releases/github.com/tektoncd/dashboard/cmd/dashboard:v0.36.1@sha256:9f5a816d74c90c5153d8eedab166471fe9670c1386887a644acc8a0a5928ee07
+          livenessProbe:
+            httpGet:
+              path: /health
+              port: 9097
+          name: tekton-dashboard
+          ports:
+            - containerPort: 9097
+          readinessProbe:
+            httpGet:
+              path: /readiness
+              port: 9097
+          securityContext:
+            allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - ALL
+            runAsGroup: 65532
+            runAsNonRoot: true
+            runAsUser: 65532
+            seccompProfile:
+              type: RuntimeDefault
+      nodeSelector:
+        kubernetes.io/os: linux
+      serviceAccountName: tekton-dashboard
+      volumes: []
+
+---
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+  labels:
+    app.kubernetes.io/component: dashboard
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-dashboard
+    rbac.dashboard.tekton.dev/subject: tekton-dashboard
+  name: tekton-dashboard-tenant
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: ClusterRole
+  name: tekton-dashboard-tenant
+subjects:
+  - kind: ServiceAccount
+    name: tekton-dashboard
+    namespace: tekton-pipelines
diff --git a/karavan-cli/src/main/resources/tekton.yaml 
b/karavan-cli/src/main/resources/pipelines.yaml
similarity index 90%
rename from karavan-cli/src/main/resources/tekton.yaml
rename to karavan-cli/src/main/resources/pipelines.yaml
index 1abe4c51..ad5eb7da 100644
--- a/karavan-cli/src/main/resources/tekton.yaml
+++ b/karavan-cli/src/main/resources/pipelines.yaml
@@ -49,6 +49,10 @@ rules:
     # Controller needs to watch Pods created by TaskRuns to see them progress.
     resources: ["pods"]
     verbs: ["list", "watch"]
+  - apiGroups: [""]
+    # Controller needs to get the list of cordoned nodes over the course of a 
single run
+    resources: ["nodes"]
+    verbs: ["list"]
     # Controller needs cluster access to all of the CRDs that it is 
responsible for
     # managing.
   - apiGroups: ["tekton.dev"]
@@ -156,6 +160,19 @@ rules:
     # The webhook configured the namespace as the OwnerRef on various 
cluster-scoped resources,
     # which requires we can update the system namespace finalizers.
     resourceNames: ["tekton-pipelines"]
+---
+kind: ClusterRole
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  name: tekton-events-controller-cluster-access
+  labels:
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
+rules:
+  - apiGroups: ["tekton.dev"]
+    resources: ["tasks", "clustertasks", "taskruns", "pipelines", 
"pipelineruns", "customruns"]
+    verbs: ["get", "list", "watch"]
 
 ---
 # Copyright 2020 The Tekton Authors
@@ -285,6 +302,16 @@ metadata:
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: tekton-events-controller
+  namespace: tekton-pipelines
+  labels:
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
 
 ---
 # Copyright 2019 The Tekton Authors
@@ -355,6 +382,23 @@ roleRef:
   kind: ClusterRole
   name: tekton-pipelines-webhook-cluster-access
   apiGroup: rbac.authorization.k8s.io
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRoleBinding
+metadata:
+  name: tekton-events-controller-cluster-access
+  labels:
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
+subjects:
+  - kind: ServiceAccount
+    name: tekton-events-controller
+    namespace: tekton-pipelines
+roleRef:
+  kind: ClusterRole
+  name: tekton-events-controller-cluster-access
+  apiGroup: rbac.authorization.k8s.io
 
 ---
 # Copyright 2020 The Tekton Authors
@@ -461,6 +505,42 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
   kind: Role
   name: tekton-pipelines-info
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: tekton-events-controller
+  namespace: tekton-pipelines
+  labels:
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
+subjects:
+  - kind: ServiceAccount
+    name: tekton-events-controller
+    namespace: tekton-pipelines
+roleRef:
+  kind: Role
+  name: tekton-pipelines-controller
+  apiGroup: rbac.authorization.k8s.io
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: tekton-events-controller-leaderelection
+  namespace: tekton-pipelines
+  labels:
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
+subjects:
+  - kind: ServiceAccount
+    name: tekton-events-controller
+    namespace: tekton-pipelines
+roleRef:
+  kind: Role
+  name: tekton-pipelines-leader-election
+  apiGroup: rbac.authorization.k8s.io
 
 ---
 # Copyright 2019 The Tekton Authors
@@ -484,8 +564,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -547,8 +627,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -615,8 +695,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -694,8 +774,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -907,8 +987,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -989,8 +1069,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   preserveUnknownFields: false
@@ -1099,8 +1179,8 @@ metadata:
   labels:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
-    version: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
+    version: "v0.48.0"
 spec:
   group: tekton.dev
   versions:
@@ -1151,7 +1231,7 @@ metadata:
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
 # The data is populated at install time.
 ---
 apiVersion: admissionregistration.k8s.io/v1
@@ -1162,7 +1242,7 @@ metadata:
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
 webhooks:
   - admissionReviewVersions: ["v1"]
     clientConfig:
@@ -1181,7 +1261,7 @@ metadata:
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
 webhooks:
   - admissionReviewVersions: ["v1"]
     clientConfig:
@@ -1200,7 +1280,7 @@ metadata:
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
 webhooks:
   - admissionReviewVersions: ["v1"]
     clientConfig:
@@ -1474,12 +1554,17 @@ data:
   # and PipelineRun status. This field contains metadata about resources used
   # in the TaskRun/PipelineRun such as the source from where a remote 
Task/Pipeline
   # definition was fetched.
-  enable-provenance-in-status: "false"
+  enable-provenance-in-status: "true"
   # Setting this flag will determine how Tekton pipelines will handle 
non-falsifiable provenance.
   # If set to "spire", then SPIRE will be used to ensure non-falsifiable 
provenance.
   # If set to "none", then Tekton will not have non-falsifiable provenance.
   # This is an experimental feature and thus should still be considered an 
alpha feature.
   enforce-nonfalsifiablity: "none"
+  # Setting this flag will determine how Tekton pipelines will handle 
extracting results from the task.
+  # Acceptable values are "termination-message" or "sidecar-logs".
+  # "sidecar-logs" is an experimental feature and thus should still be 
considered
+  # an alpha feature.
+  results-from: "termination-message"
 
 ---
 # Copyright 2021 The Tekton Authors
@@ -1510,7 +1595,7 @@ data:
   # this ConfigMap such that even if we don't have access to
   # other resources in the namespace we still can have access to
   # this ConfigMap.
-  version: "v0.47.0"
+  version: "v0.48.0"
 
 ---
 # Copyright 2020 Tekton Authors LLC
@@ -1783,12 +1868,12 @@ metadata:
     app.kubernetes.io/name: controller
     app.kubernetes.io/component: controller
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
-    version: "v0.47.0"
+    version: "v0.48.0"
 spec:
   replicas: 1
   selector:
@@ -1803,13 +1888,13 @@ spec:
         app.kubernetes.io/name: controller
         app.kubernetes.io/component: controller
         app.kubernetes.io/instance: default
-        app.kubernetes.io/version: "v0.47.0"
+        app.kubernetes.io/version: "v0.48.0"
         app.kubernetes.io/part-of: tekton-pipelines
         # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-        pipeline.tekton.dev/release: "v0.47.0"
+        pipeline.tekton.dev/release: "v0.48.0"
         # labels below are related to istio and should not be used for 
resource lookup
         app: tekton-pipelines-controller
-        version: "v0.47.0"
+        version: "v0.48.0"
     spec:
       affinity:
         nodeAffinity:
@@ -1823,11 +1908,11 @@ spec:
       serviceAccountName: tekton-pipelines-controller
       containers:
         - name: tekton-pipelines-controller
-          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/controller:v0.47.0@sha256:f2d03e5b00345da4bf91044daff32795f6f54edb23f8a36742abd729929c7943
+          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/controller:v0.48.0@sha256:c2442a0f832ce36afd1b2a7a2d971a30be4aae92ebc384c8ee24f073688bc61e
           args: [
             # These images are built on-demand by `ko resolve` and are replaced
             # by image references by digest.
-            "-entrypoint-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/entrypoint:v0.47.0@sha256:5282e057d67e18632b4158994d5a4af50799568d67fcc6db4da53004ae5f4dd5",
 "-nop-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/nop:v0.47.0@sha256:3bd15d5ea0f19f439c02bc629d04b5759ec0f4e01e84f1963f3533b7e96643c4",
 "-sidecarlogresults-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/sidecarlogresults:v0.47.0@sha256:f443ac86d9a453c35344c662f34636dc76
 [...]
+            "-entrypoint-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/entrypoint:v0.48.0@sha256:6ea5a0dd712b1c2204473fbf809432c31df8f062135f84c6ccf02d37cdfd9e76",
 "-nop-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/nop:v0.48.0@sha256:3fdf8f51abaaf2b2cb3f583545c83204c7948f44d5bc3badffb322355e42caaa",
 "-sidecarlogresults-image", 
"gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/sidecarlogresults:v0.48.0@sha256:1bb043c7f27598de1e5a632b54ccff45a0
 [...]
             # The shell image must allow root in order to create directories 
and copy files to PVCs.
             # cgr.dev/chainguard/busybox as of April 14 2022
             # image shall not contains tag, so it will be supported on a 
runtime like cri-o
@@ -1926,13 +2011,13 @@ metadata:
     app.kubernetes.io/name: controller
     app.kubernetes.io/component: controller
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
     app: tekton-pipelines-controller
-    version: "v0.47.0"
+    version: "v0.48.0"
   name: tekton-pipelines-controller
   namespace: tekton-pipelines
 spec:
@@ -1952,6 +2037,172 @@ spec:
     app.kubernetes.io/instance: default
     app.kubernetes.io/part-of: tekton-pipelines
 
+---
+# Copyright 2023 The Tekton Authors
+#
+# Licensed 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.
+
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: tekton-events-controller
+  namespace: tekton-pipelines
+  labels:
+    app.kubernetes.io/name: events
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/version: "v0.48.0"
+    app.kubernetes.io/part-of: tekton-pipelines
+    # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
+    pipeline.tekton.dev/release: "v0.48.0"
+    # labels below are related to istio and should not be used for resource 
lookup
+    version: "v0.48.0"
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: events
+      app.kubernetes.io/component: events
+      app.kubernetes.io/instance: default
+      app.kubernetes.io/part-of: tekton-pipelines
+  template:
+    metadata:
+      labels:
+        app.kubernetes.io/name: events
+        app.kubernetes.io/component: events
+        app.kubernetes.io/instance: default
+        app.kubernetes.io/version: "v0.48.0"
+        app.kubernetes.io/part-of: tekton-pipelines
+        # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
+        pipeline.tekton.dev/release: "v0.48.0"
+        # labels below are related to istio and should not be used for 
resource lookup
+        app: tekton-events-controller
+        version: "v0.48.0"
+    spec:
+      affinity:
+        nodeAffinity:
+          requiredDuringSchedulingIgnoredDuringExecution:
+            nodeSelectorTerms:
+              - matchExpressions:
+                  - key: kubernetes.io/os
+                    operator: NotIn
+                    values:
+                      - windows
+      serviceAccountName: tekton-events-controller
+      containers:
+        - name: tekton-events-controller
+          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/events:v0.48.0@sha256:04e81d0051a3dd4adbdaa4214148a007b7c197db7ef801bb974e83c757007335
+          args: []
+          volumeMounts:
+            - name: config-logging
+              mountPath: /etc/config-logging
+            - name: config-registry-cert
+              mountPath: /etc/config-registry-cert
+          env:
+            - name: SYSTEM_NAMESPACE
+              valueFrom:
+                fieldRef:
+                  fieldPath: metadata.namespace
+            # If you are changing these names, you will also need to update
+            # the controller's Role in 200-role.yaml to include the new
+            # values in the "configmaps" "get" rule.
+            - name: CONFIG_DEFAULTS_NAME
+              value: config-defaults
+            - name: CONFIG_LOGGING_NAME
+              value: config-logging
+            - name: CONFIG_OBSERVABILITY_NAME
+              value: config-observability
+            - name: CONFIG_LEADERELECTION_NAME
+              value: config-leader-election
+            - name: SSL_CERT_FILE
+              value: /etc/config-registry-cert/cert
+            - name: SSL_CERT_DIR
+              value: /etc/ssl/certs
+          securityContext:
+            allowPrivilegeEscalation: false
+            capabilities:
+              drop:
+                - "ALL"
+            # User 65532 is the nonroot user ID
+            runAsUser: 65532
+            runAsGroup: 65532
+            runAsNonRoot: true
+            seccompProfile:
+              type: RuntimeDefault
+          ports:
+            - name: metrics
+              containerPort: 9090
+            - name: profiling
+              containerPort: 8008
+            - name: probes
+              containerPort: 8080
+          livenessProbe:
+            httpGet:
+              path: /health
+              port: probes
+              scheme: HTTP
+            initialDelaySeconds: 5
+            periodSeconds: 10
+            timeoutSeconds: 5
+          readinessProbe:
+            httpGet:
+              path: /readiness
+              port: probes
+              scheme: HTTP
+            initialDelaySeconds: 5
+            periodSeconds: 10
+            timeoutSeconds: 5
+      volumes:
+        - name: config-logging
+          configMap:
+            name: config-logging
+        - name: config-registry-cert
+          configMap:
+            name: config-registry-cert
+---
+apiVersion: v1
+kind: Service
+metadata:
+  labels:
+    app.kubernetes.io/name: events
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/version: "v0.48.0"
+    app.kubernetes.io/part-of: tekton-pipelines
+    # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
+    pipeline.tekton.dev/release: "v0.48.0"
+    # labels below are related to istio and should not be used for resource 
lookup
+    app: tekton-events-controller
+    version: "v0.48.0"
+  name: tekton-events-controller
+  namespace: tekton-pipelines
+spec:
+  ports:
+    - name: http-metrics
+      port: 9090
+      protocol: TCP
+      targetPort: 9090
+    - name: http-profiling
+      port: 8008
+      targetPort: 8008
+    - name: probes
+      port: 8080
+  selector:
+    app.kubernetes.io/name: events
+    app.kubernetes.io/component: events
+    app.kubernetes.io/instance: default
+    app.kubernetes.io/part-of: tekton-pipelines
+
 ---
 # Copyright 2022 The Tekton Authors
 #
@@ -2511,12 +2762,12 @@ metadata:
     app.kubernetes.io/name: resolvers
     app.kubernetes.io/component: resolvers
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
-    version: "v0.47.0"
+    version: "v0.48.0"
 spec:
   replicas: 1
   selector:
@@ -2531,13 +2782,13 @@ spec:
         app.kubernetes.io/name: resolvers
         app.kubernetes.io/component: resolvers
         app.kubernetes.io/instance: default
-        app.kubernetes.io/version: "v0.47.0"
+        app.kubernetes.io/version: "v0.48.0"
         app.kubernetes.io/part-of: tekton-pipelines
         # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-        pipeline.tekton.dev/release: "v0.47.0"
+        pipeline.tekton.dev/release: "v0.48.0"
         # labels below are related to istio and should not be used for 
resource lookup
         app: tekton-pipelines-resolvers
-        version: "v0.47.0"
+        version: "v0.48.0"
     spec:
       affinity:
         podAntiAffinity:
@@ -2554,7 +2805,7 @@ spec:
       serviceAccountName: tekton-pipelines-resolvers
       containers:
         - name: controller
-          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/resolvers:v0.47.0@sha256:179051f8000aab6702bd0b60a36e0768c7435a66543006a8851d569bbc7937c4
+          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/resolvers:v0.48.0@sha256:10cebbc9a9177527cfb60539ce7db217d7dbc4e8ead2ef59e20c41b4085e8769
           resources:
             requests:
               cpu: 100m
@@ -2620,12 +2871,12 @@ metadata:
     app.kubernetes.io/name: webhook
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
-    version: "v0.47.0"
+    version: "v0.48.0"
 spec:
   minReplicas: 1
   maxReplicas: 5
@@ -2668,12 +2919,12 @@ metadata:
     app.kubernetes.io/name: webhook
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
-    version: "v0.47.0"
+    version: "v0.48.0"
 spec:
   selector:
     matchLabels:
@@ -2687,13 +2938,13 @@ spec:
         app.kubernetes.io/name: webhook
         app.kubernetes.io/component: webhook
         app.kubernetes.io/instance: default
-        app.kubernetes.io/version: "v0.47.0"
+        app.kubernetes.io/version: "v0.48.0"
         app.kubernetes.io/part-of: tekton-pipelines
         # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-        pipeline.tekton.dev/release: "v0.47.0"
+        pipeline.tekton.dev/release: "v0.48.0"
         # labels below are related to istio and should not be used for 
resource lookup
         app: tekton-pipelines-webhook
-        version: "v0.47.0"
+        version: "v0.48.0"
     spec:
       affinity:
         nodeAffinity:
@@ -2720,7 +2971,7 @@ spec:
         - name: webhook
           # This is the Go import path for the binary that is containerized
           # and substituted here.
-          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/webhook:v0.47.0@sha256:6760251cd71c33fa630d152c41bef0b1307acd50e9caf8cb34546cd8f860b33e
+          image: 
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/webhook:v0.48.0@sha256:f3b7b6681e67dad5b28d29da48a78b0d77b84cad58d9ff1e3a1355e1a5c9f528
           # Resource request required for autoscaler to take any action for a 
metric
           resources:
             requests:
@@ -2809,13 +3060,13 @@ metadata:
     app.kubernetes.io/name: webhook
     app.kubernetes.io/component: webhook
     app.kubernetes.io/instance: default
-    app.kubernetes.io/version: "v0.47.0"
+    app.kubernetes.io/version: "v0.48.0"
     app.kubernetes.io/part-of: tekton-pipelines
     # tekton.dev/release value replaced with inputs.params.versionTag in 
pipeline/tekton/publish.yaml
-    pipeline.tekton.dev/release: "v0.47.0"
+    pipeline.tekton.dev/release: "v0.48.0"
     # labels below are related to istio and should not be used for resource 
lookup
     app: tekton-pipelines-webhook
-    version: "v0.47.0"
+    version: "v0.48.0"
   name: tekton-pipelines-webhook
   namespace: tekton-pipelines
 spec:
diff --git 
a/karavan-cli/src/main/resources/quarkus-builder-script-kubernetes.sh 
b/karavan-cli/src/main/resources/quarkus-builder-script-kubernetes.sh
index c53cc6db..844f8407 100644
--- a/karavan-cli/src/main/resources/quarkus-builder-script-kubernetes.sh
+++ b/karavan-cli/src/main/resources/quarkus-builder-script-kubernetes.sh
@@ -21,7 +21,7 @@ export DATE=$(date '+%Y%m%d%H%M%S')
 export TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
 export NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
 
-/opt/mvnd/bin/mvnd package \
+mvn package \
   -Dquarkus.container-image.build=true \
   -Dquarkus.container-image.push=true \
   -Dquarkus.container-image.insecure=true \
diff --git a/karavan-cli/src/main/resources/quarkus-builder-script-openshift.sh 
b/karavan-cli/src/main/resources/quarkus-builder-script-openshift.sh
index c60e9ff4..79a71125 100644
--- a/karavan-cli/src/main/resources/quarkus-builder-script-openshift.sh
+++ b/karavan-cli/src/main/resources/quarkus-builder-script-openshift.sh
@@ -21,7 +21,7 @@ export DATE=$(date '+%Y%m%d%H%M%S')
 export TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
 export NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
 
-/opt/mvnd/bin/mvnd package \
+mvn package \
   -Dquarkus.container-image.build=true \
   -Dquarkus.container-image.push=true \
   -Dquarkus.container-image.insecure=true \
diff --git 
a/karavan-cli/src/main/resources/spring-boot-builder-script-kubernetes.sh 
b/karavan-cli/src/main/resources/spring-boot-builder-script-kubernetes.sh
index ca77096b..2e860889 100644
--- a/karavan-cli/src/main/resources/spring-boot-builder-script-kubernetes.sh
+++ b/karavan-cli/src/main/resources/spring-boot-builder-script-kubernetes.sh
@@ -21,7 +21,7 @@ export DATE=$(date '+%Y%m%d%H%M%S')
 export TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
 export NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
 
-/opt/mvnd/bin/mvnd package k8s:build k8s:push k8s:resource k8s:apply \
+mvn package k8s:build k8s:push k8s:resource k8s:apply \
   -Pkubernetes \
   -Djkube.namespace=${NAMESPACE} \
   -Djkube.docker.push.registry=${IMAGE_REGISTRY} \
diff --git 
a/karavan-cli/src/main/resources/spring-boot-builder-script-openshift.sh 
b/karavan-cli/src/main/resources/spring-boot-builder-script-openshift.sh
index dc74a459..98b71043 100644
--- a/karavan-cli/src/main/resources/spring-boot-builder-script-openshift.sh
+++ b/karavan-cli/src/main/resources/spring-boot-builder-script-openshift.sh
@@ -21,7 +21,7 @@ export DATE=$(date '+%Y%m%d%H%M%S')
 export TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
 export NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
 
-/opt/mvnd/bin/mvnd package oc:build oc:push oc:resource oc:apply \
+mvn package package oc:build oc:push oc:resource oc:apply \
   -Popenshift \
   -Djkube.namespace=${NAMESPACE} \
   -Djkube.docker.push.registry=${IMAGE_REGISTRY} \

Reply via email to