My subjective list of the most useful Gradle plugins for DevOps.
The work is in progress.
Feel free to send your comments and proposals to paul
at linchpiner
dot com
.
1. Gradle SSH Plugin
Gradle SSH Plugin is the perfect tool for general purpose operations on remote servers. It support parallel operations, local and remote port forwarding, and ssh gateways to connect to a remote server through one or more gateway servers.
2. Gradle VFS Plugin
Groovy VFS adds a nice DSL for operations with local and remote files and directories. For example, you can download a remote file from one server using HTTP and upload the file to another server using SFTP. Another useful example, is extracting a single file from a remote archive. Various sources and destinations are supported: the plugin uses Apache Commons VFS libraries.
3. Gradle Vagrant Plugin
Gradle plugin for managing Vagrant boxes. Uses locally installed Vagrant. By default the plugin validates the installation of the Vagrant runtime and the selected provider.
4. Gradle Packer Plugin
Gradle plugin for running Packer builds. Requires locally installed Packer. For AWS builders, it also requires locally installed AWS CLI.
5. Gradle AWS Plugin
Gradle AWS plugin provides useful tasks to manage AWS resources for various services, such as S3, EC2, RDS, Lambda, and others.
6. Gradle Docker Plugins
Three Gradle plugins for working with Docker containers, which provide basic tasks for building and pushing docker images, task for populating placeholders in a docker-compose template file with image versions resolved from dependencies, tasks for starting, stopping, statusing and cleaning up a named container based on a specified image. Plugins require locally installed Docker CLI.
7. Gradle Jenkins Plugin
Gradle plugin that provides some support tasks for maintaining a Jenkins Job DSL Script repository. Allows local testing of DSL scripts, local generation of Jenkins config XML files.
8. Gradle Cloud Deployer
Gradle plugin to deploy applications to Kubernetes and Marathon. Apps and Groups are supported for Marathon. Deployments, Services, Replication Controllers, Pods are supported for Kubernetes.
9. Heroku Gradle Plugin
A Gradle plugin for deploying JAR and WAR files to Heroku.