Commit Graph

34 Commits

Author SHA1 Message Date
David Shrewsbury e6d8b210cc Documentation reorg
Reorganizing docs as recommended in:

https://www.divio.com/blog/documentation/

This is simply a reorganization of the existing documents and changes
no content EXCEPT to correct the location of sphinx doc references.
Expect followup changes to change document names (to reflect the new
structure) and to move content from existing guides (e.g., to move the
pipeline/project/job structure definitions out of the "Project Configuration"
reference guide into their own reference documents for easier locatability).

All documents are now located in either the "overview", "tutorials",
"discussions", or "references" subdirectories to reflect the new structure
presented to the user. Code examples and images are moved to "examples" and
"images" root-level directories.

Developer specific documents are located in the "references/developer"
directory.

Change-Id: I538ffd7409941c53bf42fe64b7acbc146023c1e3
2020-01-14 12:47:23 -05:00
Clint Byrum 6d5615dd60 Add support for submitting reviews on GitHub
GitHub has added a lot of controls around the review object, so it is
useful to be able to run tests and then submit a review rather than
simply merge. One use-case is also to be able to self-approve with a
comment, such as is done in the test code added.

Change-Id: I16872062e627b385f78023878bea348555ec5348
2019-04-30 09:43:08 -07:00
Mohammed Naser f051af6c8c doc: clarify sshkey option usage in github connection
The `sshkey` option is only there for usage when using the webhook
method of configuring the GitHub connection, this change documents
and clarifies that.

Change-Id: Iee5cccc12b5226aec8aadfe3bd73e8e52f98aac2
2019-02-23 09:20:41 -05:00
gaobin 4106eaa5f3 Fixed the word from congfiguration to configuration
Change-Id: Ief2c7f7db59c32f412a331dea430272ae1b63341
2018-12-08 06:32:41 +00:00
James E. Blair 74346801b2
quick-start: add a note about github
Make it very obvious that this is still relevant even for folks
who want to use github.

Change-Id: I6b39aa9676054e8dabb163a4856fb7832fa32ae4
2018-10-26 09:25:25 -05:00
Zuul ee7d4349c5 Merge "Make GitHub rate limit logging configurable" 2018-08-09 21:13:25 +00:00
Tobias Henkel 9a694815ff
Make GitHub rate limit logging configurable
Currently we have fixed rate limit logging in the GitHub driver. This
does a rate limit api call after almost each api call to
GibHub. However if the GitHub Enterprise instance doesn't have a rate
limit configured this logging doesn't make sense and costs an
additional network round trip time for every request. Thus make this
configurable and by default enabled to retain the current behavior.

Change-Id: I39762611ff74e2ab1fb277f8e9c32be0673abfa3
2018-07-05 09:17:19 +02:00
Tristan Cacqueray f4f74b66b7 doc: re-order GitHub Application configuration
This change fixes the event subscription list and re-order the items so
that they match the GitHub web interface order.

Change-Id: I02e8d101ee08b6993725788e55f4ac54cfd75a9c
2018-07-05 02:19:33 +00:00
Zuul 36fb4e0d6e Merge "Support merged as requirement in github driver" 2018-06-01 21:42:02 +00:00
Artem Goncharov 15a1566ba8 correct github review approval type is `approved`
Correct (working for me) require.review.type is `approved` and not
`approval`. From the code it looks like the review status is being
treated as a type (githubconnection.py:L982)

Change-Id: I26af7145c6f7ec6a99790bf6781b475c7d89fb1a
2018-05-24 12:53:00 +00:00
Tobias Henkel 735190f2ec
Support merged as requirement in github driver
Currently when creating a post pipeline with the github driver we can
only use the push event. This has the drawback that it ignores
protected branches and thus also works speculatively on any branch if
you want to have a generic post pipeline. This imposes problems with
secrets.

So instead using the push event we want to trigger on pull_request
closed events. However this currently doesn't work as we cannot
distinguish between merged and abandoned pull requests. Adding a
merged requirement nicely solves that problem.

