From d2c1b3b1de99811df5942b5db71ac33051c061cd Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:15:06 +0000 Subject: [PATCH 01/11] Update kubectl repo path in devcontainer Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 065c9ab..1252363 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -123,8 +123,9 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ - curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg \ - && echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list \ + KUBECTL_CHANNEL="$(curl -fsSL https://dl.k8s.io/release/stable.txt | sed -E 's/^v([0-9]+\.[0-9]+).*/v\1/')" \ + && curl -fsSL "https://pkgs.k8s.io/core:/stable:/${KUBECTL_CHANNEL}/deb/Release.key" | gpg --dearmor -o /usr/share/keyrings/kubernetes-apt-keyring.gpg \ + && echo "deb [signed-by=/usr/share/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/${KUBECTL_CHANNEL}/deb/ /" > /etc/apt/sources.list.d/kubernetes.list \ && apt-get update \ && apt-get install -y kubectl; \ fi From 2a003a92a0152d518074e8ad0d84b3f94d94bb96 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:20:05 +0000 Subject: [PATCH 02/11] Use direct kubectl release download in devcontainer Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 1252363..070f32d 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -123,11 +123,12 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ - KUBECTL_CHANNEL="$(curl -fsSL https://dl.k8s.io/release/stable.txt | sed -E 's/^v([0-9]+\.[0-9]+).*/v\1/')" \ - && curl -fsSL "https://pkgs.k8s.io/core:/stable:/${KUBECTL_CHANNEL}/deb/Release.key" | gpg --dearmor -o /usr/share/keyrings/kubernetes-apt-keyring.gpg \ - && echo "deb [signed-by=/usr/share/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/${KUBECTL_CHANNEL}/deb/ /" > /etc/apt/sources.list.d/kubernetes.list \ - && apt-get update \ - && apt-get install -y kubectl; \ + KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" \ + && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" \ + && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256" \ + && echo "$(cat /tmp/kubectl.sha256) /tmp/kubectl" | sha256sum --check \ + && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ + && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi # Install Helm if requested From 78caa05ca3a4bef1abb3d065a6bd19f17da9d156 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:21:56 +0000 Subject: [PATCH 03/11] Harden kubectl checksum verification Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 070f32d..aeeda63 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -126,7 +126,7 @@ RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" \ && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" \ && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256" \ - && echo "$(cat /tmp/kubectl.sha256) /tmp/kubectl" | sha256sum --check \ + && test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From 97d9e041c7e002d573d191ef7e3a37c40c4c5e02 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:23:37 +0000 Subject: [PATCH 04/11] Clarify kubectl checksum failure output Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index aeeda63..95b796d 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -126,7 +126,7 @@ RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" \ && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" \ && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256" \ - && test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" \ + && (test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" || (echo "kubectl checksum verification failed" && exit 1)) \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From 99b0320e00a348881860f526770008af04b8662f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:25:21 +0000 Subject: [PATCH 05/11] Support arch-aware kubectl downloads Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 95b796d..e663f23 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -6,6 +6,8 @@ ARG PYTHON_VERSION=3.11 ARG JAVA_VERSION=17 ARG NODE_VERSION=20 ARG GO_VERSION=1.21 +ARG TARGETOS=linux +ARG TARGETARCH=amd64 ARG INSTALL_PYTHON=true ARG INSTALL_JAVA=true ARG INSTALL_JS=true @@ -124,9 +126,9 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" \ - && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl" \ - && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/linux/amd64/kubectl.sha256" \ - && (test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" || (echo "kubectl checksum verification failed" && exit 1)) \ + && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl" \ + && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl.sha256" \ + && (test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" || (echo "kubectl checksum verification failed" >&2 && exit 1)) \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From eb35f89e94577deb3be6a49b2cd0f42e02f719b3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:27:11 +0000 Subject: [PATCH 06/11] Improve kubectl download diagnostics Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index e663f23..407f22e 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -125,10 +125,12 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ - KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" \ + KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" || (echo "failed to resolve the latest kubectl version" >&2 && exit 1) \ && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl" \ && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl.sha256" \ - && (test "$(cat /tmp/kubectl.sha256)" = "$(sha256sum /tmp/kubectl | cut -d' ' -f1)" || (echo "kubectl checksum verification failed" >&2 && exit 1)) \ + && KUBECTL_SHA256="$(cat /tmp/kubectl.sha256)" \ + && DOWNLOADED_KUBECTL_SHA256="$(sha256sum /tmp/kubectl | cut -d' ' -f1)" \ + && (test "${KUBECTL_SHA256}" = "${DOWNLOADED_KUBECTL_SHA256}" || (echo "kubectl checksum verification failed" >&2 && exit 1)) \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From ba12e7696171ce226f15bf6e17eca6075f244784 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:28:21 +0000 Subject: [PATCH 07/11] Refine kubectl failure messages Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 407f22e..e29ab07 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -125,12 +125,12 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ - KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" || (echo "failed to resolve the latest kubectl version" >&2 && exit 1) \ + KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" || (echo "failed to resolve the latest kubectl version from https://dl.k8s.io/release/stable.txt" >&2 && exit 1) \ && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl" \ && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl.sha256" \ && KUBECTL_SHA256="$(cat /tmp/kubectl.sha256)" \ && DOWNLOADED_KUBECTL_SHA256="$(sha256sum /tmp/kubectl | cut -d' ' -f1)" \ - && (test "${KUBECTL_SHA256}" = "${DOWNLOADED_KUBECTL_SHA256}" || (echo "kubectl checksum verification failed" >&2 && exit 1)) \ + && (test "${KUBECTL_SHA256}" = "${DOWNLOADED_KUBECTL_SHA256}" || (echo "kubectl checksum verification failed: expected ${KUBECTL_SHA256}, got ${DOWNLOADED_KUBECTL_SHA256}" >&2 && exit 1)) \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From d48f0ae61b858e4562a1b0f103de1434a89785f5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:30:16 +0000 Subject: [PATCH 08/11] Polish kubectl error message casing Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/8929bee2-ec5e-454a-8614-f771484942ab Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index e29ab07..7a3803c 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -125,12 +125,12 @@ RUN if [ "$INSTALL_TERRAFORM" = "true" ]; then \ # Install kubectl if requested RUN if [ "$INSTALL_KUBECTL" = "true" ]; then \ - KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" || (echo "failed to resolve the latest kubectl version from https://dl.k8s.io/release/stable.txt" >&2 && exit 1) \ + KUBECTL_VERSION="$(curl -fsSL https://dl.k8s.io/release/stable.txt)" || (echo "Failed to resolve the latest kubectl version from https://dl.k8s.io/release/stable.txt" >&2 && exit 1) \ && curl -fsSLo /tmp/kubectl "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl" \ && curl -fsSLo /tmp/kubectl.sha256 "https://dl.k8s.io/release/${KUBECTL_VERSION}/bin/${TARGETOS}/${TARGETARCH}/kubectl.sha256" \ && KUBECTL_SHA256="$(cat /tmp/kubectl.sha256)" \ && DOWNLOADED_KUBECTL_SHA256="$(sha256sum /tmp/kubectl | cut -d' ' -f1)" \ - && (test "${KUBECTL_SHA256}" = "${DOWNLOADED_KUBECTL_SHA256}" || (echo "kubectl checksum verification failed: expected ${KUBECTL_SHA256}, got ${DOWNLOADED_KUBECTL_SHA256}" >&2 && exit 1)) \ + && (test "${KUBECTL_SHA256}" = "${DOWNLOADED_KUBECTL_SHA256}" || (echo "Kubectl checksum verification failed: expected ${KUBECTL_SHA256}, got ${DOWNLOADED_KUBECTL_SHA256}" >&2 && exit 1)) \ && install -o root -g root -m 0755 /tmp/kubectl /usr/local/bin/kubectl \ && rm -f /tmp/kubectl /tmp/kubectl.sha256; \ fi From 1d6c1ce17e723bbfaa099016cb40fdf35877edbd Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 09:14:39 +0000 Subject: [PATCH 09/11] Audit and refresh devcontainer install URLs Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/5a7ec5cb-5911-4929-a875-d57261636b95 Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 7a3803c..fdc1f22 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -30,6 +30,7 @@ ARG INSTALL_KUBESEAL=true ARG INSTALL_FLUX=true ARG FLUX_VERSION=2.1.2 ARG INSTALL_KIND=true +ARG KIND_VERSION=0.20.0 ARG INSTALL_MINIKUBE=true ARG INSTALL_OPENSHIFT_CLI=false @@ -42,8 +43,10 @@ ARG INSTALL_CMAKE=true # Code analysis tools ARG INSTALL_SONARQUBE=true +ARG SONAR_SCANNER_VERSION=4.8.0.2856 ARG INSTALL_CHECKSTYLE=true ARG INSTALL_PMD=true +ARG PMD_VERSION=7.0.0-rc3 ARG INSTALL_ESLINT=true ARG INSTALL_PYLINT=true @@ -193,7 +196,7 @@ RUN if [ "$INSTALL_FLUX" = "true" ]; then \ # Install KinD if requested RUN if [ "$INSTALL_KIND" = "true" ]; then \ - curl -Lo /usr/local/bin/kind "https://kind.sigs.k8s.io/dl/v0.20.0/kind-$(uname)-amd64" \ + curl -fsSLo /usr/local/bin/kind "https://github.com/kubernetes-sigs/kind/releases/download/v${KIND_VERSION}/kind-${TARGETOS}-${TARGETARCH}" \ && chmod +x /usr/local/bin/kind; \ fi @@ -245,11 +248,12 @@ RUN if [ "$INSTALL_ANT" = "true" ]; then \ # SonarQube Scanner RUN if [ "$INSTALL_SONARQUBE" = "true" ]; then \ - mkdir -p /opt/sonar-scanner \ - && curl -sSLo /opt/sonar-scanner-cli.zip https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.8.0.2856-linux.zip \ - && unzip /opt/sonar-scanner-cli.zip -d /opt \ - && mv /opt/sonar-scanner-* /opt/sonar-scanner \ - && rm /opt/sonar-scanner-cli.zip \ + curl -fsSLo /tmp/sonar-scanner-cli.zip "https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-${SONAR_SCANNER_VERSION}-linux.zip" \ + && rm -rf /opt/sonar-scanner /tmp/sonar-scanner \ + && mkdir -p /tmp/sonar-scanner \ + && unzip /tmp/sonar-scanner-cli.zip -d /tmp/sonar-scanner \ + && mv "/tmp/sonar-scanner/sonar-scanner-${SONAR_SCANNER_VERSION}-linux" /opt/sonar-scanner \ + && rm -rf /tmp/sonar-scanner /tmp/sonar-scanner-cli.zip \ && echo 'export PATH=$PATH:/opt/sonar-scanner/bin' >> /etc/bash.bashrc; \ fi @@ -264,7 +268,7 @@ RUN if [ "$INSTALL_CHECKSTYLE" = "true" ]; then \ # PMD RUN if [ "$INSTALL_PMD" = "true" ]; then \ mkdir -p /opt/pmd \ - && curl -sSLo /opt/pmd.zip https://github.com/pmd/pmd/releases/download/pmd_releases%2F7.0.0-rc3/pmd-bin-7.0.0-rc3.zip \ + && curl -fsSLo /opt/pmd.zip "https://github.com/pmd/pmd/releases/download/pmd_releases/${PMD_VERSION}/pmd-dist-${PMD_VERSION}-bin.zip" \ && unzip /opt/pmd.zip -d /opt \ && mv /opt/pmd-bin-* /opt/pmd \ && rm /opt/pmd.zip \ @@ -308,8 +312,8 @@ RUN if [ "$INSTALL_PROMETHEUS" = "true" ]; then \ # Grafana RUN if [ "$INSTALL_GRAFANA" = "true" ]; then \ - wget -q -O - https://packages.grafana.com/gpg.key | gpg --dearmor | tee /usr/share/keyrings/grafana.gpg > /dev/null \ - && echo "deb [signed-by=/usr/share/keyrings/grafana.gpg] https://packages.grafana.com/oss/deb stable main" | tee -a /etc/apt/sources.list.d/grafana.list \ + wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | tee /usr/share/keyrings/grafana.gpg > /dev/null \ + && echo "deb [signed-by=/usr/share/keyrings/grafana.gpg] https://apt.grafana.com stable main" | tee -a /etc/apt/sources.list.d/grafana.list \ && apt-get update \ && apt-get install -y grafana; \ fi From bf5eb15305317f89dce4f195b104c35f2c973f75 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 09:17:44 +0000 Subject: [PATCH 10/11] Fix PMD extracted directory pattern Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/5a7ec5cb-5911-4929-a875-d57261636b95 Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index fdc1f22..31d00d1 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -270,7 +270,7 @@ RUN if [ "$INSTALL_PMD" = "true" ]; then \ mkdir -p /opt/pmd \ && curl -fsSLo /opt/pmd.zip "https://github.com/pmd/pmd/releases/download/pmd_releases/${PMD_VERSION}/pmd-dist-${PMD_VERSION}-bin.zip" \ && unzip /opt/pmd.zip -d /opt \ - && mv /opt/pmd-bin-* /opt/pmd \ + && mv /opt/pmd-* /opt/pmd \ && rm /opt/pmd.zip \ && echo 'export PATH=$PATH:/opt/pmd/bin' >> /etc/bash.bashrc; \ fi From e7b9bc7443298e894255ef4e9331367d7e3bfdef Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 15 Apr 2026 09:21:02 +0000 Subject: [PATCH 11/11] Tighten Sonar and PMD install steps Agent-Logs-Url: https://github.com/cloudengine-labs/devops_os/sessions/5a7ec5cb-5911-4929-a875-d57261636b95 Co-authored-by: chefgs <7605658+chefgs@users.noreply.github.com> --- .devcontainer/Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 31d00d1..b671109 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -249,7 +249,7 @@ RUN if [ "$INSTALL_ANT" = "true" ]; then \ # SonarQube Scanner RUN if [ "$INSTALL_SONARQUBE" = "true" ]; then \ curl -fsSLo /tmp/sonar-scanner-cli.zip "https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-${SONAR_SCANNER_VERSION}-linux.zip" \ - && rm -rf /opt/sonar-scanner /tmp/sonar-scanner \ + && rm -rf /opt/sonar-scanner \ && mkdir -p /tmp/sonar-scanner \ && unzip /tmp/sonar-scanner-cli.zip -d /tmp/sonar-scanner \ && mv "/tmp/sonar-scanner/sonar-scanner-${SONAR_SCANNER_VERSION}-linux" /opt/sonar-scanner \ @@ -270,7 +270,7 @@ RUN if [ "$INSTALL_PMD" = "true" ]; then \ mkdir -p /opt/pmd \ && curl -fsSLo /opt/pmd.zip "https://github.com/pmd/pmd/releases/download/pmd_releases/${PMD_VERSION}/pmd-dist-${PMD_VERSION}-bin.zip" \ && unzip /opt/pmd.zip -d /opt \ - && mv /opt/pmd-* /opt/pmd \ + && mv "/opt/pmd-bin-${PMD_VERSION}" /opt/pmd \ && rm /opt/pmd.zip \ && echo 'export PATH=$PATH:/opt/pmd/bin' >> /etc/bash.bashrc; \ fi