Commit graph

118 commits

Author SHA1 Message Date
Cameron Moore
1c779a0d75 Update multipart form data logic
All form values are simply added to the payload map without processing.
JSON parsing of values happens later.
2019-12-25 09:08:23 -06:00
Cameron Moore
93632d077c Add multipart form data support 2019-12-25 09:05:15 -06:00
Cameron Moore
779ff0ad10 Fix XML error message 2019-12-24 19:47:21 -06:00
Cameron Moore
3463804a7c Add XML payload support
Fixes #238
2019-12-24 15:58:49 -06:00
Cameron Moore
be815d0a41 Use gorilla/mux for middleware and extend
- Use gorilla/mux for middleware.
- Add Dumper, RequestID, and Logger middlewares.
- Add makeURL helper
2019-12-24 11:57:26 -06:00
Cameron Moore
40d9dcd6d4 Make hook package internal
The hook package API is not meant for public consumption.
2019-12-21 11:55:42 -06:00
Cameron Moore
8ff3848ea3 Use gofrs/uuid instead of satori/go.uuid
The satori package appears to be unmaintained.  The gofrs package is a
fork that is actively maintained by a larger group of Go developers.
2019-12-18 21:17:13 -06:00
Adnan Hajdarevic
8fe6c9a05d Update version to 2.6.11 2019-12-15 14:30:54 +01:00
Cameron Moore
f1003560f1 Add list cipher suites support 2019-12-03 21:35:16 -06:00
Cameron Moore
43f519a712 Add TLS version and cipher suites options
Default to TLS 1.2 and secure cipher suites.

Built for Go 1.13. Code in cipher_suites.go taken from Go tip commit
0ee22d9, which is scheduled for the upcoming Go 1.14 release.  Once Go
1.14 is released, we can remove this file and use the stdlib.

Fixes #244
2019-12-03 15:13:12 -06:00
Adnan Hajdarevic
ce186487f4 Format the file using go fmt. 2019-12-02 19:03:38 +01:00
Adnan Hajdarevic
a99abd4e6f Fix invalid assumption in code that multipart forms can be parsed in the same way as urlencoded forms.
Refactored code to use switch-case statement over the `Content-Type` header and log unsupported content types instead of silently failing.
Also made the `x-www-form-urlencoded` content type handler more specific (as opposed to the previous code which looked for `form` occurence in the value),
as we need to use different logic for multipart forms, which we'll hopefully implement soon.

