> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://support.stacktrack.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Platform, Tools and Environment Documentation

# AMI Documentation

**Generated At:** 2026-06-26T20:05:34.507979
**Workflow ID:** ami-workflow-d4d0fc47

## Platforms

### Ubuntu AMD64
* **AMI ID:** `ami-0dbc125eb45c6bfb0`
* **OS:** Ubuntu (amd64)
* **Tools:** 141 installed

### Windows AMD64
* **AMI ID:** `ami-07cb8e6aaec6a39a7`
* **OS:** Windows (amd64)
* **Tools:** 32 installed

### Ubuntu ARM64
* **AMI ID:** `ami-06b9067cff29cbd24`
* **OS:** Ubuntu (arm64)
* **Tools:** 133 installed

## AMI IDs by Region

### Ubuntu AMD64
* **eu-central-1:** `ami-0905ee82dd4be571d`
* **eu-west-1:** `ami-042092ec3f7781e04`
* **eu-west-2:** `ami-0239a420cf512396a`
* **us-east-2:** `ami-0f3022b331b9a2e34`

### Windows AMD64
* **eu-central-1:** `ami-0280678ef7240f279`
* **eu-west-1:** `ami-0feefdea52c2d96b9`
* **eu-west-2:** `ami-049a567078f1ca109`
* **us-east-2:** `ami-0a27621ca341e038f`

### Ubuntu ARM64
* **eu-central-1:** `ami-0272821b9ba79e27f`
* **eu-west-1:** `ami-0d9c56439979111de`
* **eu-west-2:** `ami-03b87b3bf1f6b14e7`
* **us-east-2:** `ami-0a79ca9dcdecbc332`

## Installed Tools

### Java (JDK)

Multiple JDK versions managed by jenv. JDK 21 is the system default.

| Jenkins Tool Name | Java Version | `JAVA_HOME` | `JENV_VERSION` |
| ---- |
| **JDK11** | 11.0.31 | `/usr/local/jdk-11` | `11.0` |
| **JDK11** | 11.0.31 | `C:\Program Files\Microsoft\jdk-11.0.31.11-hotspot` | `11.0` |
| **JDK17** | 17.0.19 | `/usr/local/jdk-17` | `17.0` |
| **JDK17** | 17.0.19 | `C:\Program Files\Microsoft\jdk-17.0.19.10-hotspot` | `17.0` |
| **JDK21** *(default)* | 21.0.11 | `/usr/local/jdk-21` | `21.0` |
| **JDK21** *(default)* | 21.0.11 | `C:\Program Files\Microsoft\jdk-21.0.11.10-hotspot` | `21.0` |
| **JDK25** | 25.0.3 | `/usr/local/jdk-25` | `25.0` |
| **JDK25** | 25.0.3 | `C:\Program Files\Microsoft\jdk-25.0.3.9-hotspot` | `25.0` |
| **JDK6** | 6u119 | `/usr/local/jdk-1.6` | `1.6` |
| **JDK7** | 7u352 | `/usr/local/jdk-1.7` | `1.7` |
| **JDK8** | 1.8.0_492 | `/usr/local/jdk-1.8` | `1.8` |

#### Selecting a Java version in your pipeline

**Method 1 — Environment variable (jenv)**
```groovy
pipeline {
  agent { label 'linux' }
  environment { JENV_VERSION = '17.0' }
  stages {
    stage('Build') { steps { sh 'mvn -B clean package' } }
  }
}
```

**Method 2 — Jenkins JDK tool**
```groovy
pipeline {
  agent { label 'linux' }
  tools { jdk 'JDK17' }
  stages {
    stage('Build') { steps { sh 'mvn -B clean package' } }
  }
}
```

### Android SDK
*Android SDK platforms and build tools*

| Tool | Version | Path | Platforms |
| ---- |
| android-platform-30 | 30 | /home/ubuntu/Android/platforms/android-30 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-31 | 31 | /home/ubuntu/Android/platforms/android-31 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-32 | 32 | /home/ubuntu/Android/platforms/android-32 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-33 | 33 | /home/ubuntu/Android/platforms/android-33 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-34 | 34 | /home/ubuntu/Android/platforms/android-34 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-35 | 35 | /home/ubuntu/Android/platforms/android-35 | Ubuntu AMD64, Ubuntu ARM64 |
| android-platform-36 | 36 | /home/ubuntu/Android/platforms/android-36 | Ubuntu AMD64, Ubuntu ARM64 |
| android-sdk |  | /home/ubuntu/Android/cmdline-tools/bin/sdkmanager | Ubuntu AMD64, Ubuntu ARM64 |

