This is a git plugin (based on Jgit) which contain a Resource model and worflow steps
For authentication, it can be used a private key or a password. If the private key is not defined, then the password will be used.
http[s]://username@host.xz[:port]/path/to/repo.git/
when you use password authentication)Run the following command to built the jar file:
./gradlew clean build
Copy the git-plugin-x.y.x.jar
file to the $RDECK_BASE/libext/
directory inside your Rundeck installation.
This is a resource model plugin that uses Git to store resources model file.
You need to set up the following options to use the plugin:
Base Directory: Directory for checkout
Git URL: Checkout URL. See git-clone specifically the GIT URLS section. Some examples:
ssh://[user@]host.xz[:port]/path/to/repo.git/
git://host.xz[:port]/path/to/repo.git/
http[s]://host.xz[:port]/path/to/repo.git/
ftp[s]://host.xz[:port]/path/to/repo.git/
rsync://host.xz/path/to/repo.git/
Branch: Checkout branch
Resource model File: Resource model file inside the github repo. This is the file that will be added to Rundeck resource model.
File Format: File format of the resource model, it could be xml, yaml, json
Writable: Allow to write the remote file
yes
, require remote host SSH key is defined in the ~/.ssh/known_hosts
file, otherwise do not verify.Edit node from GUI
(it is not editable)This plugin can clone/pull, add, commit, and push a git repository via 4 WorkflowSteps. All these steps have some generic configuration:
project.plugin.WorkflowStep.git-clone-step.gitUseProjectBasedSubdirectory
is set to true in the project configuration, this will be relative to a project-based subdirectory.ssh://[user@]host.xz[:port]/path/to/repo.git/
git://host.xz[:port]/path/to/repo.git/
http[s]://host.xz[:port]/path/to/repo.git/
ftp[s]://host.xz[:port]/path/to/repo.git/
rsync://host.xz/path/to/repo.git/
yes
, require remote host SSH key is defined in the ~/.ssh/known_hosts
file, otherwise do not verify.This plugin can clone a git repo into a rundeck server folder.
For some use cases, it might be necessary to only allow checking out repositories in directories relative to the Rundeck home directory. Allow users to checkout in any location on disk might be a security issue.
The setting project.plugin.WorkflowStep.git-clone-step.gitUseProjectBasedSubdirectory
(per project) or framework.plugin.WorkflowStep.git-clone-step.gitUseProjectBasedSubdirectory
(Rundeck-wide)
can be set to true
to enforce this (default is false
). All values of Base Directory
will be relative to a project-based subdirectory of the Rundeck home directory (e.g. /var/lib/rundeck/A_Project
).
You need to set up following additional options to use the plugin:
This plugin pushes a git repo from a prior created repo folder.
For some use cases, it might be necessary to only allow pushing repositories in directories relative to the Rundeck home directory.
The setting project.plugin.WorkflowStep.git-push-step.gitUseProjectBasedSubdirectory
(per project) or framework.plugin.WorkflowStep.git-push-step.gitUseProjectBasedSubdirectory
(Rundeck-wide)
can be set to true
to enforce this (default is false
). All values of Base Directory
will be relative to a project-based subdirectory of the Rundeck home directory (e.g. /var/lib/rundeck/A_Project
).
See above, nothing unique with this WorkflowStep.
This plugin adds any new content from the repo for the next commit with an optional filter ability.
For some use cases, it might be necessary to only allow adding to repositories in directories relative to the Rundeck home directory.
The setting project.plugin.WorkflowStep.git-add-step.gitUseProjectBasedSubdirectory
(per project) or framework.plugin.WorkflowStep.git-add-step.gitUseProjectBasedSubdirectory
(Rundeck-wide)
can be set to true
to enforce this (default is false
). All values of Base Directory
will be relative to a project-based subdirectory of the Rundeck home directory (e.g. /var/lib/rundeck/A_Project
).
You need to set up following additional options to use the plugin:
This plugin commits to a git repo from a prior created repo folder.
For some use cases, it might be necessary to only allow committing to repositories in directories relative to the Rundeck home directory.
The setting project.plugin.WorkflowStep.git-commit-step.gitUseProjectBasedSubdirectory
(per project) or framework.plugin.WorkflowStep.git-commit-step.gitUseProjectBasedSubdirectory
(Rundeck-wide)
can be set to true
to enforce this (default is false
). All values of Base Directory
will be relative to a project-based subdirectory of the Rundeck home directory (e.g. /var/lib/rundeck/A_Project
).
You need to set up following additional options to use the plugin:
Rundeck Commit
False
. If you need to be more specific, please use GIT / Add
workflow step.False
.