ed89a29035 | ||
---|---|---|
example | ||
resources/io/codevalet/externalartifacts | ||
src | ||
t/base | ||
vars | ||
.gitignore | ||
LICENSE | ||
Makefile | ||
README.adoc | ||
credentials.png | ||
environment-variables.png | ||
global-pipeline-libraries.png |
README.adoc
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:
Environment Variables
The following environment variables should be set in JENKINS_HOME/configure:
-
AZURE_STORAGE_ACCOUNT
-
AZURE_CONTAINER_NAME
Credentials
A "Secret Text" credential should be defined with the ID azure-access-key
,
and contain an Azure Storage Account "Access Key."
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.:
{
"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.