•  
      story #9083 trigger webhooks on git push
    Summary
    developer
    trigger webhooks on git push

    I can automate deployments after push

    In git config, hooks section I can:

    • Define, update and delete URL to be called after a git push
      • This URL will be called with POST method
      • There will be one call per reference (branch, tag) contained in push
      • Each call will have one arg 'ref' with the corresponding reference, www-urlencoded
    • I have a log of the last 30 push with:
      • The time, the status code returned by the target
    • I can define several webhook per repository

    Specific cases:

    • On forks, the configuration of webhooks is not inherited
    • On project creation, the configuration of webhooks is not inherited
    • After gerrit migration the webhooks are still active (ie triggered after replication)
    • There is no XML import/export

    Example:

    Given I configured http://myapp.io/one/target and http://anotherapp.bzh as 2 webhooks

    When I push 2 commits made in 2 branches (master and feature_1)

    Then Tuleap make 4 calls:

    • POST http://myapp.io/one/target (body: ref=refs/heads/master ...)
    • POST http://anotherapp.bzh (body: ref=refs/heads/master ...)
    • POST http://myapp.io/one/target (body: ref=refs/heads/feature_1 ...)
    • POST http://anotherapp.bzh (body: ref=refs/heads/feature_1 ...)

     

    Empty
    Status
    Empty
    Done
    Development
    • [ ] Does it involves User Interface? 
    • [ ] Are there any mockups?
    • [ ] Are permissions checked?
    • [ ] Does it need Javascript development?
    • [ ] Does it need a forge upgrade bucket?
    • [ ] Does it need to execute things in system events?
    • [ ] Does it impact project creation (templates)?
    • [ ] Is it exploratory?
    Empty
    Details
    #9083
    Manuel Vacelet (vaceletm)
    2016-06-01 10:23
    2016-04-19 11:25
    9379

    References
    Referencing story #9083

    Git commit

    tuleap/tuleap/stable

    Display current Jenkins in a dedicated table 94bb0473ab
    Open a modal to create/edit Jenkins webhook aac0d9db55
    Delete a Jenkins server 04686165c5
    display list of triggerd logs in a modal d72e1ffc6d
    Send webhooks after a git push 3538f65a6e
    Introduce WebHook Object 1b142988fb
    Refactoring: move all webhook management in git plugin 44bd460678
    Add missing use statement 12ce767d64
    Display list of custom webhooks 42af15d4c2
    Delete a custom webhook 86630c4eae
    Create generic webhook 75dd3056d8
    Do not send JSON in a application/x-www-form-urlencoded 68a0180e58
    Edit custom webhook 7b41bc9ef6
    Display status of the webhooks a377734808
    Display error when the server cannot be reached 9024ad2362
    Refactoring: new git settings pane should be PSR-2 7a6efde0f3
    Refactoring: Remove double namespace Tuleap\Git\Git f75e2355b4
    Refactoring: align filename with classname cafbb5d9ca
    Refactoring: Unify namespace for Webhooks e3f8204843
    Refactoring: do not leak plugins into core 19e5954453

    Follow-ups

    User avatar
    User avatar
    • So that
      Something went wrong, the follow up content couldn't be loaded
      Only formatting have been changed, you should switch to markup to see the changes
    • Acceptance criteria
      Something went wrong, the follow up content couldn't be loaded
      Only formatting have been changed, you should switch to markup to see the changes