You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ma...@apache.org on 2023/03/03 20:56:20 UTC
[camel-karavan] branch main updated: Operator parameters for Git Pull Scheduler #645
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 f5d80f6a Operator parameters for Git Pull Scheduler #645
f5d80f6a is described below
commit f5d80f6a0b12feddcb312e39034ee83829269772
Author: Marat Gubaidullin <ma...@gmail.com>
AuthorDate: Fri Mar 3 15:56:12 2023 -0500
Operator parameters for Git Pull Scheduler #645
---
karavan-app/src/main/resources/application.properties | 4 ++--
karavan-operator/resources/karavan.yaml | 1 +
.../karavan/operator/resource/KaravanDeployment.java | 19 +++++++++++++++++--
.../operator/spec/KaravanOperatorCSVMetadata.java | 2 ++
.../camel/karavan/operator/spec/KaravanSpec.java | 9 +++++++++
5 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/karavan-app/src/main/resources/application.properties b/karavan-app/src/main/resources/application.properties
index 3c5236aa..9d472f95 100644
--- a/karavan-app/src/main/resources/application.properties
+++ b/karavan-app/src/main/resources/application.properties
@@ -9,8 +9,8 @@ karavan.git-repository=${GIT_REPOSITORY}
karavan.git-username=${GIT_USERNAME}
karavan.git-password=${GIT_TOKEN}
karavan.git-branch=main
-karavan.git-pull-interval=5s
-quarkus.scheduler.enabled=true
+karavan.git-pull-interval=0s
+quarkus.scheduler.enabled=false
# Infinispan Server address
#quarkus.infinispan-client.server-list=localhost:12345
diff --git a/karavan-operator/resources/karavan.yaml b/karavan-operator/resources/karavan.yaml
index 276bae1f..7d88310d 100644
--- a/karavan-operator/resources/karavan.yaml
+++ b/karavan-operator/resources/karavan.yaml
@@ -9,3 +9,4 @@ spec:
nodePort: 30668
environment: demo
runtimes: quarkus,spring-boot
+ gitPullInterval: 10s
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
index 8fbb4a86..c75bc1ea 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
@@ -43,6 +43,7 @@ import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
public class KaravanDeployment extends CRUDKubernetesDependentResource<Deployment, Karavan> {
@@ -71,12 +72,13 @@ public class KaravanDeployment extends CRUDKubernetesDependentResource<Deploymen
envVarList.add(
new EnvVar("KUBERNETES_NAMESPACE", null, new EnvVarSourceBuilder().withFieldRef(new ObjectFieldSelector("","metadata.namespace")).build())
);
- if (karavan.getSpec().getAuth() == "basic") {
+ String auth = karavan.getSpec().getAuth();
+ if (Objects.equals(auth, "basic")) {
image = baseImage + "-basic:" + version;
envVarList.add(
new EnvVar("MASTER_PASSWORD", null, new EnvVarSourceBuilder().withSecretKeyRef(new SecretKeySelector("master-password","karavan", false)).build())
);
- } else if (karavan.getSpec().getAuth() == "oidc") {
+ } else if (Objects.equals(auth,"oidc")) {
image = baseImage + "-oidc:" + version;
envVarList.add(
new EnvVar("OIDC_FRONTEND_URL", null, new EnvVarSourceBuilder().withSecretKeyRef(new SecretKeySelector("oidc-frontend-url","karavan", false)).build())
@@ -88,6 +90,19 @@ public class KaravanDeployment extends CRUDKubernetesDependentResource<Deploymen
new EnvVar("OIDC_SECRET", null, new EnvVarSourceBuilder().withSecretKeyRef(new SecretKeySelector("oidc-secret","karavan", false)).build())
);
}
+ String gitPullInterval = karavan.getSpec().getGitPullInterval();
+ if (Objects.isNull(gitPullInterval) || Objects.equals(gitPullInterval.trim(), "0")) {
+ envVarList.add(
+ new EnvVar("QUARKUS_SCHEDULER_ENABLED", "false", null)
+ );
+ } else {
+ envVarList.add(
+ new EnvVar("QUARKUS_SCHEDULER_ENABLED", "true", null)
+ );
+ envVarList.add(
+ new EnvVar("KARAVAN_GIT_PULL_INTERVAL", gitPullInterval, null)
+ );
+ }
log.info("Deployment image: " + image);
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanOperatorCSVMetadata.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanOperatorCSVMetadata.java
index 34ac79da..46abfc9c 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanOperatorCSVMetadata.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanOperatorCSVMetadata.java
@@ -43,6 +43,7 @@ package org.apache.camel.karavan.operator.spec;
" \"auth\": \"public\",\n" +
" \"environment\": \"dev\"\n" +
" \"runtimes\": \"quarkus,spring-boot\"\n" +
+ " \"gitPullInterval\": \"30s\"\n" +
" }\n" +
" }\n" +
"]"
@@ -89,6 +90,7 @@ package org.apache.camel.karavan.operator.spec;
" auth: public\n" +
" environment: demo\n" +
" runtimes: quarkus,spring-boot\n" +
+ " gitPullInterval: 30s\n" +
"```\n",
permissionRules = {
@CSVMetadata.PermissionRule(apiGroups = "camel.apache.org", resources = {"karavans", "karavans/status", "karavans/finalizers"}),
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanSpec.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanSpec.java
index d55fb28e..6ea24684 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanSpec.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/spec/KaravanSpec.java
@@ -23,6 +23,7 @@ public class KaravanSpec {
private String environment;
private String runtimes;
private int nodePort;
+ private String gitPullInterval;
public int getInstances() {
return instances;
@@ -63,4 +64,12 @@ public class KaravanSpec {
public void setRuntimes(String runtimes) {
this.runtimes = runtimes;
}
+
+ public String getGitPullInterval() {
+ return gitPullInterval;
+ }
+
+ public void setGitPullInterval(String gitPullInterval) {
+ this.gitPullInterval = gitPullInterval;
+ }
}