feat: add upload-logs-fork role

This changes the role vars to be defaults to hopefully fix the internal
tenant logs issue.

Change-Id: I1eb4b24b567297b1a15aa3d3850cf298042fccfe
diff --git a/roles/upload-logs-fork/README.rst b/roles/upload-logs-fork/README.rst
new file mode 100644
index 0000000..26c4689
--- /dev/null
+++ b/roles/upload-logs-fork/README.rst
@@ -0,0 +1,65 @@
+Upload logs to a static webserver
+
+This uploads logs to a static server using SSH.  The server must have
+been previously added to the inventory; this can be done with the
+:zuul:role:`add-fileserver` role; see that role's documentation for a
+description of the site_logs secret in this example post-run playbook:
+
+.. code-block:: yaml
+
+   - hosts: localhost
+     roles:
+       - role: add-fileserver
+         fileserver: "{{ site_logs }}"
+
+   - hosts: "{{ site_logs.fqdn }}"
+     gather_facts: False
+     roles:
+       - role: upload-logs
+         zuul_log_url: "http://logs.example.org"
+
+**Role Variables**
+
+.. zuul:rolevar:: zuul_log_url
+
+   Base URL where logs are to be found.
+
+.. zuul:rolevar:: zuul_logserver_root
+   :default: /srv/static/logs
+
+   The root path to the logs on the logserver.
+
+.. zuul:rolevar:: zuul_log_compress
+   :default: false
+
+   When enabled, the console logs Zuul produces will be compressed
+   before uploading. You may need additional configuration for your web
+   server to view these files.
+
+.. zuul:rolevar:: zuul_log_verbose
+   :default: false
+
+   The synchronize task in this role outputs a lot of information.  By
+   default, no_log is set to avoid overwhelming a reader of the logs.
+   Set this to true to disable that behavior if it becomes necessary
+   to debug this role.
+
+.. 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_path_shard_build
+   :default: False
+
+   This var is consumed by set-zuul-log-path-fact which upload-logs
+   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`.