From c038a140fb1afe4f3a2c8d6b1f471b7a18a15826 Mon Sep 17 00:00:00 2001 From: Damien Duportal Date: Fri, 3 Jan 2025 17:26:00 +0100 Subject: [PATCH] feat(cijenkinsio-agents-2) initial installation of ACP Signed-off-by: Damien Duportal --- clusters/cijioagents2.yaml | 10 +++++ ...hing-proxy_azure-cijenkinsio-agents-2.yaml | 45 +++++++++++++++++++ config/datadog_cijenkinsio-agents-2.yaml | 3 ++ 3 files changed, 58 insertions(+) create mode 100644 config/artifact-caching-proxy_azure-cijenkinsio-agents-2.yaml diff --git a/clusters/cijioagents2.yaml b/clusters/cijioagents2.yaml index bd9d4c55f..61b051323 100644 --- a/clusters/cijioagents2.yaml +++ b/clusters/cijioagents2.yaml @@ -8,6 +8,9 @@ repositories: # https://github.com/DataDog/helm-charts/ - name: datadog url: https://helm.datadoghq.com + # https://github.com/jenkins-infra/helm-charts/ + - name: jenkins-infra + url: https://jenkins-infra.github.io/helm-charts releases: - name: datadog namespace: datadog @@ -18,3 +21,10 @@ releases: - "../config/datadog_cijenkinsio-agents-2.yaml" secrets: - "../secrets/config/datadog/cijenkinsio-agents-2-secrets.yaml" + - name: artifact-caching-proxy + namespace: artifact-caching-proxy + chart: jenkins-infra/artifact-caching-proxy + # TODO: track with updatecli + version: 1.6.2 + values: + - "../config/artifact-caching-proxy_azure-cijenkinsio-agents-2.yaml" diff --git a/config/artifact-caching-proxy_azure-cijenkinsio-agents-2.yaml b/config/artifact-caching-proxy_azure-cijenkinsio-agents-2.yaml new file mode 100644 index 000000000..f411b7024 --- /dev/null +++ b/config/artifact-caching-proxy_azure-cijenkinsio-agents-2.yaml @@ -0,0 +1,45 @@ +persistence: + enabled: true + size: 100 + # TODO: track with updatecli (from https://github.com/jenkins-infra/terraform-aws-sponsorship/blob/47a0758f6f414fa12a2e8be54bd66e921f8a942a/eks-cijenkinsio-agents-2.tf#L217) + storageClass: ebs-csi-premium-retain-us-east-2a + +# TODO: track with updatecli (from https://reports.jenkins.io/jenkins-infra-data-reports/aws-sponsorship.json) +nodeSelector: + kubernetes.io/arch: arm64 + jenkins: ci.jenkins.io + role: applications + +# TODO: track with updatecli (from https://reports.jenkins.io/jenkins-infra-data-reports/aws-sponsorship.json) +tolerations: + - key: "ci.jenkins.io/applications" + operator: "Equal" + value: "true" + effect: "NoSchedule" + +# We should never have 2 ACP replicas in the same host +affinity: + podAntiAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + - labelSelector: + matchExpressions: + - key: "app.kubernetes.io/name" + operator: In + values: + - artifact-caching-proxy + topologyKey: "kubernetes.io/hostname" + +## TODO: enable LB with a private endpoint + +resources: + limits: + # No CPU limit to avoid throttling + memory: 8192Mi + requests: + cpu: 2 + memory: 8192Mi + +replicaCount: 2 + +proxy: + dnsResolver: "kube-dns.kube-system.svc.cluster.local 9.9.9.9" diff --git a/config/datadog_cijenkinsio-agents-2.yaml b/config/datadog_cijenkinsio-agents-2.yaml index 420ad7d77..273edb5fb 100644 --- a/config/datadog_cijenkinsio-agents-2.yaml +++ b/config/datadog_cijenkinsio-agents-2.yaml @@ -6,15 +6,18 @@ datadog: fieldRef: fieldPath: spec.nodeName clusterAgent: + # TODO: track with updatecli (from https://reports.jenkins.io/jenkins-infra-data-reports/aws-sponsorship.json) nodeSelector: jenkins: ci.jenkins.io role: applications + # TODO: track with updatecli (from https://reports.jenkins.io/jenkins-infra-data-reports/aws-sponsorship.json) tolerations: - key: "ci.jenkins.io/applications" operator: "Equal" value: "true" effect: "NoSchedule" agents: + # TODO: track with updatecli (from https://reports.jenkins.io/jenkins-infra-data-reports/aws-sponsorship.json) tolerations: # These tolerations are needed to run the agents on the bom node pool - key: "ci.jenkins.io/bom"