
This change simplifies the path creation logic to avoid processing user defined variables such as job name and pipeline name, which might cause the log url to exceed the database storage presently fixed at 255 char. Add warning in the job's header when the url is over 255 characters, explaining that Zuul won't report the job properly in its database; but the job can still run. Change-Id: I34fb5662a2f958c55f60458ce107bad2a73b9c96
68 lines
2.1 KiB
ReStructuredText
68 lines
2.1 KiB
ReStructuredText
Upload logs to S3
|
|
|
|
Before using this role, create at least one bucket and set up
|
|
appropriate access controls or lifecycle events. This role will not
|
|
automatically create buckets.
|
|
|
|
This role requires the ``boto3`` Python package to be
|
|
installed in the Ansible environment on the Zuul executor.
|
|
|
|
**Role Variables**
|
|
|
|
.. zuul:rolevar:: zuul_site_upload_logs
|
|
:default: true
|
|
|
|
Controls when logs are uploaded. true, the default, means always
|
|
upload logs. false means never upload logs. 'failure' means to only
|
|
upload logs when the job has failed.
|
|
|
|
.. note:: Intended to be set by admins via site-variables.
|
|
|
|
.. zuul:rolevar:: zuul_log_partition
|
|
:default: false
|
|
|
|
If set to true, then the first component of the log path will be
|
|
removed from the object name and added to the bucket name, so that
|
|
logs for different changes are distributed across a large number of
|
|
buckets.
|
|
|
|
.. zuul:rolevar:: zuul_log_bucket
|
|
|
|
This role *will not* create buckets which do not already exist. If
|
|
partitioning is not enabled, this is the name of the bucket which
|
|
will be used. If partitioning is enabled, then this will be used
|
|
as the prefix for the bucket name which will be separated from the
|
|
partition name by an underscore. For example, "logs_42" would be
|
|
the bucket name for partition 42.
|
|
|
|
Note that you will want to set this to a value that uniquely
|
|
identifies your Zuul installation.
|
|
|
|
.. zuul:rolevar:: zuul_log_bucket_public
|
|
:default: true
|
|
|
|
Set to false to make logs private.
|
|
|
|
.. zuul:rolevar:: zuul_log_path
|
|
:default: Generated by the role `set-zuul-log-path-fact`
|
|
|
|
Prepend this path to the object names when uploading.
|
|
|
|
.. zuul:rolevar:: zuul_log_create_indexes
|
|
:default: true
|
|
|
|
Whether to create `index.html` files with directory indexes.
|
|
|
|
.. zuul:rolevar:: zuul_log_aws_access_key
|
|
|
|
AWS access key to use.
|
|
|
|
.. zuul:rolevar:: zuul_log_aws_secret_key
|
|
|
|
AWS secret key for the AWS access key.
|
|
|
|
.. zuul:rolevar:: upload_logs_s3_endpoint
|
|
|
|
The endpoint to use when uploading logs to an s3 compatible service.
|
|
By default this will be automatically constructed by boto but should be set when working with non-aws hosted s3 service.
|