Git-related Modules
Module git-auth
The module provides the basics for working with a git repository.
Example import:
hci-effects.modularEffect {
imports = [
hci-effects.modules.git-auth
];
}
git.checkout.forgeType
The forge type according to Hercules CI.
Valid values include "github"
and "gitlab"
, or you could forward this from herculesCI.repo.forgeType
(flake-parts) or the metadata passed to the herculesCI
function: primaryRepo.forgeType
.
Type: string
Example: primaryRepo.forgeType
Declared by:
git.checkout.remote.url
The git remote URL. Currently only http/https URLs are supported.
The current repo URL is available in herculesCI.repo.remoteHttpUrl
or the metadata passed to the herculesCI
function: primaryRepo.remoteHttpUrl
.
Type: string
Example: primaryRepo.remoteHttpUrl
Declared by:
git.checkout.tokenSecret
Name of the secret that contains the git token.
Type: string
Default: "token"
Declared by:
git.checkout.user
User name for authentication with the git remote.
Type: string
Default: "git"
Declared by:
Module git-update
A module that facilitates the updating of a git repository.
Example import:
hci-effects.modularEffect {
imports = [
hci-effects.modules.git-update
];
}
git.update.baseBranch
Branch name on the remote that the update branch will be
-
based on (via
git.update.baseMerge.branch
), and -
merged back into (via
git.update.pullRequest.base
) if enabled.
"HEAD"
refers to the default branch, which is often main
or master
.
Type: string
Default: "HEAD"
Declared by:
git.update.baseMerge.enable
Whether to merge the base branch into the update branch before running git.update.script
.
This is useful to ensure that the update branch is up to date with the base branch.
If this option is false
, you may have to merge or rebase the update branch manually sometimes.
Type: boolean
Default: false
Declared by:
git.update.baseMerge.branch
Branch name on the remote to merge into the update branch before running git.update.script
.
Used when git.update.baseMerge.enable
is true.
Type: string
Default:
git.update.baseBranch
Declared by:
git.update.baseMerge.method
How to merge the base branch into the update branch before running git.update.script
.
Used when git.update.baseMerge.enable
is true.
Type: one of “merge”, “rebase”
Default: "merge"
Declared by:
git.update.branch
Branch name to push to.
If you use pull requests, this should be a “feature” branch.
Type: string
Declared by:
git.update.pullRequest.enable
Whether to create a pull request to merge the updated branch into the default branch.
Type: boolean
Default: true
Declared by:
git.update.pullRequest.autoMergeMethod
Whether to enable auto-merge on new pull requests, and how to merge it.
This requires GitHub branch protection to be configured for the repository.
Type: one of <null>, “merge”, “rebase”, “squash”
Default: null
Declared by:
git.update.pullRequest.base
Branch name on the remote to merge the update branch into.
Used when git.update.pullRequest.enable
is true.
Type: string
Default:
git.update.baseBranch
Example: "develop"
Declared by:
git.update.pullRequest.body
The body, or description, of the pull request.
A more detailed body can be achieved by making git.update.script
set the body contents in the HCI_GIT_UPDATE_PR_BODY
environment variable.
If null
, the body will be empty or automatic based on the commit message.
Type: null or string
Declared by:
git.update.pullRequest.title
The title to use for the pull request.
A more detailed title can be achieved by making git.update.script
set the title in the HCI_GIT_UPDATE_PR_TITLE
environment variable.
Type: string
Declared by:
git.update.script
Bash statements that create zero or more commits. All changes must be explicitly committed by the script.
The working directory is the root of the checkout.
Type: strings concatenated with “\n”
Declared by:
See also
-
gitWriteBranch
to replace branch contents. -
flakeUpdate
to update flake input revisions.