### Build Tools
*Build automation tools*

| Tool | Version | Path | Platforms |
| ---- |
| gradle | 7.6.4 | /home/ubuntu/.sdkman/candidates/gradle/7.6.4 | Ubuntu AMD64, Ubuntu ARM64 |
| gradle | 8.8 | /home/ubuntu/.sdkman/candidates/gradle/8.8 | Ubuntu AMD64, Ubuntu ARM64 |
| gradle | 8.9 | /home/ubuntu/.sdkman/candidates/gradle/8.9 | Ubuntu AMD64, Ubuntu ARM64 |
| gradle | 8.10.2 | /home/ubuntu/.sdkman/candidates/gradle/8.10.2 | Ubuntu AMD64, Ubuntu ARM64 |
| gradle | 9.6.0 | /home/ubuntu/.sdkman/candidates/gradle/9.6.0 | Ubuntu AMD64, Ubuntu ARM64 |
| maven | 3.8.8 | /home/ubuntu/.sdkman/candidates/maven/3.8.8 | Ubuntu AMD64, Ubuntu ARM64 |
| maven | 3.9.6 | /home/ubuntu/.sdkman/candidates/maven/3.9.6 | Ubuntu AMD64, Ubuntu ARM64 |
| maven | 3.9.8 | /home/ubuntu/.sdkman/candidates/maven/3.9.8 | Ubuntu AMD64, Ubuntu ARM64 |
| maven | 3.9.16 | /home/ubuntu/.sdkman/candidates/maven/3.9.16 | Ubuntu AMD64, Ubuntu ARM64 |
| sbt | 1.10.1 | /home/ubuntu/.sdkman/candidates/sbt/1.10.1 | Ubuntu AMD64, Ubuntu ARM64 |

### Container & Cloud
*Container and cloud tooling*

| Tool | Version | Path | Platforms |
| ---- |
| aws-cli | aws-cli/2.35.11 | /usr/local/bin/aws | Ubuntu AMD64, Ubuntu ARM64 |
| docker | Docker version 29.6.1, build 8900f1d | /usr/bin/docker | Ubuntu AMD64, Ubuntu ARM64 |
| docker | 29.6.1 | C:\Windows\system32\docker.exe | Windows AMD64 |
| docker-ce | 29.6.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| docker-ce | installed | C:\Users\Administrator\install-docker-ce.ps1 | Windows AMD64 |
| docker-ce-cli | 29.6.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| docker-ce-post-reboot | installed | C:\Users\Administrator\install-docker-ce.ps1 | Windows AMD64 |
| docker-compose | Docker Compose version v2.1.1 | /usr/local/bin/docker-compose | Ubuntu AMD64, Ubuntu ARM64 |
| helm | v4.1.4+g05fa379 | C:\ProgramData\chocolatey\bin\helm.exe | Windows AMD64 |
| helm3 | 3.21.2 | /usr/local/bin/helm | Ubuntu AMD64, Ubuntu ARM64 |
| kubernetes-helm | INSTALLED | Chocolatey package | Windows AMD64 |

### Development Libraries
*Development libraries (apt)*

| Tool | Version | Path | Platforms |
| ---- |
| libasound2 | 1.2.6.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libdb-dev | 5.3.21~exp1ubuntu4 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libffi-dev | 3.4.2 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libgbm-dev | 23.2.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libgconf-2-4 | 3.2.6 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libgdbm-dev | 1.23 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libgdbm6 | 1.23 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libgtk2.0-0 | 2.24.33 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libncurses5-dev | 6.3 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libnotify-dev | 0.7.9 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libnss3 | 3.98 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libreadline-dev | 8.1.2 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libssl-dev | 3.0.2 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libxss1 | 1.2.3 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libxtst6 | 1.2.3 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| libyaml-dev | 0.2.2 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| zlib1g-dev | 1.2.11.dfsg | System package | Ubuntu AMD64, Ubuntu ARM64 |

