mirror of
https://github.com/openfaas/faas.git
synced 2025-06-19 12:36:40 +00:00
Enable routing via /functions/ endpoint
This commit is contained in:
11
sample-functions/WebhookStash/Dockerfile
Normal file
11
sample-functions/WebhookStash/Dockerfile
Normal file
@ -0,0 +1,11 @@
|
||||
FROM golang:1.7.3
|
||||
RUN mkdir -p /go/src/app
|
||||
COPY handler.go /go/src/app
|
||||
WORKDIR /go/src/app
|
||||
RUN go get -d -v
|
||||
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
|
||||
|
||||
COPY fwatchdog /usr/bin/
|
||||
|
||||
ENV fprocess="/go/src/app/app"
|
||||
CMD ["fwatchdog"]
|
18
sample-functions/WebhookStash/README.md
Normal file
18
sample-functions/WebhookStash/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
WebhookStash
|
||||
============
|
||||
|
||||
Example serverless function shows how to stash way contents of webhooks called via API gateway.
|
||||
|
||||
Each file is saved with the UNIX timestamp in nano seconds plus an extension of .txt
|
||||
|
||||
Example:
|
||||
|
||||
```
|
||||
# curl -X POST -v -d @$HOME/.ssh/id_rsa.pub localhost:8080/function/webhookstash
|
||||
```
|
||||
|
||||
Then if you find the replica you can check the disk:
|
||||
|
||||
```
|
||||
# docker exec webhookstash.1.z054csrh70tgk9s5k4bb8uefq find
|
||||
```
|
18
sample-functions/WebhookStash/handler.go
Normal file
18
sample-functions/WebhookStash/handler.go
Normal file
@ -0,0 +1,18 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"strconv"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
input, _ := ioutil.ReadAll(os.Stdin)
|
||||
fmt.Println("Stashing request")
|
||||
now := time.Now()
|
||||
stamp := strconv.FormatInt(now.UnixNano(), 10)
|
||||
|
||||
ioutil.WriteFile(stamp+".txt", input, 0644)
|
||||
}
|
Reference in New Issue
Block a user