external-artifacts/README.adoc

1.9 KiB

<html lang="en"> <head> </head>

External Artifacts

This Pipeline Shared Library performs an override of the built-in archive and archiveArtifacts steps to provide external artifact storage.

Configuring

The main entrypoint for this library is to load it as a Global Pipeline Library:

Configuring the Pipeline Library

Environment Variables

The following environment variables should be set in JENKINS_HOME/configure:

  • AZURE_STORAGE_ACCOUNT

  • AZURE_CONTAINER_NAME

Configuring Environent Variables

Credentials

A "Secret Text" credential should be defined with the ID azure-access-key, and contain an Azure Storage Account "Access Key."

Configuring Credentials

Notes for the future

Artifact Pointer

It might make sense to implement an artifact pointer (via a plugin extending this extension point) which avoids the need for an HTTP redirect.

An artifact pointer could be described as a JSON file, e.g.:

timestamps.txt.jartptr
{
    "fingerprint" : "<md5sum of original file>",
    "uri" : "https://some/external/uri",
    "name" : "timestamps.txt",
    "attributes" : {
        "bytes" : 309,
        "ctime" : "2018-01-04 17:00:00Z"
    }
}

Jenkins could then identify this file as such, and link a timestamps.txt in the web UI directly to the uri attribute defined in the .jartptr manifest.

</html>