f472ed9591
Change-Id: If8d7986b0658df8cf548fb23bed1497ebf878fab
74 lines
2.4 KiB
ReStructuredText
74 lines
2.4 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_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_path_shard_build
|
|
:default: false
|
|
|
|
This var is consumed by set-zuul-log-path-fact which
|
|
upload-logs-s3 calls into. If you set this you will get log paths
|
|
prefixed with the first three characters of the build uuid. This
|
|
will improve log file sharding.
|
|
|
|
More details can be found at
|
|
:zuul:rolevar:`set-zuul-log-path-fact.zuul_log_path_shard_build`.
|
|
|
|
.. 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.
|