Change-Id: I46670c6aa036976c430a6034a6b1da0e23fa9f92
2018-05-16 07:43:50 +02:00
Tobias Henkel 0c3b8fb963 Support regex matching of github status
The github status requirements matching and trigger filter are
currently plain text matching based. This currently limits sharing of
pipeline definitions between tenants as zuul reports the status as
'<tenant>/<pipeline>'. This currently makes it necessary to define
trigger filter for each tenant [1] and completely blocks pipeline
requirements.

A solution to this is regex matching which makes it possible to define
the filter once [2].

Further this enables an interesting further use case to trigger on any
successfull status [3]. This makes it easier to cooperate with other
CI systems or github apps which also set a status.

Directly use re2 as this will be used in the future for regex
matching.

[1] Trigger filter snippet
  trigger:
    github:
      - event: pull_request
        action: status
        status:
          - zuul:tenant1/check:success
          - zuul:tenant2/check:success
          - zuul:tenant3/check:success
          - zuul:tenant4/check:success

[2] Regex trigger filter snippet
  trigger:
    github:
      - event: pull_request
        action: status
        status:
          - zuul:.+/check:success

[3] Generic success filter snippet
  trigger:
    github:
      - event: pull_request
        action: status
        status:
          - .*:success

Change-Id: Id1b9d7334db78d0f13db33d47a80ffdb65f921df
2018-04-13 18:15:19 +02:00
James E. Blair 8f77b30923 Update github payload location docs
This has moved to /api/...

Change-Id: I93dc2e94e0d63eed1fe8e119c905f37d9b6e500e
2018-03-28 17:15:15 -07:00
Bernd Bausch 0901777d37 Add port to webhook URL in Zuul github driver docu
The currently documented webhook URL is without port.
Such a webhook does not work, since zuul-web listens
on port 9000.
This is related to https://review.openstack.org/554829.

Change-Id: Ia06291eb97338239776e8b68d1f2541fd0aa875c
2018-03-22 18:51:53 +09:00
James E. Blair f09c238185 Add zuul from scratch doc
This is just a skeleton for now, and should be expanded, but it
should be correct and up to date for what we expect in the v3
release.

Change-Id: I305200cbfc128cc1bc09e809540a873f60e0fe5c
Co-Authored-By: Leif Madsen <lmadsen@redhat.com>
Co-Authored-By: Monty Taylor <mordred@inaugust.com>
Co-Authored-By: Paul Belanger <pabelanger@redhat.com>
2018-02-12 11:34:28 -08:00
Tobias Henkel 940da00e9b
Move status_url from webapp to web section
The webapp will be fully replaced by zuul-web so also move the
status_url setting there.

Change-Id: I8278d9ca81ed7b0a2a2189d42b8b69c5eea2bab5
2018-01-29 14:16:28 +01:00
Joshua Hesketh abac0d0cd8 Fix line wrapping in github docs
Change-Id: I96706bfc87dfccb1b619d0def3b895949dbdddb8
2017-12-11 13:35:56 +11:00
Tristan Cacqueray 9d83c61221 github: add integration documentation
Change-Id: Ie3f8f9b68319d3f0c420b8c0770e8fce37f750e1
2017-11-29 06:44:00 +00:00
James E. Blair 02157ad419 Docs: reformat github driver docs
Change-Id: Icb74dc39714b6efac4fcc1f1d44772982a236b35
2017-08-03 17:34:49 -07:00
Tobias Henkel 65e0e8c84d Make github ssl verification configurable
In order to support connections to test installations of GitHub
Enterprise it is useful to be able to disable the ssl verification.

Change-Id: I819c12feb7825f7cf48e522424edefd48aac2b5b
2017-08-01 13:48:05 +02:00
James E. Blair 32c5248256 docs: reformat job section with zuul domain
Also start using some code-block sections.

Also fix some leftover :ref: and :zuul:value: entries from previous
patches.

