Class S3ArtifactStoreStorer

  • All Implemented Interfaces:
    ArtifactStoreStorer

    public class S3ArtifactStoreStorer
    extends java.lang.Object
    implements ArtifactStoreStorer
    S3ArtifactStoreStorer will store artifacts in a s3 compatible service

    Note: It is very important that the S3 bucket has object lock on it to prevent multiple writes {@see https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-overview.html}

    • Constructor Summary

      Constructors 
      Constructor Description
      S3ArtifactStoreStorer​(software.amazon.awssdk.services.s3.S3Client s3Client, java.lang.String bucket, ArtifactStoreURIBuilder uriBuilder, java.lang.String applicationsRegex)  
    • Constructor Detail

      • S3ArtifactStoreStorer

        public S3ArtifactStoreStorer​(software.amazon.awssdk.services.s3.S3Client s3Client,
                                     java.lang.String bucket,
                                     ArtifactStoreURIBuilder uriBuilder,
                                     java.lang.String applicationsRegex)
    • Method Detail

      • store

        public Artifact store​(Artifact artifact)
        Will store the artifact using the s3Client in some bucket

        This method also persists "permissions" by storing the execution id that made the original store call. In the event a service wants to retrieve said artifact, they will also need to provide the proper execution id

        Specified by:
        store in interface ArtifactStoreStorer