Artifacts Buildkite Plugin Build status

A Buildkite plugin for uploading and downloading artifacts.

Uploading artifacts

This functionality duplicates the artifact_paths property in the pipeline yaml files; with the difference that it also allows downloading artifacts and that this plugin is executed before any command hook, so you can create dependencies on artifacts in your steps that are resolved before the actual step is executed. This is ideal for producing an artifact in one job and then downloading it in a different job before execution.

steps:
  - command: ...
    plugins:
    - artifacts#v1.3.0:
        upload: "log/**/*.log"

or

steps:
  - command: ...
    plugins:
    - artifacts#v1.3.0:
        upload: [ "log/**/*.log", "debug/*.error" ]

or

steps:
  - command: ...
    plugins:
    - artifacts#v1.3.0:
        upload: 
          from: log1.log
          to: log2.log

or

steps:
  - command: ...
    plugins:
    - artifacts#v1.3.0:
        upload: 
        - from: log1.log
          to: log2.log

Downloading artifacts

This downloads artifacts matching globs to the local filesystem. See downloading artifacts for more details.

steps:
  - command: ...
    plugins:
      - artifacts#v1.3.0:
          download: "log/**/*.log"

or

steps:
  - command: ...
    plugins:
      - artifacts#v1.3.0:
          download: [ "log/**/*.log", "debug/*.error" ]

or

steps:
  - command: ...
    plugins:
      - artifacts#v1.3.0:
          download: 
            from: log1.log
            to: log2.log

or

steps:
  - command: ...
    plugins:
      - artifacts#v1.3.0:
          download: 
          - from: log1.log
            to: log2.log

Configuration

upload (string, array of strings, {from,to}, array of {from,to})

A glob pattern, or array of glob patterns, for files to upload.

download (string, array of strings, {from,to}, array of {from,to})

A glob pattern, or array of glob patterns, for files to download.

step (optional, string)

The job UUID or name to download the artifact from.

build (optional, string)

The build UUID to download the artifact from.

Relocation

If a file needs to be renamed or moved before upload or after download, a nested object is used with to and from keys. At this time, this can only be used with single files and does not support glob patterns.

Developing

To run testing, shellchecks and plugin linting use use bk run with the Buildkite CLI.

bk run

Or if you want to run just the tests, you can use the Docker Compose CLI:

docker-compose run --rm tests

License

MIT (see LICENSE)

Artifacts Buildkite Plugin

🆙 Automatically upload and download artifacts

Artifacts Buildkite Plugin Info

⭐ Stars 18
🔗 Source Code github.com
🕒 Last Update 8 months ago
🕒 Created 3 years ago
🐞 Open Issues 6
➗ Star-Issue Ratio 3
😎 Author buildkite-plugins