Gitlab
Gitlab scm
On this page
Description
The Gitlab scm plugin is used to manage git repositories hosted on Gitlab, depending on the stage, it can be used for different purposes
source: Retrieve data from a git repository, such as a file content condition: Ensure data exist on a git repository, such as a file content target: Ensure data is up to date on a git repository
Parameters
Name | Type | Description | Required |
---|---|---|---|
branch | string | Branch specifies which Gitlab repository branch to work on | |
commitmessage | object | CommitMessage represents conventional commit metadata as type or scope, used to generate the final commit message. | |
body | string | Define commit body | |
footers | string | Define commit footer | |
hidecredit | boolean | Display updatecli credits inside commit message body | |
scope | string | Define commit type scope | |
title | string | Define commit title | |
type | string | Define commit type, like chore, fix, etc | |
directory | string | Directory specifies where the github repository is cloned on the local disk | |
string | Email specifies which emails to use when creating commits | ||
force | boolean | Force is used during the git push phase to run `git push --force`. | |
gpg | object | GPG key and passphrased used for commit signing | |
passphrase | string | Define the gpg passphrase | |
signingkey | string | Defines the gpg key | |
owner | string | Owner specifies repository owner | |
repository | string | Repository specifies the name of a repository for a specific owner | |
token | string | [S][C][T] Token specifies the credential used to authenticate with | |
url | string | [S][C][T] URL specifies the default github url in case of Gitlab enterprise | |
user | string | User specifies the user of the git commit messages | |
username | string | [S][C][T] Username specifies the username used to authenticate with Gitlab API |
CommitMessage
Updatecli uses conventional commits as describe on www.conventionnalcommits.org.
The goal is to add human and machine readable meaning to commit messages
By default, Updatecli generates a commit message using the default type "chore" and split long title message into the body like:
Author: olblak <updatecli@updatecli.io>
Date: Tue May 4 15:41:44 2021 +0200
chore: Update key "dependencies[0].version" from file "charts/jenkins/r...
... equirements.yaml"
Made with ❤️️ by updatecli
Name | Required | Default | Description |
---|---|---|---|
type | chore | Specify commit type | |
scope | Specify commit scope | ||
footer | Specify commit footer message | ||
title | Override default body message | ||
hideCredit | Remove "Made with ❤️️ by updatecli" from commit message | ||
body | Override default body message |
GPG
Updatecli can sign commits using a private GPG key if configured accordingly.
Name | Required | Default | Description |
---|---|---|---|
signingkey | Defines the armored private gpg key | ||
password | Defines the gpg key password |
Example
# updatecli.yaml
---
name: Show Gitlab scm
scms:
gitlab:
kind: gitlab
spec:
# By default url is set to gitlab.com
# url: gitlab.com
owner: "olblak"
repository: "updatecli"
branch: main
sources:
license:
name: Retrieve license file content
kind: file
scmid: gitlab
spec:
file: LICENSE