abrader / abrader-gms

Git management system types and providers for Puppet utilizing Github, Gitlab, Stash APIs
Apache License 2.0
26 stars 32 forks source link

git_webhook doesn't change hook after it's been created #41

Open bschonec opened 6 years ago

bschonec commented 6 years ago

On GitLab (Github untested), the git_webhook resource doesn't modify the webhook if it already exists:

git_webhook { 'web_post_receive_webhook' : ensure => present, webhook_url => 'http://puppetserver.example.com:8088/payload', token => hiera('gitlab_api_token'), project_name => 'puppet/control-repo', server_url => 'http://gitlab.example.com', provider => 'gitlab', disable_ssl_verify => false, }

This successfully creates the webhook, but if you change: disable_ssl_verify => true the webhook on Gitlab doesn't get updated.

abrader commented 6 years ago

Interesting. Will take a look to see what needs to be included in next release.

bschonec commented 2 years ago

Updating several years later, the merge_request_events parameter doesn't update the Push event webhook if you change from true/false and re-run puppet. The issue is that the code only checks for the existence of the webhook on the Gitlab server - it does not check the validity of the parameters. https://github.com/abrader/abrader-gms/blob/0b90825a53b6b6f9ab87844550051febb8dfc7d4/lib/puppet/provider/git_webhook/gitlab.rb#L82 Again, Gitlab only.