/go-artifactory-plugin

Artifactory plugin for GoCD -- Arquivado por Foundation Platform dia 2023-11-28

Primary LanguageJavaApache License 2.0Apache-2.0

Artifactory plugin for ThoughtWorks GoCD

This project is a simplified fork from TusharM version of the plugin, since he doesn't update the his version anymore and it wasn't compatible with GoCD most recent version (>=17.2).

It does not upload Artifacts with build properties as the original plugin did.

Features

  • Uploads artifact(s) to Artifactory (includes verifying checksum against that generated by Artifactory)
  • Uploads build details

The plugin requires these environment variables to be set for the GoCD task

  • ARTIFACTORY_URL
  • ARTIFACTORY_USER
  • ARTIFACTORY_PASSWORD

Installation

Download the [plugin jar](FIX THIS FILE) and copy to the plugins/external directory on the GoCD server and restart it.

Refer to "Installing a plugin" section of Go Documentation for additional details.

Building the .jar

If you want you can build the plugin.jar yourself by using Maven. Just go to the plugin folder and use:

mvn package

The plugin jar will be build at the /target/dist/ folder.

** IMPORTANT ** The plugin MUST BE compiled with the same Java Version that runs the GoCD Server

Plugin logs

The log file (plugin-com.tw.go.plugins.go-artifactory-plugin.log) is created on GoCD agent (e.g. on Linux, inside /var/lib/go-agent).

You can get better log messages by setting plugin log level in Go Agent startup configuration e.g. export GO_AGENT_SYSTEM_PROPERTIES=" -Dplugin.com.tw.go.plugins.go-artifactory-plugin.log.level=DEBUG "

The plugin internally uses Apache HttpClient to talk to Artifactory REST API. If you want to see HTTP messages on the wire, you can enable logging for HttpClient e.g. by setting this in GoCD Agent start up config:

export GO_AGENT_SYSTEM_PROPERTIES=" -Dplugin.com.tw.go.plugins.go-artifactory-plugin.log.level=DEBUG -Dorg.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog 
-Dorg.apache.commons.logging.simplelog.showdatetime=true 
-Dorg.apache.commons.logging.simplelog.log.org.apache.http=DEBUG 
-Dorg.apache.commons.logging.simplelog.log.org.apache.http.wire=ERROR

Screenshots

Global configuration

The Global Configuration that is needed by the plugin

Artifactory task

The plugin as a new Task on the task selection menu

Task level configuration

The Publish to Artifactory configuration task

License

Go Artifactory Plugin is distributed under the terms of Apache Software License v2.0: http://www.apache.org/licenses/LICENSE-2.0.html