This plugin provides the AWS SDK for Java as a library to be used by other plugins. It follows the same versioning as the AWS SDK itself.
Commonly used modules have their own plugins, less used modules are in the aws-java-sdk
plugin.
This plugins contains multiple modules.
These have been grouped together as aws-java-sdk-core
needs some classes in the same classpath and the structured classloaders in Jenkins don't permit having them in different plugins.
- aws-java-sdk-core
- aws-java-sdk-kms
- aws-java-sdk-s3
- aws-java-sdk-sts
- jmespath-java
Contains an individual AWS Java SDK module with the same name.
Contains all AWS Java SDK modules not already provided through a separate plugin. It depends on all other aws-java-sdk plugins and is very heavyweight.
If you need to use an API that is not yet published as its own plugin, feel free to submit a pull request to create a plugin for it. This will avoid pulling the all-in-one aws-java-sdk
plugin.
- Create a new directory
aws-java-sdk-<name>
. The name should be identical to the aws sdk module. - Create
pom.xml
. ** Depend oncom.amazonaws:aws-java-sdk-<name>
. Exclude all transitive dependencies. ** Transitive dependencies should be replaced by their equivalent plugin dependency. Most APIs only depend onaws-java-sdk-core
andjmespath-java
(calledaws-java-sdk-jmespath
in this project for clarity in the Jenkins ecosystem). - Create
src/main/resource/index.jelly
. Look at existing modules and adapt it. - Add the module to the root
pom.xml
. - Add the plugin dependency to
aws-java-sdk
and exclude the module from transitive dependencies.