Change-Id: I6350640f1f822c159e0eca088cc873f66f6bc46d
2017-07-29 07:49:03 -07:00
James E. Blair 91fe48355e Add zuul:value xref
Use it and zuul:attr xrefs.

Change-Id: I5cac10bbf76b54d0f035cc7c69e9304a2e197303
2017-07-28 17:28:26 -07:00
James E. Blair 9437591162 Make zuul the default sphinx domain
This lets us say "attr" instead of "zuul:attr".

Change-Id: Iaa6b3c7d6f4fc130445a258fea9f0e2f5dd8688b
2017-07-28 17:20:27 -07:00
James E. Blair fa2594b2e6 Support cross-references based on zuul:attr
Add a new role: :zuul:attr: which will cross reference to a zuul:attr:
directive.

Change-Id: I69a65a9f4a0330f664f6183180872d459d234e72
2017-07-28 17:16:21 -07:00
James E. Blair a6abb70c82 Remove zuul:configobject
This isn't currently being used any differently than zuul:attr
so just switch to that.

Change-Id: I5d78f86874f7da6b1f556d38825a97668a2907c2
2017-07-28 15:47:35 -07:00
James E. Blair d134c6ddf0 Cleanup pipeline requirements
Pipeline requirements are now per-source.  Remove dead validation
code in configloader which appeared to validate the old form (but
was actually overriden).  Remove requirements from the zuul trigger
which are not used.  Move the current requirements documentation
into the gerrit driver docs, and create github requirements docs.

Change-Id: I87e3813242dd3cd67138eae9efa96693fc598af0
2017-07-28 10:37:59 -07:00
Monty Taylor 4b203990f1
Update docs to indicate app_key is a file
The GitHub app_key setting is intended to hold a path to a file, not the
content itself.

Change-Id: If07c6ec757b13aeab672f71e0fd2d370a93427db
2017-07-28 04:09:19 -05:00
Clint Byrum cf1b74275d Github - Require webhook_token
It's quite unsafe to run without webhook_token, and quite easy for us to
run our tests with a terribly predictable one. This will ensure that
nobody accidentally runs a Zuul vulnerable to MITM proxy attacks.

Per the link right under the doc we just changed, we also use
hmac.compare_digest to prevent timing analysis by malicious attackers
which would help them discover the secret.

Change-Id: Ie8aa83b81b8e4ef1bb755a664bf416a8663930fa
2017-07-27 17:26:52 -07:00
Monty Taylor ae1f03a9f5
Update docs on github connection settings
There were two essential settings completely missing. Add them. Also add
some text about what things are called in the UI, since we're using
completely different words in the Zuul config.

Change-Id: Ibead129aeab137154fe58f7db8d359f565868781
2017-07-27 14:43:55 -05:00
James E. Blair cc3ca7dc61 Clarify canonical_hostname documentation
Change-Id: I91fdba8cde3f2ae0eedb77164acd49d75acd4786
2017-07-06 15:03:23 -07:00
James E. Blair 5f11ff3629 Rename git_host to server in github driver
To be more consistent with the gerrit driver.

Change-Id: I96da4de53294db238dd22aca7387434d86e97a46
2017-07-06 15:03:16 -07:00
James E. Blair 88e5388dfb Fix some inconsistent indentation in docs
Change-Id: Ic9ffad8870955c000230ebb45b4e72e588144f70
2017-07-05 14:44:14 -07:00
James E. Blair 4d5dd250a5 Add some information about canonical_hostname
Change-Id: I84e48ccd8dde5bebbd1decf0ff780e8768270bcd
2017-07-05 14:43:48 -07:00
James E. Blair eff5a9d8d7 Reorganize docs into user/admin guide
Refresh the user and admin guide for v3 changes, and reorganize into
a narrative structure which makes more sense for v3.

Change-Id: I4ac3b18d5ed33b0fea4e2ef0318b19bfc3447ccc
2017-07-05 14:35:22 -07:00