PushDashboards
Commit and push your saved dashboards to a Git repository.
type: "io.kestra.plugin.git.PushDashboards"
Examples
Manually push a single dashboard to Git if the input push is set to true.
id: push_dashboards
namespace: prod
inputs:
- id: push
type: BOOLEAN
defaults: false
tasks:
- id: if
type: io.kestra.plugin.core.flow.If
condition: "{{ inputs.push == true}}"
then:
- id: commit_and_push
type: io.kestra.plugin.git.PushDashboards
dashboards: mydashboard # if you prefer templating, you can use "{{ flow.id }}"
url: https://github.com/kestra-io/scripts
username: git_username
password: "{{ secret('GITHUB_ACCESS_TOKEN') }}"
branch: main
commitMessage: "add mydashboard from {{ flow.namespace ~ '.' ~ flow.id }}"
Properties
branch string
main
The branch to which dashboards should be committed and pushed
cloneSubmodules booleanstring
Whether to clone submodules
commitMessage string
Add dashboards from flow: {{ flow.id }}
Git commit message
dashboards stringarray
**
List of glob patterns or a single one that declares which dashboards should be included in the Git commit
delete booleanstring
true
Whether to delete flows/files from Git that are no longer present in Kestra
If true
(default), files present in Git but not in Kestra will be deleted from the Git repository.
dryRun booleanstring
false
If true
, the task will only output modifications without pushing any file to Git yet. If false
(default), all listed files will be pushed to Git immediately.
gitConfig object
Git configuration to apply to the repository
Map of Git config keys and values, applied after clone few examples: - 'core.fileMode': false -> ignore file permission changes - 'core.autocrlf': false -> prevent line ending conversion
gitDirectory string
_dashboards
Directory to which dashboards should be pushed
passphrase string
The passphrase for the privateKey
password string
The password or Personal Access Token (PAT) -- when you authenticate the task with a PAT, any flows or files pushed to Git from Kestra will be pushed from the user associated with that PAT. This way, you don't need to configure the commit author (the authorName
and authorEmail
properties).
privateKey string
PEM-format private key content that is paired with a public key registered on Git
To generate an ECDSA PEM format key from OpenSSH, use the following command: ssh-keygen -t ecdsa -b 256 -m PEM
. You can then set this property with your private key content and put your public key on Git.
trustedCaPemPath string
Optional path to a PEM-encoded CA certificate to trust (in addition to the JVM default truststore)
Equivalent to git config http.sslCAInfo <path>
. Use this for self-signed/internal CAs.
url string
The URI to clone from
username string
The username or organization