### Monitoring
*Metrics and observability agents*

| Tool | Version | Path | Platforms |
| ---- |
| node-exporter | 1.8.2 | /usr/local/bin/node_exporter | Ubuntu AMD64, Ubuntu ARM64 |

### Package Managers
*Package managers*

| Tool | Version | Path | Platforms |
| ---- |
| apt-transport-https | 2.4.14 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| gem | 3.6.9 | C:\tools\ruby34\bin\gem.cmd | Windows AMD64 |
| npm | 11.16.0 | C:\Program Filesodejspm.cmd | Windows AMD64 |

### Programming Languages
*Language runtimes and version managers*

| Tool | Version | Path | Platforms |
| ---- |
| nodejs-lts | v24.18.0 | C:\Program Filesodejsode.exe | Windows AMD64 |
| nvm | 0.39.3 | /home/ubuntu/.nvm/nvm.sh | Ubuntu AMD64, Ubuntu ARM64 |
| php | 8.2.31 | /usr/bin/php | Ubuntu AMD64, Ubuntu ARM64 |
| php | PHP | 8.5.7 (cli) (built: Jun  2 2026 21:14:36) (NTS Visual C++ 2022 x64) | Windows AMD64 |
| python | 3.14.6 | C:\Python314\python.exe | Windows AMD64 |
| python3 | 3.10.12 | /usr/bin/python3 | Ubuntu ARM64 |
| rbenv | rbenv 1.3.2-22-g7f984a7 | /home/ubuntu/.rbenv | Ubuntu AMD64, Ubuntu ARM64 |
| ruby | 3.4.5 | /home/ubuntu/.rbenv/versions/3.4.5 | Ubuntu AMD64, Ubuntu ARM64 |
| ruby | ruby | 3.4.9 (2026-03-11 revision 76cca827ab) +PRISM [x64-mingw-ucrt] | Windows AMD64 |
| sdkman | SDKMAN! | /home/ubuntu/.sdkman | Ubuntu AMD64, Ubuntu ARM64 |

### Security & SSH
*Security and SSH tooling*

| Tool | Version | Path | Platforms |
| ---- |
| openssh-service | configured | C:\Program Files\OpenSSH-Win64\ | Windows AMD64 |

### System Utilities
*OS utilities and browsers*

| Tool | Version | Path | Platforms |
| ---- |
| chromium-browser | Chromium 149.0.7827.196 snap | /usr/bin/chromium-browser | Ubuntu ARM64 |
| curl | 7.81.0 | /usr/bin/curl | Ubuntu AMD64, Ubuntu ARM64 |
| firefox | Mozilla Firefox 152.0.3 | /usr/bin/firefox | Ubuntu AMD64, Ubuntu ARM64 |
| google-chrome-stable | Google Chrome 149.0.7827.200 | /usr/bin/google-chrome | Ubuntu AMD64 |
| jq | 1.6 | /usr/bin/jq | Ubuntu AMD64, Ubuntu ARM64 |
| less | 590 | /usr/bin/less | Ubuntu AMD64, Ubuntu ARM64 |
| unzip | 6.0 | /usr/bin/unzip | Ubuntu AMD64, Ubuntu ARM64 |
| xauth | 1.1 | /usr/bin/xauth | Ubuntu AMD64, Ubuntu ARM64 |
| xvfb | 21.1.4 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| zip | 3.0 | /usr/bin/zip | Ubuntu AMD64, Ubuntu ARM64 |

### Testing & Automation
*Testing and browser automation*

| Tool | Version | Path | Platforms |
| ---- |
| selenium-4.0 | 4.0.0-alpha-2 | /home/ubuntu/Selenium/4.0/selenium-server-standalone.jar | Ubuntu AMD64, Ubuntu ARM64 |
| selenium-default | 4.0.0-alpha-2 | /home/ubuntu/Selenium/selenium-server-standalone.jar | Ubuntu AMD64, Ubuntu ARM64 |

### Other Tools
*Miscellaneous tools*

