Skip to content

Instantly share code, notes, and snippets.

@foo4u
Last active September 26, 2022 14:34
Show Gist options
  • Save foo4u/3935d6d9b41fe92b19077515c7a035e5 to your computer and use it in GitHub Desktop.
Save foo4u/3935d6d9b41fe92b19077515c7a035e5 to your computer and use it in GitHub Desktop.

Checkout

Checkout a Git repository at a particular version

Inputs

Input Description Required Default Value
submodules Whether to checkout submodules: true to checkout submodules or recursive to recursively checkout submodules.

When the ssh-key input is not provided, SSH URLs beginning with git@github.com: are converted to HTTPS.
no false
set‑safe‑directory Add repository path as safe.directory for Git global config by running git config --global --add safe.directory <path> no true
path Relative path under $GITHUB_WORKSPACE to place the repository no
clean Whether to execute git clean -ffdx && git reset --hard HEAD before fetching no true
ref The branch, tag or SHA to checkout. When checking out the repository that triggered a workflow, this defaults to the reference or SHA for that event. Otherwise, uses the default branch.
no
fetch‑depth Number of commits to fetch. 0 indicates all history for all branches and tags. no 1
ssh‑strict Whether to perform strict host key checking. When true, adds the options StrictHostKeyChecking=yes and CheckHostIP=no to the SSH command line. Use the input ssh-known-hosts to configure additional hosts.
no true
token Personal access token (PAT) used to fetch the repository. The PAT is configured with the local git config, which enables your scripts to run authenticated git commands. The post-job step removes the PAT.

We recommend using a service account with the least permissions necessary. Also when generating a new PAT, select the least scopes necessary.

Learn more about creating and using encrypted secrets
no ${{ github.token }}
ssh‑known‑hosts Known hosts in addition to the user and global host key database. The public SSH keys for a host may be obtained using the utility ssh-keyscan. For example, ssh-keyscan github.com. The public key for github.com is always implicitly added.
no
persist‑credentials Whether to configure the token or SSH key with the local git config no true
lfs Whether to download Git-LFS files no false
ssh‑key SSH key used to fetch the repository. The SSH key is configured with the local git config, which enables your scripts to run authenticated git commands. The post-job step removes the SSH key.

We recommend using a service account with the least permissions necessary.

Learn more about creating and using encrypted secrets
no
repository Repository name with owner. For example, actions/checkout no ${{ github.repository }}

Outputs

No outputs.

Setup Java JDK

Set up a specific version of the Java JDK and add the command-line tools to the PATH

Inputs

Input Description Required Default Value
architecture The architecture of the package no x64
gpg‑private‑key GPG private key to import. Default is empty string. no
cache Name of the build platform to cache dependencies. It can be "maven", "gradle" or "sbt". no
job‑status Workaround to pass job status to post job step. This variable is not intended for manual setting no ${{ job.status }}
jdkFile Path to where the compressed JDK is located no
server‑username Environment variable name for the username for authentication to the Apache Maven repository. Default is $GITHUB_ACTOR no GITHUB_ACTOR
distribution Java distribution. See the list of supported distributions in README file yes
server‑id ID of the distributionManagement repository in the pom.xml file. Default is github no github
overwrite‑settings Overwrite the settings.xml file if it exists. Default is "true". no true
java‑package The package type (jdk, jre, jdk+fx, jre+fx) no jdk
check‑latest Set this option if you want the action to check for the latest available version that satisfies the version spec no false
settings‑path Path to where the settings.xml file will be written. Default is ~/.m2. no
java‑version The Java version to set up. Takes a whole or semver Java version. See examples of supported syntax in README file yes
server‑password Environment variable name for password or token for authentication to the Apache Maven repository. Default is $GITHUB_TOKEN no GITHUB_TOKEN
gpg‑passphrase Environment variable name for the GPG private key passphrase. Default is $GPG_PASSPHRASE. no
token Used to pull java versions from setup-java. Since there is a default value, token is typically not supplied by the user. no ${{ github.token }}

Outputs

Output Description
cache-hit A boolean value to indicate an exact match was found for the primary key
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment