| workspace | The location of currently checked out source repository. | yes | ${{ github.workspace }} |
| repository | The currently checked out source repository name. Repository names should follow the standard Github `name:owner/name/subdir@ref` format. `@ref`, name (in case there are multiple packages in the repository) and subdir are optional, `@ref` takes precedence over `sha` input. | yes | ${{ github.repository }} |
| sha | The currently checked out source repository commit SHA. | yes | ${{ github.sha }} |
| cmake | Whether to use CMake for build configuration, instead of ecbuild. | yes | false |
| ecbundle | Whether to use ecbundle for building bundles. | yes | false |
| cmake_options | The list of ecbuild/CMake options to be passed during the current repository build configuration phase. Use the form of `-DCMAKE_VAR=1 -DCMAKE_ANOTHER_VAR=0` to define multiple options. If left empty, the repository will be configured with default options only. | no | — |
| ctest_options | The list of ctest options to be passed to the test command for the current repository. Use the form of `-R <include-regex> -E <exclude-regex>` to define multiple options. If left empty, the repository will be tested with default options only. | no | — |
| self_build | Whether to build from currently checked out repository or not. | yes | true |
| self_test | Whether to run tests from currently checked out repository or not. | yes | true |
| self_coverage | Whether to collect code coverage from currently checked out repository or not. Note that `test` input must be set to true for this to work. Currently supported only on Ubuntu 20.04 platform and for GNU 10 compiler. | yes | false |
| dependencies | The list of dependency repositories to build from, in correct order. Repository names should follow the standard Github `owner/name` format. To specify different branch name per repository, use `owner/name@branch_name` format. To specify specific tag name per repository, use `owner/name@refs/tags/tag_name` format. To specify a commit hash per repository, use `owner/name@hash`. Optionally, you can specify a package name (in case of monorepos) and subdirectory to build from, in the form of `name:owner/repo/subdir@ref`. | no | — |
| dependency_branch | The default branch (or tag) name for dependency repositories. Will be ignored if the branch (or tag) name is specified per repository, see `dependencies` input. To specify specific tag name, use `refs/tags/tag_name` format. | yes | ${{ github.ref }} |
| dependency_cmake_options | The list of ecbuild/CMake options to be passed during the dependency build configuration phase. Use the form of `owner/name: "-DCMAKE_VAR=1"` to define options for the package or its dependencies. If the package is not listed, it will be configured with default options only. | no | — |
| force_build | Whether to always build dependencies from latest repository states or not. Otherwise, the action will first try to download a build artifact if it exists. | yes | false |
| cache_suffix | A string which will be appended to the cache key. To invalidate the build cache, simply change its value. | no | — |
| recreate_cache | Whether to skip restoring builds from cache and recreate them instead. | yes | false |
| save_cache | Whether to save builds to cache and upload build artifacts. | yes | true |
| os | Current OS platform. | yes | ${{ matrix.os }} |
| compiler | Current compiler family. | no | ${{ matrix.compiler }} |
| compiler_cc | Current C compiler alias. | no | ${{ matrix.compiler_cc }} |
| compiler_cxx | Current C++ compiler alias. | no | ${{ matrix.compiler_cxx }} |
| compiler_fc | Current Fortran compiler alias. | no | ${{ matrix.compiler_fc }} |
| toolchain_file | Path to toolchan file. | no | ${{ matrix.toolchain_file }} |
| github_token | Github access token, with `repo` and `actions:read` scopes. | yes | ${{ github.token }} |
| install_dir | Directory where the dependencies and current package will be installed. Each dependency will be installed in its own subdirectory. | yes | ${{ runner.temp }}/install |
| download_dir | Directory where the dependency repositories and artifacts will be downloaded. | yes | ${{ runner.temp }}/download |
| parallelism_factor | Number of threads build job will utilise on the runner. | no | 2 |
| cpack_generator | Select which package type to create, options: `deb, rpm`. If selected, the currently checked out repository will be packaged.
| no | — |
| cpack_options | List of options for cpack, use the same form as for `cmake_options`. | no | — |