The issue with multipart forms that we have to handle first is that the files are being written to temporary files, and as such, for async hooks
webhook cannot guarantee they'll be available after we close the request; that, and the fact that we don't have code that will properly serialize
and pass such Golang objects to the script, as there are several fields which might be interesting to the end user.
2019-12-02 18:49:24 +01:00
Adnan Hajdarevic
34ae132930 Bump webhook version to 2.6.10 2019-09-24 19:45:40 +02:00
Adnan Hajdarević
002c332b68
Merge pull request #327 from dexpota/master
Fix issue with relative paths and command execution
2019-09-18 18:07:07 +02:00
Fabrizio Destro
d3fd9bddd9 Fix issue with relative paths and command execution 2019-08-25 20:08:39 +02:00
Christiaan Kras
c6939d57dc Replaced fmt.Frpintf calls with fmt.Fprint when there's no formatting used
This fixes #313
2019-04-24 14:59:38 +02:00
Adnan Hajdarević
e86c2cf610
Merge branch 'development' into development 2019-04-17 18:11:12 +02:00
Adnan Hajdarevic
f76426e9b0 add handler for the route to be used as a healtcheck endpoint, fixes #233 2018-11-17 19:01:26 +01:00
Adnan Hajdarevic
fc0544e4a2 Bump version to 2.6.9 2018-11-13 21:01:42 +01:00
Andreas Lundblad
54a7190113 Forgot a rename in previous refactoring. 2018-09-17 20:41:51 +02:00
Andreas Lundblad
ef3f43f89f Added SuccessHttpResponseCode handling for case when capture output is set to true. 2018-09-15 16:06:18 +02:00
Andreas Lundblad
22073d8847 Renamed http-response-code to success-http-response-code 2018-09-15 16:00:42 +02:00
Andreas Lundblad
c05ca8c528 Added HttpResponseCode hook setting 2018-09-15 15:55:28 +02:00
Adnan Hajdarević
f9e799fea0
Merge pull request #206 from dcj/feature/incoming-payload-content-type
added support for incoming-payload-content-type
2018-09-14 11:51:06 +02:00
Cameron Moore
66a9e48e39 Fix unnecessary nil check around range 2018-02-16 20:36:42 -06:00
Cameron Moore
48061f1508 Simplify boolean some comparisons 2018-02-16 20:23:25 -06:00
Cameron Moore
cfed5cfe4b Fix unnecessary use of printf 2018-02-16 20:18:40 -06:00
Adnan Hajdarevic
a811db410b check before removing 2017-12-21 13:25:19 +01:00
Adnan Hajdarevic
85889fe378 Fix nilpointer dereference when file cannot be created 2017-12-21 13:14:07 +01:00
Adnan Hajdarevic
ecbba514e5 Bump version 2017-12-13 20:46:15 +01:00
Donald Clark Jackson
f84edae99d added support for incoming-payload-content-type 2017-11-27 14:02:57 -08:00
Greg Dubicki
a40fba5e29 Add CaptureCommandOutputOnError
to include stdout & stderror in failed executions,
with docs.
2017-11-11 18:46:55 +01:00
Cameron Moore
f5f04ddaa2 Allow hooks file to be parsed as a template
Add a -template command line option that instructs webhook to parse the
hooks files as Go text templates.

Includes a `getenv` template func for retrieving environment variables.
2017-11-08 09:14:58 -06:00
Marco Descher
c9abc252e8 Delete hook files by default 2017-11-07 16:38:12 +01:00
Marco Descher
6145634670 Adapt to #173 2017-11-07 16:19:22 +01:00
Marco Descher
41b75acc70
Merge branch 'master' into master 2017-11-07 16:14:47 +01:00
Adnan Hajdarević
65bd1cdd10
Update webhook.go 2017-11-04 20:49:57 +01:00
Marco Descher
213e4529e8 #162 do use temporary files, provide env variable 2017-09-15 13:30:44 +02:00
Adnan Hajdarević
f0e26bc03c Merge pull request #164 from ivanpesin/static-parameter-warning
Static parameter warning
2017-09-14 19:44:16 +02:00
Ivan Pesin
da39872a77 Add request-id to verbose log messages 2017-09-12 23:12:12 -05:00
Ivan Pesin
142e912d6a Fix to support hot reload with vim editor changes 2017-09-12 00:10:16 -05:00
Marco Descher
78aa85e0c1 Revert to original hook import 2017-08-30 14:23:29 +02:00
Marco Descher
395fb41d23 Provide means to transfer files #162 add deleteOnExit 2017-08-29 14:42:14 +02:00
Ivan Pesin
1fc4445668 Produce warnings if unable to locate binary and if static parameters specified erroneously 2017-08-25 23:31:02 -04:00
Ivan Pesin
d52d7bde1c Fixed source code formatting with go fmt (spaces to tabs) 2017-08-25 23:30:08 -04:00
Marco Descher
34c4b1c166 Provide means to transfer files #162 2017-08-25 15:01:57 +02:00
Adnan Hajdarevic
cfd138c96d Fix #141 2017-08-09 09:52:59 +02:00
ilkelma
3a75bbf4db Change to CombinedOutput to consume Stderr as well 2017-06-13 16:23:59 -04:00
Adnan Hajdarevic
a38875213a fix tests, log ip of the incoming request, bump version 2017-05-27 17:14:38 +02:00
Adnan Hajdarevic
81b1bd7c7b bump up the version to 2.6.3 2017-04-07 10:59:40 +02:00