diff --git a/src/airgap/airgap_input.txt b/src/airgap/airgap_input.txt index d0e5e74b..ed53f82c 100644 --- a/src/airgap/airgap_input.txt +++ b/src/airgap/airgap_input.txt @@ -163,3 +163,11 @@ code-gitrpc-signed code-search-signed busybox + +[iacm]: + drone-git + ci-lite-engine + ci-addon + harness_terraform + iac-server-signed + iacm-manager-signed diff --git a/src/airgap/create-airgap-bundle.sh b/src/airgap/create-airgap-bundle.sh index e00d4e07..e4e82419 100755 --- a/src/airgap/create-airgap-bundle.sh +++ b/src/airgap/create-airgap-bundle.sh @@ -11,7 +11,7 @@ export DOCKER_DEFAULT_PLATFORM=linux/amd64 # Provide lists of image names lists=("cdng_images.txt" "ci_images.txt" "platform_images.txt" "ccm_images.txt" -"ce_images.txt" "sto_images.txt" "ff_images.txt" "ssca_images.txt" "dbdevops_images.txt" "code_images.txt") +"ce_images.txt" "sto_images.txt" "ff_images.txt" "ssca_images.txt" "dbdevops_images.txt" "code_images.txt" "iacm_images.txt") pull_image() { i="$1" diff --git a/src/airgap/upload_all_bundles.sh b/src/airgap/upload_all_bundles.sh index f22674c6..c64e76d5 100755 --- a/src/airgap/upload_all_bundles.sh +++ b/src/airgap/upload_all_bundles.sh @@ -25,7 +25,7 @@ service_account_file=$1 release_number=$2 # Array of files to upload -files=("platform_images.tgz" "cdng_images.tgz" "ccm_images.tgz" "ce_images.tgz" "ff_images.tgz" "ci_images.tgz" "sto_images.tgz" "ssca_images.tgz" "dbdevops_images.tgz" "code_images.tgz") +files=("platform_images.tgz" "cdng_images.tgz" "ccm_images.tgz" "ce_images.tgz" "ff_images.tgz" "ci_images.tgz" "sto_images.tgz" "ssca_images.tgz" "dbdevops_images.tgz" "code_images.tgz" "iacm_images.tgz") # Create an empty file and upload it to the destination bucket path touch empty_file diff --git a/src/airgap/validate_airgap.sh b/src/airgap/validate_airgap.sh index 941c4a70..bd218700 100644 --- a/src/airgap/validate_airgap.sh +++ b/src/airgap/validate_airgap.sh @@ -1,6 +1,6 @@ #!/bin/bash -MODULE_NAMES=("platform" "ccm" "cdng" "ci" "ce" "sto" "ff" "ssca" "dbdevops" "code") +MODULE_NAMES=("platform" "ccm" "cdng" "ci" "ce" "sto" "ff" "ssca" "dbdevops" "code" "iacm") abort() { echo "Error: $1" diff --git a/src/harness/Chart.yaml b/src/harness/Chart.yaml index d3015f59..bb4a2984 100644 --- a/src/harness/Chart.yaml +++ b/src/harness/Chart.yaml @@ -43,6 +43,10 @@ dependencies: name: code repository: https://harness.github.io/helm-charts version: 0.25.0 +- condition: global.iacm.enabled + name: iacm + repository: https://harness.github.io/helm-charts + version: 0.25.0 description: Helm Chart for deploying Harness. kubeVersion: '>=1.25.0-0' name: harness diff --git a/src/harness/override-demo.yaml b/src/harness/override-demo.yaml index 19640e37..6bcf7eba 100644 --- a/src/harness/override-demo.yaml +++ b/src/harness/override-demo.yaml @@ -424,3 +424,27 @@ sto: requests: cpu: 256m memory: 1.5Gi +iacm: + iacm-manager: + autoscaling: + enabled: false + java: + memory: "512m" + replicaCount: 1 + resources: + limits: + memory: 1280Mi + requests: + cpu: 256m + memory: 1280Mi + iac-server: + autoscaling: + enabled: false + replicaCount: 1 + resources: + limits: + memory: 256Mi + requests: + cpu: 128m + memory: 256Mi + diff --git a/src/harness/override-large.yaml b/src/harness/override-large.yaml index c120a923..7b62d4ae 100644 --- a/src/harness/override-large.yaml +++ b/src/harness/override-large.yaml @@ -436,3 +436,31 @@ sto: requests: cpu: 256m memory: 1.5Gi +iacm: + iacm-manager: + autoscaling: + enabled: true + minReplicas: 4 + maxReplicas: 6 + targetCPU: 80 + targetMemory: 80 + java: + memory: "2048m" + replicaCount: 4 + resources: + limits: + memory: 3Gi + requests: + cpu: 2 + memory: 3Gi + iac-server: + autoscaling: + enabled: false + replicaCount: 2 + resources: + limits: + memory: 256Mi + requests: + cpu: 128m + memory: 256Mi + diff --git a/src/harness/override-medium.yaml b/src/harness/override-medium.yaml index 6783cb4e..3b785736 100644 --- a/src/harness/override-medium.yaml +++ b/src/harness/override-medium.yaml @@ -435,3 +435,31 @@ sto: requests: cpu: 256m memory: 1.5Gi +iacm: + iacm-manager: + autoscaling: + enabled: true + minReplicas: 3 + maxReplicas: 4 + targetCPU: 80 + targetMemory: 80 + java: + memory: "2048m" + replicaCount: 3 + resources: + limits: + memory: 3Gi + requests: + cpu: 2 + memory: 3Gi + iac-server: + autoscaling: + enabled: false + replicaCount: 2 + resources: + limits: + memory: 256Mi + requests: + cpu: 128m + memory: 256Mi + diff --git a/src/harness/override-prod.yaml b/src/harness/override-prod.yaml index 4c53c7cb..a257c885 100644 --- a/src/harness/override-prod.yaml +++ b/src/harness/override-prod.yaml @@ -785,3 +785,26 @@ sto: requests: cpu: 1 memory: 3072Mi +iacm: + iacm-manager: + autoscaling: + enabled: true + minReplicas: 2 + java: + memory: "4096m" + resources: + limits: + memory: 6192Mi + requests: + cpu: 1 + memory: 6192Mi + iac-server: + autoscaling: + enabled: true + minReplicas: 2 + resources: + limits: + memory: 500Mi + requests: + cpu: 500m + memory: 500Mi diff --git a/src/harness/override-small.yaml b/src/harness/override-small.yaml index c3b61b03..39be31f3 100644 --- a/src/harness/override-small.yaml +++ b/src/harness/override-small.yaml @@ -435,3 +435,31 @@ sto: requests: cpu: 256m memory: 1.5Gi +iacm: + iacm-manager: + autoscaling: + enabled: true + minReplicas: 1 + maxReplicas: 2 + targetCPU: 80 + targetMemory: 80 + java: + memory: "2048m" + replicaCount: 2 + resources: + limits: + memory: 3Gi + requests: + cpu: 2 + memory: 3Gi + iac-server: + autoscaling: + enabled: false + replicaCount: 1 + resources: + limits: + memory: 256Mi + requests: + cpu: 128m + memory: 256Mi + diff --git a/src/harness/values.yaml b/src/harness/values.yaml index 28471696..2bfa12f7 100644 --- a/src/harness/values.yaml +++ b/src/harness/values.yaml @@ -38,6 +38,9 @@ global: # -- Enable to install Harness Code services (CODE) code: enabled: false + # -- Enable to install Harness Infrastructure As Code Management (IACM) + iacm: + enabled: false # -- provide overrides to use in-cluster database or configure to use external databases database: clickhouse: @@ -582,3 +585,19 @@ ff: waitForInitContainer: image: tag: 1.2.0 +iacm: + iac-server: + config: + ENABLE_SMP: "true" + FF_ENABLED: "false" + affinity: {} + autoscaling: + enabled: false + nodeSelector: {} + tolerations: [] + iacm-manager: + affinity: {} + autoscaling: + enabled: false + nodeSelector: {} + tolerations: [] diff --git a/src/modules/iacm/Chart.yaml b/src/modules/iacm/Chart.yaml new file mode 100644 index 00000000..443ebf12 --- /dev/null +++ b/src/modules/iacm/Chart.yaml @@ -0,0 +1,13 @@ +apiVersion: v2 +appVersion: 0.0.79001 +dependencies: +- name: iac-server + repository: oci://us-west1-docker.pkg.dev/gcr-prod/harness-helm-artifacts + version: 0.1.0 +- name: iacm-manager + repository: oci://us-west1-docker.pkg.dev/gcr-prod/harness-helm-artifacts + version: 0.1.0 +description: Helm chart for Harness IACM +name: iacm +type: application +version: 0.24.0