Poll AWS S3 bucket and folder for files, and trigger pipeline in GoCD
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Added timestamp to file name as revisions need to be unique Jul 8, 2015
.gitignore Inital commit Jul 6, 2015
.travis.yml Added travis file Jul 7, 2015
LICENSE Initial commit Jul 6, 2015
README.md Updated readme Jul 7, 2015
plugin.xml Inital commit Jul 6, 2015
pom.xml Added test for check-methods, and updated methods Jul 7, 2015

README.md

gocd-s3-poller

Plugin based on JSON API with gocd/sample-plugins/package-material as base.

Maven

  • Build: mvn clean package
  • Run tests: mvn verify

Setup

Build it, and copy target/go-plugins-dist/gocd-s3-poller.jar to plugins dir as described in Go.cd docs.

Configure the plugin in Admin/Package repository, choose s3-poller and enter a bucket name. Remember, you need the AWS credentials available in a way AWS SDK can read them.

Configure it as a Package material in the pipeline, by entering a path the plugin should poll. The folder must exist and there must be at least one file in that folder.

The poller will trigger the pipeline when a file is added to the given bucket and folder. It only triggers on files, not folders.

Todo

  • To get latest revision it cycles all files to get the one with the latest modified date. Problematic for buckets with many files.
  • Implement pagination support in listObjects, by checking isTruncated().