| Tool | Version | Path | Platforms |
| ---- |
| autoconf | 2.71 | /usr/bin/autoconf | Ubuntu AMD64, Ubuntu ARM64 |
| bash-env |  | /etc/environment | Ubuntu AMD64, Ubuntu ARM64 |
| bison | 3.8.2 | /usr/bin/bison | Ubuntu AMD64, Ubuntu ARM64 |
| build-essential | 12.9ubuntu3 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| ca-certificates | 20260601~22.04.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| chocolatey | 2.7.3 | C:\ProgramData\chocolatey\bin\choco.exe | Windows AMD64 |
| composer | 2.5.5 | /usr/bin/composer | Ubuntu AMD64, Ubuntu ARM64 |
| containerd.io | 2.2.5 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| dotnet-6.0-runtime | 6.0 | Installed | Windows AMD64 |
| dotnet-6.0-sdk | 6.0 | Installed | Windows AMD64 |
| dotnet-7.0-runtime | 7.0 | Installed | Windows AMD64 |
| dotnet-7.0-sdk | 7.0 | Installed | Windows AMD64 |
| dotnet4.5 | 4.5 | Installed | Windows AMD64 |
| gnupg-agent | 2.2.27 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| kotlin | 2.0.20 | /home/ubuntu/.sdkman/candidates/kotlin/2.0.20 | Ubuntu AMD64, Ubuntu ARM64 |
| scala | 3.5.0 | /home/ubuntu/.sdkman/candidates/scala/3.5.0 | Ubuntu AMD64, Ubuntu ARM64 |
| software-properties-common | 0.99.22.9 | System package | Ubuntu AMD64, Ubuntu ARM64 |

### Version Control
*Source control tools*

