japgolly/setup-everything-scala

GitHub Action to prepare the environment for Scala & Scala.JS dev and testing

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 20, 2026
License
None

Pinned Snippet

workflow.ymlSHA-pinned
uses: japgolly/setup-everything-scala@3f8419e4a4011d1a97e35335d1226decdd8117b2 # v4.1

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
chrome-versionThe Google Chrome/Chromium version to install and use.nolatest
coursier-appsApplications to install via coursier.nosbt sbtn
coursier-cache-rootRoot directory containing build definition sources (build.sbt, build.sc, etc.) If the sbt or mill build definition files are in a sub-directory, pass the path to this sub-directory here. no.
coursier-cache-pathOverride for the path of the coursier cache. By default, the coursier cache is assumed to be in the default OS-dependent location. Set this input to override that. Note that this action will also set COURSIER_CACHE if an override is specified, so that you don't have to set it yourself. no""
coursier-cache-jobJob name, to be used in the cache key, so that each job has its own cache. no${{ github.job }}
coursier-cache-matrixMatrix values, when using the matrix strategy. When using build matrices for more than the OS (for Scala versions, JDKs, test suites, …), pass the matrix values here, with `matrix: -dollar-{{ toJson(matrix) }}`. The matrix instance is hashed, and added to the cache key, so that each matrix instance has its own cache, and those caches don't collide. no${{ toJson(matrix) }}
coursier-cache-extraFilesExtra files to take into account in the cache key. By default, sbt build definition files (*.sbt, project/**.{scala,sbt}, project/build.properties) and mill build definition files (*.sc, ./mill) are hashed to uniquely identify the cached data. Upon cache restoration, if an exact match is found, the cache is not saved again at the end of the job. In case of no exact match, it is assumed new files may have been fetched; the previous cache for the current OS, if any, is restored, but a new cache is persisted with a new key at the end of the job. To take into account extra files in the cache key, pass via extraFiles either - a single path as a string - multiple paths in a JSON array, encoded in a string Blobs are accepted (processed by [glob-all](https://www.npmjs.com/package/glob-all)). no""
coursier-cache-extraKeyExtra value to be appended to the coursier cache key. See extraFiles for more details. no""
coursier-cache-extraHashedContentExtra content to take into account in the cache key. See extraFiles for more details. The content of extraHashedContent is taken into account in the hash for the coursier cache key. no""
coursier-cache-extraSbtFilesExtra sbt files to take into account in the sbt cache key. Same format as extraFiles. no""
coursier-cache-extraSbtKeyExtra value to be appended to the sbt cache key. See extraFiles for more details. no""
coursier-cache-extraSbtHashedContentExtra content to take into account in the sbt cache key. Same format as extraHashedContent. no""
coursier-cache-extraMillFilesExtra mill files to take into account in the mill cache key. Same format as extraFiles. no""
coursier-cache-extraMillKeyExtra value to be appended to the mill cache key. See extraFiles for more details. no""
coursier-cache-extraMillHashedContentExtra content to take into account in the mill cache key. Same format as extraHashedContent. no""
coursier-cache-ammoniteScriptsAmmonite scripts to take into account in the Ammonite cache key. Same format as extraFiles. no""
coursier-cache-extraAmmoniteKeyExtra value to be appended to the Ammonite cache key. See extraFiles for more details. no""
coursier-cache-extraAmmoniteHashedContentExtra content to take into account in the Ammonite cache key. Same format as extraHashedContent. no""
coursier-versionCoursier version to installno
firefox-versionThe Firefox version to install and use. Examples: 84.0, 84.0.1, latest-esrnolatest
geckodriver-versionThe Geckodriver version to install and use. Examples: 0.28.0, latest.nolatest
java-versionThe Java version to install. To see available options, run: cs java --availablenoadopt:1.8
jsdom-versionThe jsdom version to install.nolatest
node-architectureTarget architecture for Node to use. Examples: x86, x64. Will use system architecture by default.no
node-cacheUsed to specify a package manager for caching in the default directory. Supported values: npm, yarn, pnpmno
node-cache-dependency-pathUsed to specify the path to a dependency file: package-lock.json, yarn.lock, etc. Supports wildcards or a list of file names for caching multiple dependencies.no
node-check-latestSet this option if you want the action to check for the latest available version that satisfies the version specnofalse
node-mirrorOptional mirror to download binaries from. Artifacts need to match the official Node.jsno
node-mirror-tokenOptional mirror token. The token will be used as a bearer token in the Authorization headerno
node-registry-urlOptional registry to set up for auth. Will set the registry in a project level .npmrc and .yarnrc file, and set up auth to read in from env.NODE_AUTH_TOKENno
node-package-manager-cacheControls automatic caching for npm. By default, caching for npm is enabled if either the devEngines.packageManager field or the top-level packageManager field in package.json specifies npm and no explicit cache input is provided. To disable automatic caching for npm, set package-manager-cache to false.no
node-scopeOptional scope for authenticating against scoped registriesno
node-tokenUsed to pull node distributions from node-versions. Since there's a default, this is typically not supplied by the user.no${{ github.token }}
node-versionVersion Spec of the version to use. Examples: 12.x, 10.15.1, >=10.15.0no16
node-version-fileFile containing the version Spec of the version to use. Examples: package.json, .nvmrc, .node-version, .tool-versions. If node-version and node-version-file are both provided the action will use version from node-version.no
source-map-support-versionThe source-map-support version to install.nolatest

no outputs