From 9132e110d968287cfcf9c84d8806ba3e3c009412 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Mon, 24 Jul 2023 12:55:09 -0700 Subject: [PATCH 1/2] Add AL2023 Docker Host Runner and Make M58xlarge Gradle Check Host Signed-off-by: Peter Zhu --- lib/ci-stack.ts | 5 ++- lib/compute/agent-nodes.ts | 78 ++++++++++++++++++++++++++------------ 2 files changed, 57 insertions(+), 26 deletions(-) diff --git a/lib/ci-stack.ts b/lib/ci-stack.ts index 24377b6..54c34e0 100644 --- a/lib/ci-stack.ts +++ b/lib/ci-stack.ts @@ -154,8 +154,9 @@ export class CIStack extends Stack { + 'If you do not copy the AMI in required region and update the code then the jenkins agents will not spin up.'); this.agentNodes = [ - agentNode.AL2_X64, agentNode.AL2_X64_DOCKER_HOST, agentNode.AL2023_X64_DOCKER_HOST_PERF_TEST, agentNode.AL2023_X64_DOCKER_HOST_BENCHMARK_TEST, - agentNode.AL2_ARM64, agentNode.AL2_ARM64_DOCKER_HOST, + agentNode.AL2_X64, agentNode.AL2_X64_DOCKER_HOST, agentNode.AL2023_X64_DOCKER_HOST, + agentNode.AL2_ARM64, agentNode.AL2_ARM64_DOCKER_HOST, agentNode.AL2023_ARM64_DOCKER_HOST, + agentNode.AL2023_X64_DOCKER_HOST_PERF_TEST, agentNode.AL2023_X64_DOCKER_HOST_BENCHMARK_TEST, agentNode.UBUNTU2004_X64_GRADLE_CHECK, agentNode.UBUNTU2004_X64_GRADLE_CHECK_NEW_SPECS, agentNode.UBUNTU2004_X64_DOCKER_BUILDER, agentNode.MACOS12_X64_MULTI_HOST, agentNode.WINDOWS2019_X64, agentNode.WINDOWS2019_X64_GRADLE_CHECK, ]; diff --git a/lib/compute/agent-nodes.ts b/lib/compute/agent-nodes.ts index 4944e19..8501f72 100644 --- a/lib/compute/agent-nodes.ts +++ b/lib/compute/agent-nodes.ts @@ -16,14 +16,18 @@ export class AgentNodes { readonly AL2_X64_DOCKER_HOST: AgentNodeProps; - readonly AL2023_X64_DOCKER_HOST_PERF_TEST: AgentNodeProps; - - readonly AL2023_X64_DOCKER_HOST_BENCHMARK_TEST: AgentNodeProps; + readonly AL2023_X64_DOCKER_HOST: AgentNodeProps; readonly AL2_ARM64: AgentNodeProps; readonly AL2_ARM64_DOCKER_HOST: AgentNodeProps; + readonly AL2023_ARM64_DOCKER_HOST: AgentNodeProps; + + readonly AL2023_X64_DOCKER_HOST_PERF_TEST: AgentNodeProps; + + readonly AL2023_X64_DOCKER_HOST_BENCHMARK_TEST: AgentNodeProps; + readonly UBUNTU2004_X64_GRADLE_CHECK: AgentNodeProps; readonly UBUNTU2004_X64_GRADLE_CHECK_NEW_SPECS: AgentNodeProps; @@ -67,30 +71,17 @@ export class AgentNodes { + ' sudo yum update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', remoteFs: '/var/jenkins', }; - this.AL2023_X64_DOCKER_HOST_PERF_TEST = { + this.AL2023_X64_DOCKER_HOST = { agentType: 'unix', - workerLabelString: 'Jenkins-Agent-AL2023-X64-M52xlarge-Docker-Host-Perf-Test', - instanceType: 'M52xlarge', - remoteUser: 'ec2-user', - maxTotalUses: -1, - minimumNumberOfSpareInstances: 1, - numExecutors: 8, - amiId: 'ami-01dfbac890366ceda', - initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' - + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', - remoteFs: '/var/jenkins', - }; - this.AL2023_X64_DOCKER_HOST_BENCHMARK_TEST = { - agentType: 'unix', - workerLabelString: 'Jenkins-Agent-AL2023-X64-M52xlarge-Docker-Host-Benchmark-Test', - instanceType: 'M52xlarge', + workerLabelString: 'Jenkins-Agent-AL2023-X64-C54xlarge-Docker-Host', + instanceType: 'C54xlarge', remoteUser: 'ec2-user', maxTotalUses: -1, minimumNumberOfSpareInstances: 1, - numExecutors: 2, + numExecutors: 4, amiId: 'ami-01dfbac890366ceda', initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' - + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* --exclude=python* -y && docker ps', remoteFs: '/var/jenkins', }; this.AL2_ARM64 = { @@ -119,13 +110,52 @@ export class AgentNodes { + ' sudo yum update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', remoteFs: '/var/jenkins', }; + this.AL2023_ARM64_DOCKER_HOST = { + agentType: 'unix', + workerLabelString: 'Jenkins-Agent-AL2023-Arm64-C6g4xlarge-Docker-Host', + instanceType: 'C6g4xlarge', + remoteUser: 'ec2-user', + maxTotalUses: -1, + minimumNumberOfSpareInstances: 1, + numExecutors: 4, + amiId: 'ami-05f03fae26b2fa72a', + initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* --exclude=python* -y && docker ps', + remoteFs: '/var/jenkins', + }; + this.AL2023_X64_DOCKER_HOST_PERF_TEST = { + agentType: 'unix', + workerLabelString: 'Jenkins-Agent-AL2023-X64-M52xlarge-Docker-Host-Perf-Test', + instanceType: 'M52xlarge', + remoteUser: 'ec2-user', + maxTotalUses: -1, + minimumNumberOfSpareInstances: 1, + numExecutors: 8, + amiId: 'ami-01dfbac890366ceda', + initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', + remoteFs: '/var/jenkins', + }; + this.AL2023_X64_DOCKER_HOST_BENCHMARK_TEST = { + agentType: 'unix', + workerLabelString: 'Jenkins-Agent-AL2023-X64-M52xlarge-Docker-Host-Benchmark-Test', + instanceType: 'M52xlarge', + remoteUser: 'ec2-user', + maxTotalUses: -1, + minimumNumberOfSpareInstances: 1, + numExecutors: 2, + amiId: 'ami-01dfbac890366ceda', + initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', + remoteFs: '/var/jenkins', + }; this.UBUNTU2004_X64_GRADLE_CHECK = { agentType: 'unix', workerLabelString: 'Jenkins-Agent-Ubuntu2004-X64-C524xlarge-Single-Host', instanceType: 'C524xlarge', remoteUser: 'ubuntu', maxTotalUses: 1, - minimumNumberOfSpareInstances: 1, + minimumNumberOfSpareInstances: 0, numExecutors: 1, amiId: 'ami-0776ef32c1c17729d', initScript: 'sudo apt-mark hold docker docker.io openssh-server gh grub-efi* shim-signed && docker ps &&' @@ -137,8 +167,8 @@ export class AgentNodes { workerLabelString: 'Jenkins-Agent-Ubuntu2004-X64-M58xlarge-Single-Host', instanceType: 'M58xlarge', remoteUser: 'ubuntu', - maxTotalUses: -1, - minimumNumberOfSpareInstances: 0, + maxTotalUses: 1, + minimumNumberOfSpareInstances: 1, numExecutors: 1, amiId: 'ami-089617a5177a0dffe', initScript: 'sudo apt-mark hold docker docker.io openssh-server gh grub-efi* shim-signed && docker ps &&' From 99c6a2a1526d9b9ae061031893fd9006ee22eb79 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Mon, 24 Jul 2023 13:12:21 -0700 Subject: [PATCH 2/2] Add more changes Signed-off-by: Peter Zhu --- lib/compute/agent-nodes.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/compute/agent-nodes.ts b/lib/compute/agent-nodes.ts index 8501f72..28c1492 100644 --- a/lib/compute/agent-nodes.ts +++ b/lib/compute/agent-nodes.ts @@ -133,7 +133,7 @@ export class AgentNodes { numExecutors: 8, amiId: 'ami-01dfbac890366ceda', initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' - + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* --exclude=python* -y && docker ps', remoteFs: '/var/jenkins', }; this.AL2023_X64_DOCKER_HOST_BENCHMARK_TEST = { @@ -146,7 +146,7 @@ export class AgentNodes { numExecutors: 2, amiId: 'ami-01dfbac890366ceda', initScript: 'sudo dnf clean all && sudo rm -rf /var/cache/dnf && sudo dnf repolist &&' - + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* -y && docker ps', + + ' sudo dnf update --skip-broken --exclude=openssh* --exclude=docker* --exclude=gh* --exclude=python* -y && docker ps', remoteFs: '/var/jenkins', }; this.UBUNTU2004_X64_GRADLE_CHECK = {