Temurin/Adoptium

kind: temurin

sourceconditiontarget

Description

source

The Temurin (Adoptium) "source" retrieves a release name, Installer URL, Checksum URL or signature URL from Adoptium (https://adoptium.net/) using their API (https://api.adoptium.net/).

condition

The Temurin (Adoptium) "condition" verifies if a given Temurin Adoptium (https://adoptium.net/) release exists using their API (https://api.adoptium.net/). It can perform verification for a collection of platforms (Operating System + CPU Architecture).

target

Unsupported

Parameter

NameTypeDescriptionRequired
architecturestring

Architecture specifies the CPU architecture (as defined by the Temurin API - https://api.adoptium.net/q/swagger-ui/#/Types) to filter the Temurin release to retrieve.

default: “x64”

Allowed values:

  • “x64” (Intel/AMD 64 Bits)
  • “x86” (Intel/AMD 32 Bits)
  • “ppc64” (PowerPC 64 Bits)
  • “ppc64le” (PowerPC Little Endian 64 Bits)
  • “s390x” (IBM Z)
  • “aarch64” (ARM 64 Bits)
  • “arm” (ARM 32 Bits)
  • “sparcv9” (Sparc 64 Bits)
  • “riscv64” (RiscV 64 Bits)
featureversioninteger

FeatureVersion specifies the Major Java version to filter the Temurin release to retrieve.

default: undefined

Allowed values: integer number (8, 11, 17, 21, etc.)

imagetypestring

ImageType specifies the type of artifact to filter the Temurin release to retrieve.

default: “jdk”

Allowed values:

  • “jdk”
  • “jre”
  • “testimage”
  • “debugimage”
  • “staticlibs”
  • “source
  • “sbom”
operatingsystemstring

OperatingSystem specifies the Operating System (as defined by the Temurin API - https://api.adoptium.net/q/swagger-ui/#/Types) to filter the Temurin release to retrieve.

default: “linux”

Allowed values:

  • “linux”
  • “windows”
  • “mac”
  • “solaris”
  • “aix”
  • “alpine-linux”
platformsarray

Platforms is only valid within conditions. It specifies a collection of platforms as a filter for Temurin releases. Each platform must be a combination of an Operating System and a CPU architecture separated by the slash (/) character.

default: empty list (e.g. no filtering per platform).

Allowed values: Any combination of Operating System and Architecture as defined by the Temurin API (https://api.adoptium.net/q/swagger-ui/#/Types):

  • linux/x64
  • linux/aarch64
  • linux/s390x
  • alpine-linux/x64
  • windows/x64
projectstring

Project specifies the project to filter the Temurin release to retrieve.

default: “jdk”

Allowed values:

  • “jdk” (default)
  • “valhalla”
  • “metropolis”
  • “jfr”
  • “shenandoah”
releaselinestring

ReleaseLine specifies the line of Temurin release to retrieve.

default: “lts”

Allowed values:

  • “lts”
  • “feature”
releasetypestring

ReleaseType specifies the type of Temurin release to retrieve.

default: “ga”

Allowed values:

  • “ga” (General Availability)
  • “ea” (Early Availability, e.g. nightly builds)
resultstring

Result specifies the type of value returned by the retrieved Temurin release.

default: “version”

Allowed values:

  • “version” (Version Name, e.g. the Temurin SCM release name)
  • “installer_url” (HTTP URL to the binary release/installer)
  • “checksum_url” (HTTP URL to the checksum file)
  • “signature_url” (HTTP URL to the signature file)
specificversionstring

SpecificVersion specifies the exact Temurin version to filter the Temurin release to retrieve. Ignores FeatureVersion when used.

default: undefined

Allowed values: string (can be a semantic version, a JDK version or a Temurin release name)

Example

# updatecli.yaml
sources:
  ## Returns the latest LTS version
  getLatestLtsVersion:
    kind: temurin

  ## Returns the latest feature release
  getLatestFeatureVersion:
    kind: temurin
    spec:
      releaseline: feature

  ## Returns the latest LTS "nightly build" (Early Availability) version
  getLatestLtsEarlyAvailabilityVersion:
    kind: temurin
    spec:
      releaseline: lts
      releasetype: ea

  ## Returns the latest "Valhalla" Project JDK 17 version available for Windows
  getLatestWindowsValhalla17Version:
    kind: temurin
    spec:
      featureversion: 17
      project: valhalla
      operatingsystem: windows

  # Returns the latest installer URL for Linux x64
  getLatestLTSLinuxAMD64InstallerURL:
    kind: temurin
    spec:
      result: installer_url

  ## Returns the latest LTS Installer's checksum URL for s390x Alpine Linux JRE
  getLatestJRE17LinuxS390xChecksumUrl:
    kind: temurin
    spec:
      operatingsystem: alpine-linux
      architecture: s390x
      imagetype: jre
      result: checksum_url

  ## Returns latest Installer's Signature URL of the Windows JDK version "17.0.2*"
  getLatestCustomVersionWindowsSignatureUrl:
    kind: temurin
    spec:
      version: "17.0.2"
      operatingsystem: windows
      result: signature_url

conditions:
  checkLatestTemurin:
    name: Temurin Check
    kind: temurin
    disablesourceinput: true
  checkLatestTemurinGA17LinuxArm64:
    name: Temurin Check
    kind: temurin
    disablesourceinput: true
    spec:
      releaseline: feature
      releasetype: ga
      featureversion: 17
      architecture: aarch64
      operatingsystem: linux
  checkFromSpecifiedVersion:
    name: Temurin Check
    kind: temurin
    disablesourceinput: true
    spec:
      specificversion: '{{ source "getLastGA17Version" }}'
  checkListOfPlatforms:
    name: Temurin Check
    kind: temurin
    disablesourceinput: true
    spec:
      specificversion: 17.0.13+11 # Known to provide all existing platform specified below
      platforms:
        - linux/x64
        - linux/aarch64
        - linux/s390x
        - alpine-linux/x64
        - windows/x64
  checkPlatformForSourceInput:
    name: Temurin Check
    kind: temurin
    sourceid: getLatestLtsVersion
    spec:
      platforms:
        - linux/x64
        - linux/aarch64
Top