| Tool | Version | Path | Platforms |
| ---- |
| git | 2.34.1 | /usr/bin/git | Ubuntu AMD64, Ubuntu ARM64 |
| git | 2.54.0.windows.1 | C:\Program Files\Git\cmd\git.exe | Windows AMD64 |
| git-lfs | 1.18.1 | /usr/bin/git-lfs | Ubuntu AMD64, Ubuntu ARM64 |
| git-lfs | git-lfs/3.7.1 | (GitHub; | Windows AMD64 |
| github-cli | gh version 2.95.0 (2026-06-17) | /usr/bin/gh | Ubuntu AMD64, Ubuntu ARM64 |
| github-cli-key |  | /usr/share/keyrings/githubcli-archive-keyring.gpg | Ubuntu AMD64, Ubuntu ARM64 |
| mercurial | 6.1.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |
| mercurial | Mercurial Distributed SCM (version 6.1.1) | /usr/bin/hg | Ubuntu AMD64, Ubuntu ARM64 |
| subversion | 1.14.1 | System package | Ubuntu AMD64, Ubuntu ARM64 |

## Environment Variables

### Ubuntu AMD64
* `NVM_DIR` = `/home/ubuntu/.nvm`
* `SDKMAN_DIR` = `/home/ubuntu/.sdkman`
* `RBENV_ROOT` = `/home/ubuntu/.rbenv`

### Ubuntu ARM64
* `NVM_DIR` = `/home/ubuntu/.nvm`
* `SDKMAN_DIR` = `/home/ubuntu/.sdkman`
* `RBENV_ROOT` = `/home/ubuntu/.rbenv`

## Jenkins Pipeline Examples

### Java Maven Build — ubuntu-amd64 (small)
**Platform:** Ubuntu Amd64 | **Tools:** java, maven

Build, test, and package a Java Maven project.

```groovy
pipeline {
  agent { label 'small x86 linux && java' }
  stages {
    stage('Build')  { steps { sh 'mvn -B clean package -DskipTests' } }
    stage('Test')   { steps { sh 'mvn -B test' } }
    stage('Deploy') { steps { sh 'mvn -B deploy -DskipTests' } }
  }
}
```
> JAR/WAR artifact published to the Maven repository.

### Java Maven Build — ubuntu-arm64 (medium)
**Platform:** Ubuntu Arm64 | **Tools:** java, maven

Build, test, and package a Java Maven project.

```groovy
pipeline {
  agent { label 'medium arm linux && java' }
  stages {
    stage('Build')  { steps { sh 'mvn -B clean package -DskipTests' } }
    stage('Test')   { steps { sh 'mvn -B test' } }
    stage('Deploy') { steps { sh 'mvn -B deploy -DskipTests' } }
  }
}
```
> JAR/WAR artifact published to the Maven repository.

### Java Maven Build — windows-amd64 (large)
**Platform:** Windows Amd64 | **Tools:** java, maven

Build, test, and package a Java Maven project.

```groovy
pipeline {
  agent { label 'large x86 windows && java' }
  stages {
    stage('Build')  { steps { sh 'mvn -B clean package -DskipTests' } }
    stage('Test')   { steps { sh 'mvn -B test' } }
    stage('Deploy') { steps { sh 'mvn -B deploy -DskipTests' } }
  }
}
```
> JAR/WAR artifact published to the Maven repository.

### Java Gradle Build — ubuntu-amd64 (xlarge)
**Platform:** Ubuntu Amd64 | **Tools:** java, gradle

Build, test, and assemble a Gradle project.

```groovy
pipeline {
  agent { label 'xlarge x86 linux && java' }
  stages {
    stage('Build')  { steps { sh './gradlew clean assemble' } }
    stage('Test')   { steps { sh './gradlew test' } }
    stage('Deploy') { steps { sh './gradlew publish' } }
  }
}
```
> Build artifacts assembled and published.

### Java Gradle Build — ubuntu-arm64 (2xlarge)
**Platform:** Ubuntu Arm64 | **Tools:** java, gradle

Build, test, and assemble a Gradle project.

```groovy
pipeline {
  agent { label '2xlarge arm linux && java' }
  stages {
    stage('Build')  { steps { sh './gradlew clean assemble' } }
    stage('Test')   { steps { sh './gradlew test' } }
    stage('Deploy') { steps { sh './gradlew publish' } }
  }
}
```
> Build artifacts assembled and published.

### Java Gradle Build — windows-amd64 (4xlarge)
**Platform:** Windows Amd64 | **Tools:** java, gradle

Build, test, and assemble a Gradle project.

```groovy
pipeline {
  agent { label '4xlarge x86 windows && java' }
  stages {
    stage('Build')  { steps { sh './gradlew clean assemble' } }
    stage('Test')   { steps { sh './gradlew test' } }
    stage('Deploy') { steps { sh './gradlew publish' } }
  }
}
```
> Build artifacts assembled and published.

### Node.js (nvm) Build — ubuntu-amd64 (small)
**Platform:** Ubuntu Amd64 | **Tools:** nvm, node, npm

Install dependencies, run tests, and build a Node.js project using nvm.

```groovy
pipeline {
  agent { label 'small x86 linux && nodejs' }
  stages {
    stage('Install') { steps { sh '. $NVM_DIR/nvm.sh && npm ci' } }
    stage('Test')    { steps { sh '. $NVM_DIR/nvm.sh && npm test' } }
    stage('Build')   { steps { sh '. $NVM_DIR/nvm.sh && npm run build' } }
  }
}
```
> Node.js application built and tested.

### Node.js (nvm) Build — ubuntu-arm64 (medium)
**Platform:** Ubuntu Arm64 | **Tools:** nvm, node, npm

Install dependencies, run tests, and build a Node.js project using nvm.

```groovy
pipeline {
  agent { label 'medium arm linux && nodejs' }
  stages {
    stage('Install') { steps { sh '. $NVM_DIR/nvm.sh && npm ci' } }
    stage('Test')    { steps { sh '. $NVM_DIR/nvm.sh && npm test' } }
    stage('Build')   { steps { sh '. $NVM_DIR/nvm.sh && npm run build' } }
  }
}
```
> Node.js application built and tested.

### Node.js (nvm) Build — windows-amd64 (large)
**Platform:** Windows Amd64 | **Tools:** nvm, node, npm

Install dependencies, run tests, and build a Node.js project using nvm.

```groovy
pipeline {
  agent { label 'large x86 windows && nodejs' }
  stages {
    stage('Install') { steps { sh '. $NVM_DIR/nvm.sh && npm ci' } }
    stage('Test')    { steps { sh '. $NVM_DIR/nvm.sh && npm test' } }
    stage('Build')   { steps { sh '. $NVM_DIR/nvm.sh && npm run build' } }
  }
}
```
> Node.js application built and tested.

### Ruby (rbenv) Build — ubuntu-amd64 (xlarge)
**Platform:** Ubuntu Amd64 | **Tools:** rbenv, ruby, gem

Install gems and run RSpec tests using rbenv.

```groovy
pipeline {
  agent { label 'xlarge x86 linux && ruby' }
  stages {
    stage('Install') { steps { sh 'eval "$(rbenv init -)" && bundle install' } }
    stage('Test')    { steps { sh 'eval "$(rbenv init -)" && bundle exec rspec' } }
  }
}
```
> Ruby gems installed and RSpec suite passed.

### Ruby (rbenv) Build — ubuntu-arm64 (2xlarge)
**Platform:** Ubuntu Arm64 | **Tools:** rbenv, ruby, gem

Install gems and run RSpec tests using rbenv.

```groovy
pipeline {
  agent { label '2xlarge arm linux && ruby' }
  stages {
    stage('Install') { steps { sh 'eval "$(rbenv init -)" && bundle install' } }
    stage('Test')    { steps { sh 'eval "$(rbenv init -)" && bundle exec rspec' } }
  }
}
```
> Ruby gems installed and RSpec suite passed.

### Ruby (rbenv) Build — windows-amd64 (4xlarge)
**Platform:** Windows Amd64 | **Tools:** rbenv, ruby, gem

Install gems and run RSpec tests using rbenv.

```groovy
pipeline {
  agent { label '4xlarge x86 windows && ruby' }
  stages {
    stage('Install') { steps { sh 'eval "$(rbenv init -)" && bundle install' } }
    stage('Test')    { steps { sh 'eval "$(rbenv init -)" && bundle exec rspec' } }
  }
}
```
> Ruby gems installed and RSpec suite passed.

### Python Build — ubuntu-amd64 (small)
**Platform:** Ubuntu Amd64 | **Tools:** python, pip

Install dependencies and run pytest.

```groovy
pipeline {
  agent { label 'small x86 linux && python' }
  stages {
    stage('Install') { steps { sh 'pip install -r requirements.txt' } }
    stage('Test')    { steps { sh 'pytest --junitxml=results.xml' } }
  }
  post { always { junit 'results.xml' } }
}
```
> Python tests passed and results published.

### Python Build — ubuntu-arm64 (medium)
**Platform:** Ubuntu Arm64 | **Tools:** python, pip

Install dependencies and run pytest.

```groovy
pipeline {
  agent { label 'medium arm linux && python' }
  stages {
    stage('Install') { steps { sh 'pip install -r requirements.txt' } }
    stage('Test')    { steps { sh 'pytest --junitxml=results.xml' } }
  }
  post { always { junit 'results.xml' } }
}
```
> Python tests passed and results published.

### Python Build — windows-amd64 (large)
**Platform:** Windows Amd64 | **Tools:** python, pip

Install dependencies and run pytest.

```groovy
pipeline {
  agent { label 'large x86 windows && python' }
  stages {
    stage('Install') { steps { sh 'pip install -r requirements.txt' } }
    stage('Test')    { steps { sh 'pytest --junitxml=results.xml' } }
  }
  post { always { junit 'results.xml' } }
}
```
> Python tests passed and results published.

### Docker Agent Build — ubuntu-amd64 (xlarge)
**Platform:** Ubuntu Amd64 | **Tools:** docker

Build and push a Docker image using the host Docker daemon.

```groovy
pipeline {
  agent { label 'xlarge x86 linux && docker' }
  stages {
    stage('Build') { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')  { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
  }
}
```
> Docker image built and pushed to registry.

### Docker Agent Build — ubuntu-arm64 (2xlarge)
**Platform:** Ubuntu Arm64 | **Tools:** docker

Build and push a Docker image using the host Docker daemon.

```groovy
pipeline {
  agent { label '2xlarge arm linux && docker' }
  stages {
    stage('Build') { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')  { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
  }
}
```
> Docker image built and pushed to registry.

### Docker Agent Build — windows-amd64 (4xlarge)
**Platform:** Windows Amd64 | **Tools:** docker

Build and push a Docker image using the host Docker daemon.

```groovy
pipeline {
  agent { label '4xlarge x86 windows && docker' }
  stages {
    stage('Build') { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')  { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
  }
}
```
> Docker image built and pushed to registry.

### Helm Deploy — ubuntu-amd64 (small)
**Platform:** Ubuntu Amd64 | **Tools:** helm, docker

Build a Docker image and deploy to Kubernetes via Helm.

```groovy
pipeline {
  agent { label 'small x86 linux && docker' }
  stages {
    stage('Build')  { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')   { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
    stage('Deploy') { steps { sh 'helm upgrade --install my-app ./chart --set image.tag=$BUILD_NUMBER' } }
  }
}
```
> Application deployed to Kubernetes cluster.

### Helm Deploy — ubuntu-arm64 (medium)
**Platform:** Ubuntu Arm64 | **Tools:** helm, docker

Build a Docker image and deploy to Kubernetes via Helm.

```groovy
pipeline {
  agent { label 'medium arm linux && docker' }
  stages {
    stage('Build')  { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')   { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
    stage('Deploy') { steps { sh 'helm upgrade --install my-app ./chart --set image.tag=$BUILD_NUMBER' } }
  }
}
```
> Application deployed to Kubernetes cluster.

### Helm Deploy — windows-amd64 (large)
**Platform:** Windows Amd64 | **Tools:** helm, docker

Build a Docker image and deploy to Kubernetes via Helm.

```groovy
pipeline {
  agent { label 'large x86 windows && docker' }
  stages {
    stage('Build')  { steps { sh 'docker build -t my-app:$BUILD_NUMBER .' } }
    stage('Push')   { steps { sh 'docker push my-app:$BUILD_NUMBER' } }
    stage('Deploy') { steps { sh 'helm upgrade --install my-app ./chart --set image.tag=$BUILD_NUMBER' } }
  }
}
```
> Application deployed to Kubernetes cluster.

### UI Tests (Selenium/Chrome) — ubuntu-amd64 (xlarge)
**Platform:** Ubuntu Amd64 | **Tools:** selenium, chrome, xvfb

Run Selenium UI tests against Chrome in a virtual framebuffer.

```groovy
pipeline {
  agent { label 'xlarge x86 linux && ui-testing' }
  stages {
    stage('UI Test') {
      steps {
        sh 'Xvfb :99 -screen 0 1920x1080x24 &'
        sh 'DISPLAY=:99 mvn -B test -Dtest=UITestSuite'
      }
    }
  }
}
```
> UI test suite passed against headless Chrome.

### UI Tests (Selenium/Chrome) — ubuntu-arm64 (2xlarge)
**Platform:** Ubuntu Arm64 | **Tools:** selenium, chrome, xvfb

Run Selenium UI tests against Chrome in a virtual framebuffer.

```groovy
pipeline {
  agent { label '2xlarge arm linux && ui-testing' }
  stages {
    stage('UI Test') {
      steps {
        sh 'Xvfb :99 -screen 0 1920x1080x24 &'
        sh 'DISPLAY=:99 mvn -B test -Dtest=UITestSuite'
      }
    }
  }
}
```
> UI test suite passed against headless Chrome.

### PHP Build — ubuntu-amd64 (4xlarge)
**Platform:** Ubuntu Amd64 | **Tools:** php

Install PHP dependencies and run PHPUnit.

```groovy
pipeline {
  agent { label '4xlarge x86 linux && php' }
  stages {
    stage('Install') { steps { sh 'composer install --no-dev' } }
    stage('Test')    { steps { sh 'vendor/bin/phpunit' } }
  }
}
```
> PHP dependencies installed and tests passed.

### PHP Build — ubuntu-arm64 (small)
**Platform:** Ubuntu Arm64 | **Tools:** php

Install PHP dependencies and run PHPUnit.

```groovy
pipeline {
  agent { label 'small arm linux && php' }
  stages {
    stage('Install') { steps { sh 'composer install --no-dev' } }
    stage('Test')    { steps { sh 'vendor/bin/phpunit' } }
  }
}
```
> PHP dependencies installed and tests passed.