A collection of reusable WebAssembly modules for building composable CI/CD pipelines with FluentCI
README.md

Java #

Set up Java from FluentCI using PureScript compiled to WebAssembly.

Platforms #

Linux, macOS, FreeBSD, OpenBSD, and NetBSD. Linux/macOS use upstream downloads; BSD uses the native repository and requires an available package for your OS and architecture.

Eclipse Temurin JDK archives from Adoptium. Select a major such as 21, an exact release such as 21.0.5+11, or latest for the latest LTS. Defaults to 21. Publishes JAVA_HOME.

Usage #

fluentci run java setup 21

Omit the version to use the default. The setup export also accepts a JSON object as plugin input:

{
  "version": "21"
}

See the shared setup guide for configuration, prerequisites, installation paths, native BSD package selectors, privileges, and output format. After installation, setup verifies the runtime version and updates PATH in the FluentCI engine for later steps.

Compose in PureScript #

module Main where

import Prelude
import CI.Setup.Java as Runtime
import Effect (Effect)

bootstrap :: Effect Unit
bootstrap = void (Runtime.setupWith (Runtime.defaultConfig { version = "21" }))

Development #

Keep the checked-in lib/setup library and test/setup fixtures available, then run from this directory:

npm ci
npm run build
npm test

The build produces dist/plugin.wasm. See the shared guide for optional live upstream smoke tests and the limits of stub-host BSD verification.

License #

MIT.