zuul-jobs/roles/upload-artifactory
Albin Vass 664b016fa5 Add upload-artifactory role
Adds a role to let users define a manifest of artifacts located
in zuul-output/artifacts that should be uploaded to pre defined
artifactory instances.

Change-Id: I00dc0302e85ce59b3808f6e62e2bcdadf2e41fde
2020-05-12 20:02:12 +02:00
..
defaults Add upload-artifactory role 2020-05-12 20:02:12 +02:00
tasks Add upload-artifactory role 2020-05-12 20:02:12 +02:00
README.rst Add upload-artifactory role 2020-05-12 20:02:12 +02:00

Upload artifacts specified from the executor to artifactory.

Note

This role uses the src function of the uri module introduced in Ansible 2.7 therefore any ansible version lower than that is not supported.

Role Variables

Complex argument that contains the information about credentials, fqdn and name. This argument is expected to come from a secret.

User for authenticating.

Password for authenticating. Has a lower precedense than api_key.

API key for authenticating. Has a higher precedense than password.

Fully qualified domain name to the instance.

Variable that contains a manifest of the artifacts that should be uploaded to a specific instance of artifactory. This is expected to be set during the build as a cached fact.

artifacts:
  - name: tarball
    src: artifact.tar.gz
    dest: /destination/to/put/artifact/artifact.tar.gz
    instance: artifact-server1
    headers:
      Content-Type: application/gzip

The attributes available on an artifact are the following.

Name of the artifact. This will be displayed in the build page.

Path relative to {{ zuul.executor.work_root }}/artifacts/.

Destination where the artifact should be put in.

Artifactory instance to place the artiface in, this is to choose which entry in upload_artifactory_instances to upload the artifact to.

Any headers that should be passed to ansibles uri module when uploading.

Any metadata that should be returned to Zuul together with the artifact link.