Skip to content

leopardslab/dunner-gocd-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dunner-gocd-plugin

Build Status

A GoCD task plugin for Dunner.

Installation

This plugin can be installed using the GoCD standard plugin installation instructions.

Download the latest jar file of this plugin from Github Releases and copy it to the external plugins directory(<go_server>/plugins/external) of Go-Server. Restart your server to see the plugin added to GoCD. Refer Plugin Usage page.

Task Configuration

  • Select task type as Dunner Task when creating a new task in a build job.

    New Dunner Task

  • Specify the image to be used, commands, mount directories, environment variable values in configuration.

    Configure Dunner Task

  • Enter each command, mount directory and env variable in a new line. By default project root directory will be mounted to container. If any additional mount directories are required, specify them in Mounts section. Example:

    Edit Dunner Task

Each value should be specified as per dunner usage.

You can also specify the environment variables in GoCD job tab, it will be passed to dunner tasks.

  • Save task.

  • To be able to download dunner task file from pipeline configuration, add gocd_dunner directory as artifact and add gocd_dunner/.dunner.yaml to custom tab. This gives you direct link to download dunner task file for reference or to run task manually without GoServer.

    Artifact Custom Tab

Support

  • Go.cd: 17.3.0+ Note: This is only tested regularly against 17.3.0 and latest. This could potentially work with older versions, but not tested.
  • Agent Requirements: Install Docker and Dunner.

Build plugin from source

Requirements: Java, Gradle

  • Clone this repository and run the below commands on command-line:
$ gradle clean install
$ gradle build

This will generate the plugin jar file named dunner-gocd-plugin-<version>.jar in the <clone_repo_dir>/build/libs/ directory.