Moving tests from CLI to server

This commit is contained in:
Denis Makogon
2017-07-21 17:54:21 +03:00
parent fae48afaa4
commit 9400a83aa8
17 changed files with 1179 additions and 3 deletions

View File

@@ -0,0 +1,8 @@
FROM funcy/go:dev as build-stage
WORKDIR /function
ADD . /src
RUN cd /src && go build -o func
FROM funcy/go
WORKDIR /function
COPY --from=build-stage /src/func /function/
ENTRYPOINT ["./func"]

View File

@@ -0,0 +1,5 @@
name: funcy/log
version: 0.0.1
runtime: go
entrypoint: ./func
path: /log

View File

@@ -0,0 +1,28 @@
package main
import (
"encoding/json"
"fmt"
"math/rand"
"os"
)
const lBytes = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
type OutputSize struct {
Size int `json:"size"`
}
func RandStringBytes(n int) string {
b := make([]byte, n)
for i := range b {
b[i] = lBytes[rand.Intn(len(lBytes))]
}
return string(b)
}
func main() {
out := &OutputSize{}
json.NewDecoder(os.Stdin).Decode(out)
fmt.Fprintln(os.Stderr, RandStringBytes(out.Size))
}

View File

@@ -0,0 +1,3 @@
{
"size": 1048576
}

View File

@@ -0,0 +1,8 @@
FROM funcy/go:dev as build-stage
WORKDIR /function
ADD . /src
RUN cd /src && go build -o func
FROM funcy/go
WORKDIR /function
COPY --from=build-stage /src/func /function/
ENTRYPOINT ["./func"]

View File

@@ -0,0 +1,5 @@
name: funcy/multi-log
version: 0.0.1
runtime: go
entrypoint: ./func
path: /multi-log

View File

@@ -0,0 +1,14 @@
package main
import (
"fmt"
"os"
"time"
)
func main() {
fmt.Fprintln(os.Stderr, "First line")
fmt.Fprintln(os.Stdout, "Ok")
time.Sleep(3 * time.Second)
fmt.Fprintln(os.Stderr, "Second line")
}

View File

@@ -0,0 +1,8 @@
FROM funcy/go:dev as build-stage
WORKDIR /function
ADD . /src
RUN cd /src && go build -o func
FROM funcy/go
WORKDIR /function
COPY --from=build-stage /src/func /function/
ENTRYPOINT ["./func"]

View File

@@ -0,0 +1,5 @@
name: funcy/timeout
version: 0.0.1
runtime: go
entrypoint: ./func
path: /timeouter

View File

@@ -0,0 +1,9 @@
package main
import (
"time"
)
func main() {
time.Sleep(32 * time.Second)
}