mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
Rename location.
This commit is contained in:
128
CHANGELOG.md
128
CHANGELOG.md
@@ -4,73 +4,73 @@
|
||||
|
||||
### Features
|
||||
|
||||
- [#428](https://github.com/kumokit/functions/issues/428): Change update route from PUT to PATCH.
|
||||
- [#368](https://github.com/kumokit/functions/issues/368): fn: support route headers tweaks.
|
||||
- [#316](https://github.com/kumokit/functions/issues/316): fnctl: Add rustlang support.
|
||||
- [#313](https://github.com/kumokit/functions/issues/313): fnctl: Add .NET core support?.
|
||||
- [#310](https://github.com/kumokit/functions/issues/310): fnctl: Add python support.
|
||||
- [#69](https://github.com/kumokit/functions/issues/69): Long(er) running containers for better performance aka Hot Containers.
|
||||
- [#472](https://github.com/kumokit/functions/pull/472): Add global lru for routes with keys being the appname + path.
|
||||
- [#484](https://github.com/kumokit/functions/pull/484): Add triggers example for OpenStack project Picasso.
|
||||
- [#487](https://github.com/kumokit/functions/pull/487): Add initial load balancer.
|
||||
- [#428](https://github.com/treeder/functions/issues/428): Change update route from PUT to PATCH.
|
||||
- [#368](https://github.com/treeder/functions/issues/368): fn: support route headers tweaks.
|
||||
- [#316](https://github.com/treeder/functions/issues/316): fnctl: Add rustlang support.
|
||||
- [#313](https://github.com/treeder/functions/issues/313): fnctl: Add .NET core support?.
|
||||
- [#310](https://github.com/treeder/functions/issues/310): fnctl: Add python support.
|
||||
- [#69](https://github.com/treeder/functions/issues/69): Long(er) running containers for better performance aka Hot Containers.
|
||||
- [#472](https://github.com/treeder/functions/pull/472): Add global lru for routes with keys being the appname + path.
|
||||
- [#484](https://github.com/treeder/functions/pull/484): Add triggers example for OpenStack project Picasso.
|
||||
- [#487](https://github.com/treeder/functions/pull/487): Add initial load balancer.
|
||||
|
||||
### Bugfixes
|
||||
|
||||
- [#483](https://github.com/kumokit/functions/pull/483): Listen for PORT before running async/sync workers in order to prevent errors.
|
||||
- [#479](https://github.com/kumokit/functions/pull/478): Add routes config set/unset back
|
||||
- [#429](https://github.com/kumokit/functions/issues/429): Broken docs after merge.
|
||||
- [#422](https://github.com/kumokit/functions/issues/422): The headers field in func.yaml expects an array of values for each header key.
|
||||
- [#421](https://github.com/kumokit/functions/issues/421): Can't update a route and show better error message.
|
||||
- [#420](https://github.com/kumokit/functions/issues/420): `fn` tool install script not being updated to new releases.
|
||||
- [#419](https://github.com/kumokit/functions/issues/419): --runtime flag on init doesn't work area/fn .
|
||||
- [#414](https://github.com/kumokit/functions/issues/414): make run-docker is buggy on linux .
|
||||
- [#413](https://github.com/kumokit/functions/issues/413): fnctl: Creating routes ignores the route path and assigns function name.
|
||||
- [#403](https://github.com/kumokit/functions/issues/403): Route update (HTTP PUT) modifies datastore entity by making it inconsistent.
|
||||
- [#393](https://github.com/kumokit/functions/issues/393): Add documentation on how to use hot containers.
|
||||
- [#384](https://github.com/kumokit/functions/issues/384): Multiple routines use non-threadsafe cache.
|
||||
- [#381](https://github.com/kumokit/functions/issues/381): Unable to update route path through HTTP PUT area/api bug.
|
||||
- [#380](https://github.com/kumokit/functions/issues/380): Unable to update app name.
|
||||
- [#373](https://github.com/kumokit/functions/issues/373): fn build should fail if no version in func.yaml.
|
||||
- [#369](https://github.com/kumokit/functions/issues/369): Add documentation related to SpecialHandlers.
|
||||
- [#366](https://github.com/kumokit/functions/issues/366): Documentation lagging behind after Hot Containers.
|
||||
- [#365](https://github.com/kumokit/functions/issues/365): Documentation lagging behind on AppListeners.
|
||||
- [#364](https://github.com/kumokit/functions/issues/364): Remove app_name from per function endpoints.
|
||||
- [#363](https://github.com/kumokit/functions/issues/363): Update CONTRIBUTING with some rules of PRs.
|
||||
- [#360](https://github.com/kumokit/functions/issues/360): HTTP route /version is not described in swagger doc.
|
||||
- [#352](https://github.com/kumokit/functions/issues/352): Improve `fn publish` command .
|
||||
- [#345](https://github.com/kumokit/functions/issues/345): Check and fix for potential goroutine leak in api/runner.
|
||||
- [#339](https://github.com/kumokit/functions/issues/339): Unable to run sync route execution longer than 60 seconds.
|
||||
- [#320](https://github.com/kumokit/functions/issues/320): Change cli tool name to `fn`?.
|
||||
- [#319](https://github.com/kumokit/functions/issues/319): Update docs to link to client libraries.
|
||||
- [#304](https://github.com/kumokit/functions/issues/304): Create an fnctl dns entry and enable ssl for install of the cli tool.
|
||||
- [#302](https://github.com/kumokit/functions/issues/302): Placement of app name in fnctl seems inconsistent .
|
||||
- [#301](https://github.com/kumokit/functions/issues/301): can add a route with /hello but can’t delete it with /hello .. have to delete it with just hello.
|
||||
- [#299](https://github.com/kumokit/functions/issues/299): More obvious USAGE line for where to include app name.
|
||||
- [#298](https://github.com/kumokit/functions/issues/298): deleting a route that doesn't exist says it's deleted.
|
||||
- [#296](https://github.com/kumokit/functions/issues/296): Better error messages for error on creating app.
|
||||
- [#293](https://github.com/kumokit/functions/issues/293): fn: auto release for fn.
|
||||
- [#288](https://github.com/kumokit/functions/issues/288): api: add upsert entrypoint for route updates.
|
||||
- [#284](https://github.com/kumokit/functions/issues/284): Update iron/node image.
|
||||
- [#275](https://github.com/kumokit/functions/issues/275): Functions API /tasks returns only one task ignoring query parameter `n`.
|
||||
- [#274](https://github.com/kumokit/functions/issues/274): Support app deletion API .
|
||||
- [#254](https://github.com/kumokit/functions/issues/254): HTTP POST to /apps/{app}/routes is not returning HTTP 409 in case of existing similar route.
|
||||
- [#253](https://github.com/kumokit/functions/issues/253): HTTP POST to /app for app creation should return HTTP 409 if app already exists.
|
||||
- [#252](https://github.com/kumokit/functions/issues/252): HTTP PUT to /apps/{app} creates new app instead of modifying initial.
|
||||
- [#251](https://github.com/kumokit/functions/issues/251): Maybe drop the CONFIG_ prefix on user defined config vars?.
|
||||
- [#235](https://github.com/kumokit/functions/issues/235): Docs: Missing Redis docs.
|
||||
- [#229](https://github.com/kumokit/functions/issues/229): fnctl change suggestions.
|
||||
- [#218](https://github.com/kumokit/functions/issues/218): Copy s3 event example from kumokit/lambda.
|
||||
- [#216](https://github.com/kumokit/functions/issues/216): fnclt lambda commands need to automatically detect region from the AWS config.
|
||||
- [#197](https://github.com/kumokit/functions/issues/197): Create an fnctl dns entry and enable ssl for install of the cli tool.
|
||||
- [#182](https://github.com/kumokit/functions/issues/182): Remove error in logs when image not found.
|
||||
- [#161](https://github.com/kumokit/functions/issues/161): Example slackbot - Copy guppy example over.
|
||||
- [#134](https://github.com/kumokit/functions/issues/134): Dynamic runners scaling.
|
||||
- [#126](https://github.com/kumokit/functions/issues/126): Detect OS and disable Memory profiling if needed.
|
||||
- [#72](https://github.com/kumokit/functions/issues/72): Should the input stream include a headers section, just like HTTP?.
|
||||
- [#69](https://github.com/kumokit/functions/issues/69): How to run on Openstack.
|
||||
- [#20](https://github.com/kumokit/functions/issues/20): Make function testing framework.
|
||||
- [#3](https://github.com/kumokit/functions/issues/3): Make "function tool" in ironcli.
|
||||
- [#2](https://github.com/kumokit/functions/issues/2): Allow setting content-type on a route, then use that when responding.
|
||||
- [#483](https://github.com/treeder/functions/pull/483): Listen for PORT before running async/sync workers in order to prevent errors.
|
||||
- [#479](https://github.com/treeder/functions/pull/478): Add routes config set/unset back
|
||||
- [#429](https://github.com/treeder/functions/issues/429): Broken docs after merge.
|
||||
- [#422](https://github.com/treeder/functions/issues/422): The headers field in func.yaml expects an array of values for each header key.
|
||||
- [#421](https://github.com/treeder/functions/issues/421): Can't update a route and show better error message.
|
||||
- [#420](https://github.com/treeder/functions/issues/420): `fn` tool install script not being updated to new releases.
|
||||
- [#419](https://github.com/treeder/functions/issues/419): --runtime flag on init doesn't work area/fn .
|
||||
- [#414](https://github.com/treeder/functions/issues/414): make run-docker is buggy on linux .
|
||||
- [#413](https://github.com/treeder/functions/issues/413): fnctl: Creating routes ignores the route path and assigns function name.
|
||||
- [#403](https://github.com/treeder/functions/issues/403): Route update (HTTP PUT) modifies datastore entity by making it inconsistent.
|
||||
- [#393](https://github.com/treeder/functions/issues/393): Add documentation on how to use hot containers.
|
||||
- [#384](https://github.com/treeder/functions/issues/384): Multiple routines use non-threadsafe cache.
|
||||
- [#381](https://github.com/treeder/functions/issues/381): Unable to update route path through HTTP PUT area/api bug.
|
||||
- [#380](https://github.com/treeder/functions/issues/380): Unable to update app name.
|
||||
- [#373](https://github.com/treeder/functions/issues/373): fn build should fail if no version in func.yaml.
|
||||
- [#369](https://github.com/treeder/functions/issues/369): Add documentation related to SpecialHandlers.
|
||||
- [#366](https://github.com/treeder/functions/issues/366): Documentation lagging behind after Hot Containers.
|
||||
- [#365](https://github.com/treeder/functions/issues/365): Documentation lagging behind on AppListeners.
|
||||
- [#364](https://github.com/treeder/functions/issues/364): Remove app_name from per function endpoints.
|
||||
- [#363](https://github.com/treeder/functions/issues/363): Update CONTRIBUTING with some rules of PRs.
|
||||
- [#360](https://github.com/treeder/functions/issues/360): HTTP route /version is not described in swagger doc.
|
||||
- [#352](https://github.com/treeder/functions/issues/352): Improve `fn publish` command .
|
||||
- [#345](https://github.com/treeder/functions/issues/345): Check and fix for potential goroutine leak in api/runner.
|
||||
- [#339](https://github.com/treeder/functions/issues/339): Unable to run sync route execution longer than 60 seconds.
|
||||
- [#320](https://github.com/treeder/functions/issues/320): Change cli tool name to `fn`?.
|
||||
- [#319](https://github.com/treeder/functions/issues/319): Update docs to link to client libraries.
|
||||
- [#304](https://github.com/treeder/functions/issues/304): Create an fnctl dns entry and enable ssl for install of the cli tool.
|
||||
- [#302](https://github.com/treeder/functions/issues/302): Placement of app name in fnctl seems inconsistent .
|
||||
- [#301](https://github.com/treeder/functions/issues/301): can add a route with /hello but can’t delete it with /hello .. have to delete it with just hello.
|
||||
- [#299](https://github.com/treeder/functions/issues/299): More obvious USAGE line for where to include app name.
|
||||
- [#298](https://github.com/treeder/functions/issues/298): deleting a route that doesn't exist says it's deleted.
|
||||
- [#296](https://github.com/treeder/functions/issues/296): Better error messages for error on creating app.
|
||||
- [#293](https://github.com/treeder/functions/issues/293): fn: auto release for fn.
|
||||
- [#288](https://github.com/treeder/functions/issues/288): api: add upsert entrypoint for route updates.
|
||||
- [#284](https://github.com/treeder/functions/issues/284): Update iron/node image.
|
||||
- [#275](https://github.com/treeder/functions/issues/275): Functions API /tasks returns only one task ignoring query parameter `n`.
|
||||
- [#274](https://github.com/treeder/functions/issues/274): Support app deletion API .
|
||||
- [#254](https://github.com/treeder/functions/issues/254): HTTP POST to /apps/{app}/routes is not returning HTTP 409 in case of existing similar route.
|
||||
- [#253](https://github.com/treeder/functions/issues/253): HTTP POST to /app for app creation should return HTTP 409 if app already exists.
|
||||
- [#252](https://github.com/treeder/functions/issues/252): HTTP PUT to /apps/{app} creates new app instead of modifying initial.
|
||||
- [#251](https://github.com/treeder/functions/issues/251): Maybe drop the CONFIG_ prefix on user defined config vars?.
|
||||
- [#235](https://github.com/treeder/functions/issues/235): Docs: Missing Redis docs.
|
||||
- [#229](https://github.com/treeder/functions/issues/229): fnctl change suggestions.
|
||||
- [#218](https://github.com/treeder/functions/issues/218): Copy s3 event example from treeder/lambda.
|
||||
- [#216](https://github.com/treeder/functions/issues/216): fnclt lambda commands need to automatically detect region from the AWS config.
|
||||
- [#197](https://github.com/treeder/functions/issues/197): Create an fnctl dns entry and enable ssl for install of the cli tool.
|
||||
- [#182](https://github.com/treeder/functions/issues/182): Remove error in logs when image not found.
|
||||
- [#161](https://github.com/treeder/functions/issues/161): Example slackbot - Copy guppy example over.
|
||||
- [#134](https://github.com/treeder/functions/issues/134): Dynamic runners scaling.
|
||||
- [#126](https://github.com/treeder/functions/issues/126): Detect OS and disable Memory profiling if needed.
|
||||
- [#72](https://github.com/treeder/functions/issues/72): Should the input stream include a headers section, just like HTTP?.
|
||||
- [#69](https://github.com/treeder/functions/issues/69): How to run on Openstack.
|
||||
- [#20](https://github.com/treeder/functions/issues/20): Make function testing framework.
|
||||
- [#3](https://github.com/treeder/functions/issues/3): Make "function tool" in ironcli.
|
||||
- [#2](https://github.com/treeder/functions/issues/2): Allow setting content-type on a route, then use that when responding.
|
||||
|
||||
## v0.1.0 [2016-11-18]
|
||||
|
||||
|
||||
10
Makefile
10
Makefile
@@ -25,10 +25,10 @@ run:
|
||||
|
||||
docker-dep:
|
||||
# todo: need to create a dep tool image for this (or just ditch this)
|
||||
docker run --rm -it -v ${CURDIR}:/go/src/github.com/kumokit/functions -w /go/src/github.com/kumokit/functions treeder/glide install -v
|
||||
docker run --rm -it -v ${CURDIR}:/go/src/github.com/treeder/functions -w /go/src/github.com/treeder/functions treeder/glide install -v
|
||||
|
||||
docker-build:
|
||||
docker run --rm -v ${CURDIR}:/go/src/github.com/kumokit/functions -w /go/src/github.com/kumokit/functions iron/go:dev go build -o functions-alpine
|
||||
docker run --rm -v ${CURDIR}:/go/src/github.com/treeder/functions -w /go/src/github.com/treeder/functions iron/go:dev go build -o functions-alpine
|
||||
docker build -t iron/functions:latest .
|
||||
|
||||
docker-run: docker-build
|
||||
@@ -37,8 +37,8 @@ docker-run: docker-build
|
||||
docker-test:
|
||||
docker run -ti --privileged --rm -e LOG_LEVEL=debug \
|
||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||
-v ${CURDIR}:/go/src/github.com/kumokit/functions \
|
||||
-w /go/src/github.com/kumokit/functions iron/go:dev go test \
|
||||
-v $(shell docker run -ti -v ${CURDIR}:/go/src/github.com/kumokit/functions -w /go/src/github.com/kumokit/functions -e GOPATH=/go golang:alpine sh -c 'go list ./... | grep -v vendor | grep -v examples | grep -v tool | grep -v fn | grep -v datastore')
|
||||
-v ${CURDIR}:/go/src/github.com/treeder/functions \
|
||||
-w /go/src/github.com/treeder/functions iron/go:dev go test \
|
||||
-v $(shell docker run -ti -v ${CURDIR}:/go/src/github.com/treeder/functions -w /go/src/github.com/treeder/functions -e GOPATH=/go golang:alpine sh -c 'go list ./... | grep -v vendor | grep -v examples | grep -v tool | grep -v fn | grep -v datastore')
|
||||
|
||||
all: dep build
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||

|
||||
|
||||
[](https://circleci.com/gh/kumokit/functions)
|
||||
[](https://godoc.org/github.com/kumokit/functions)
|
||||
[](https://circleci.com/gh/treeder/functions)
|
||||
[](https://godoc.org/github.com/treeder/functions)
|
||||
|
||||
Welcome to IronFunctions! The open source serverless platform.
|
||||
|
||||
@@ -294,7 +294,7 @@ Read more on [logging](docs/logging.md).
|
||||
docker run --rm -it --link functions:api -p 4000:4000 -e "API_URL=http://api:8080" iron/functions-ui
|
||||
```
|
||||
|
||||
For more information, see: https://github.com/kumokit/functions-ui
|
||||
For more information, see: https://github.com/treeder/functions-ui
|
||||
|
||||
## Writing Functions
|
||||
|
||||
@@ -308,7 +308,7 @@ See [docs/](docs/README.md) for full documentation.
|
||||
|
||||
## Roadmap
|
||||
|
||||
These are the high level roadmap goals. See [milestones](https://github.com/kumokit/functions/milestones) for detailed issues.
|
||||
These are the high level roadmap goals. See [milestones](https://github.com/treeder/functions/milestones) for detailed issues.
|
||||
|
||||
* ~~Alpha 1 - November 2016~~
|
||||
* Initial release of base framework
|
||||
|
||||
@@ -14,8 +14,8 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/boltdb/bolt"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoreutil"
|
||||
)
|
||||
|
||||
type BoltDatastore struct {
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoretest"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoretest"
|
||||
)
|
||||
|
||||
const tmpBolt = "/tmp/func_test_bolt.db"
|
||||
|
||||
@@ -5,11 +5,11 @@ import (
|
||||
"net/url"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/datastore/bolt"
|
||||
"github.com/kumokit/functions/api/datastore/mysql"
|
||||
"github.com/kumokit/functions/api/datastore/postgres"
|
||||
"github.com/kumokit/functions/api/datastore/redis"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/bolt"
|
||||
"github.com/treeder/functions/api/datastore/mysql"
|
||||
"github.com/treeder/functions/api/datastore/postgres"
|
||||
"github.com/treeder/functions/api/datastore/redis"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
func New(dbURL string) (models.Datastore, error) {
|
||||
|
||||
@@ -6,7 +6,7 @@ import (
|
||||
"log"
|
||||
"testing"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
|
||||
"net/http"
|
||||
"net/url"
|
||||
|
||||
@@ -3,7 +3,7 @@ package datastoreutil
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
// Datastore is a copy of models.Datastore, with additional comments on parameter guarantees.
|
||||
|
||||
@@ -3,8 +3,8 @@ package datastore
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type mock struct {
|
||||
|
||||
@@ -3,7 +3,7 @@ package datastore
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoretest"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoretest"
|
||||
)
|
||||
|
||||
func TestDatastore(t *testing.T) {
|
||||
|
||||
@@ -11,8 +11,8 @@ import (
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/go-sql-driver/mysql"
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
const routesTableCreate = `CREATE TABLE IF NOT EXISTS routes (
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoretest"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoretest"
|
||||
)
|
||||
|
||||
const tmpMysql = "mysql://root:root@tcp(%v:3307)/funcs"
|
||||
|
||||
@@ -10,8 +10,8 @@ import (
|
||||
|
||||
"bytes"
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/lib/pq"
|
||||
_ "github.com/lib/pq"
|
||||
)
|
||||
|
||||
@@ -9,7 +9,7 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoretest"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoretest"
|
||||
)
|
||||
|
||||
const tmpPostgres = "postgres://postgres@%v:15432/funcs?sslmode=disable"
|
||||
|
||||
@@ -12,8 +12,8 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/garyburd/redigo/redis"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoreutil"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoreutil"
|
||||
)
|
||||
|
||||
type RedisDataStore struct {
|
||||
|
||||
@@ -10,7 +10,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/garyburd/redigo/redis"
|
||||
"github.com/kumokit/functions/api/datastore/internal/datastoretest"
|
||||
"github.com/treeder/functions/api/datastore/internal/datastoretest"
|
||||
)
|
||||
|
||||
const tmpRedis = "redis://%v:6301/"
|
||||
|
||||
@@ -13,8 +13,8 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/boltdb/bolt"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
type BoltDbMQ struct {
|
||||
|
||||
@@ -12,7 +12,7 @@ import (
|
||||
"github.com/Sirupsen/logrus"
|
||||
mq_config "github.com/iron-io/iron_go3/config"
|
||||
ironmq "github.com/iron-io/iron_go3/mq"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type assoc struct {
|
||||
|
||||
@@ -9,8 +9,8 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/google/btree"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
type MemoryMQ struct {
|
||||
|
||||
@@ -3,7 +3,7 @@ package mqs
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type Mock struct {
|
||||
|
||||
@@ -6,7 +6,7 @@ import (
|
||||
"strings"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
// New will parse the URL and return the correct MQ implementation.
|
||||
|
||||
@@ -11,8 +11,8 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/garyburd/redigo/redis"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
type RedisMQ struct {
|
||||
|
||||
@@ -13,9 +13,9 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func getTask(ctx context.Context, url string) (*models.Task, error) {
|
||||
|
||||
@@ -15,9 +15,9 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
func setLogBuffer() *bytes.Buffer {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
package common
|
||||
|
||||
import (
|
||||
"github.com/kumokit/functions/api/runner/common/stats"
|
||||
"github.com/treeder/functions/api/runner/common/stats"
|
||||
)
|
||||
|
||||
// An Environment is a long lived object that carries around 'configuration'
|
||||
|
||||
@@ -32,9 +32,9 @@ import (
|
||||
manifest "github.com/docker/distribution/manifest/schema1"
|
||||
"github.com/fsouza/go-dockerclient"
|
||||
"github.com/heroku/docker-registry-client/registry"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/kumokit/functions/api/runner/common/stats"
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/common/stats"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
)
|
||||
|
||||
const hubURL = "https://registry.hub.docker.com"
|
||||
|
||||
@@ -28,7 +28,7 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/fsouza/go-dockerclient"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
const (
|
||||
|
||||
@@ -23,8 +23,8 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
"github.com/vrischmann/envconfig"
|
||||
)
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
)
|
||||
|
||||
func New() drivers.Driver {
|
||||
|
||||
@@ -6,14 +6,14 @@ import (
|
||||
|
||||
"context"
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
type FuncLogger interface {
|
||||
Writer(context.Context, string, string, string, string) io.Writer
|
||||
}
|
||||
|
||||
// FuncLogger reads STDERR output from a container and outputs it in a parseable structured log format, see: https://github.com/kumokit/functions/issues/76
|
||||
// FuncLogger reads STDERR output from a container and outputs it in a parseable structured log format, see: https://github.com/treeder/functions/issues/76
|
||||
type DefaultFuncLogger struct {
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
type MetricLogger interface {
|
||||
|
||||
@@ -3,7 +3,7 @@ package protocol
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
// DefaultProtocol is the protocol used by cold-containers
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"errors"
|
||||
"io"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
var errInvalidProtocol = errors.New("Invalid Protocol")
|
||||
|
||||
@@ -10,8 +10,8 @@ import (
|
||||
"net/http/httputil"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
// HTTPProtocol converts stdin/stdout streams into HTTP/1.1 compliant
|
||||
|
||||
@@ -14,12 +14,12 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
driverscommon "github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/kumokit/functions/api/runner/drivers/docker"
|
||||
"github.com/kumokit/functions/api/runner/drivers/mock"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
driverscommon "github.com/treeder/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/drivers/docker"
|
||||
"github.com/treeder/functions/api/runner/drivers/mock"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
type Runner struct {
|
||||
|
||||
@@ -8,8 +8,8 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
func TestRunnerHello(t *testing.T) {
|
||||
|
||||
@@ -11,8 +11,8 @@ import (
|
||||
|
||||
"github.com/docker/docker/cli/config/configfile"
|
||||
docker "github.com/fsouza/go-dockerclient"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
)
|
||||
|
||||
var registries dockerRegistries
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
"io"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
)
|
||||
|
||||
type Config struct {
|
||||
|
||||
@@ -9,9 +9,9 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/kumokit/functions/api/runner/protocol"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/runner/drivers"
|
||||
"github.com/treeder/functions/api/runner/protocol"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/drivers"
|
||||
)
|
||||
|
||||
// hot functions - theory of operation
|
||||
|
||||
@@ -3,7 +3,7 @@ package server
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type AppListener interface {
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func (s *Server) handleAppCreate(c *gin.Context) {
|
||||
|
||||
@@ -5,9 +5,9 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func (s *Server) handleAppDelete(c *gin.Context) {
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/treeder/functions/api"
|
||||
)
|
||||
|
||||
func (s *Server) handleAppGet(c *gin.Context) {
|
||||
|
||||
@@ -5,7 +5,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
func (s *Server) handleAppList(c *gin.Context) {
|
||||
|
||||
@@ -9,10 +9,10 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
func setLogBuffer() *bytes.Buffer {
|
||||
|
||||
@@ -5,9 +5,9 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func (s *Server) handleAppUpdate(c *gin.Context) {
|
||||
|
||||
@@ -4,8 +4,8 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type ApiHandlerFunc func(w http.ResponseWriter, r *http.Request)
|
||||
|
||||
@@ -8,7 +8,7 @@ package routecache
|
||||
import (
|
||||
"container/list"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
// Cache holds an internal linkedlist for hotness management. It is not safe
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
// Middleware is the interface required for implementing functions middlewar
|
||||
|
||||
@@ -7,5 +7,5 @@ import (
|
||||
)
|
||||
|
||||
func handlePing(c *gin.Context) {
|
||||
c.JSON(http.StatusOK, gin.H{"hello": "world!", "goto": "https://github.com/kumokit/functions"})
|
||||
c.JSON(http.StatusOK, gin.H{"hello": "world!", "goto": "https://github.com/treeder/functions"})
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func (s *Server) handleRouteCreate(c *gin.Context) {
|
||||
|
||||
@@ -6,7 +6,7 @@ import (
|
||||
"path"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/treeder/functions/api"
|
||||
)
|
||||
|
||||
func (s *Server) handleRouteDelete(c *gin.Context) {
|
||||
|
||||
@@ -6,7 +6,7 @@ import (
|
||||
"path"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/treeder/functions/api"
|
||||
)
|
||||
|
||||
func (s *Server) handleRouteGet(c *gin.Context) {
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
func (s *Server) handleRouteList(c *gin.Context) {
|
||||
|
||||
@@ -6,9 +6,9 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
)
|
||||
|
||||
func TestRouteCreate(t *testing.T) {
|
||||
|
||||
@@ -6,9 +6,9 @@ import (
|
||||
"path"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
)
|
||||
|
||||
func (s *Server) handleRouteUpdate(c *gin.Context) {
|
||||
|
||||
@@ -14,11 +14,11 @@ import (
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/runner"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/runner"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
uuid "github.com/satori/go.uuid"
|
||||
)
|
||||
|
||||
|
||||
@@ -9,12 +9,12 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/server/internal/routecache"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/server/internal/routecache"
|
||||
)
|
||||
|
||||
func testRouterAsync(ds models.Datastore, mq models.MessageQueue, rnr *runner.Runner, tasks chan task.Request, enqueue models.Enqueue) *gin.Engine {
|
||||
|
||||
@@ -2,7 +2,7 @@ package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type RunnerListener interface {
|
||||
|
||||
@@ -7,11 +7,11 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
)
|
||||
|
||||
func testRunner(t *testing.T) (*runner.Runner, context.CancelFunc) {
|
||||
|
||||
@@ -14,14 +14,14 @@ import (
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/ccirello/supervisor"
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api"
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/server/internal/routecache"
|
||||
"github.com/kumokit/functions/api/runner/common"
|
||||
"github.com/treeder/functions/api"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/server/internal/routecache"
|
||||
"github.com/treeder/functions/api/runner/common"
|
||||
"github.com/spf13/viper"
|
||||
)
|
||||
|
||||
|
||||
@@ -12,12 +12,12 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/datastore"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/mqs"
|
||||
"github.com/kumokit/functions/api/runner"
|
||||
"github.com/kumokit/functions/api/runner/task"
|
||||
"github.com/kumokit/functions/api/server/internal/routecache"
|
||||
"github.com/treeder/functions/api/datastore"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/mqs"
|
||||
"github.com/treeder/functions/api/runner"
|
||||
"github.com/treeder/functions/api/runner/task"
|
||||
"github.com/treeder/functions/api/server/internal/routecache"
|
||||
)
|
||||
|
||||
var tmpBolt = "/tmp/func_test_bolt.db"
|
||||
|
||||
@@ -5,7 +5,7 @@ package server
|
||||
import (
|
||||
"sync"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
// call is an in-flight or completed do call
|
||||
|
||||
@@ -4,7 +4,7 @@ import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
"github.com/kumokit/functions/api/version"
|
||||
"github.com/treeder/functions/api/version"
|
||||
)
|
||||
|
||||
func handleVersion(c *gin.Context) {
|
||||
|
||||
@@ -21,7 +21,7 @@ function quick() {
|
||||
}
|
||||
|
||||
function build () {
|
||||
docker run --rm -v ${pwd}:/go/src/github.com/kumokit/functions -w /go/src/github.com/kumokit/functions iron/go:dev go build -o functions-alpine
|
||||
docker run --rm -v ${pwd}:/go/src/github.com/treeder/functions -w /go/src/github.com/treeder/functions iron/go:dev go build -o functions-alpine
|
||||
docker build -t iron/functions:latest .
|
||||
}
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@ machine:
|
||||
GOPATH: $HOME/go
|
||||
GOROOT: $HOME/golang/go
|
||||
PATH: $GOROOT/bin:$GOPATH/bin:/$PATH
|
||||
GH_IRON: $GOPATH/src/github.com/kumokit
|
||||
GO_PROJECT: ../go/src/github.com/kumokit/$CIRCLE_PROJECT_REPONAME
|
||||
GH_IRON: $GOPATH/src/github.com/treeder
|
||||
GO_PROJECT: ../go/src/github.com/treeder/$CIRCLE_PROJECT_REPONAME
|
||||
services:
|
||||
- docker
|
||||
|
||||
@@ -39,7 +39,7 @@ test:
|
||||
deployment:
|
||||
release:
|
||||
branch: master
|
||||
owner: kumokit
|
||||
owner: treeder
|
||||
commands:
|
||||
- git config --global user.email "circleci@iron.io"
|
||||
- git config --global user.name "CircleCI"
|
||||
|
||||
@@ -6,7 +6,7 @@ require 'openssl'
|
||||
|
||||
require_relative 'utils.rb'
|
||||
|
||||
swaggerUrl = "https://raw.githubusercontent.com/kumokit/functions/master/docs/swagger.yml"
|
||||
swaggerUrl = "https://raw.githubusercontent.com/treeder/functions/master/docs/swagger.yml"
|
||||
spec = YAML.load(open(swaggerUrl))
|
||||
version = spec['info']['version']
|
||||
puts "VERSION: #{version}"
|
||||
@@ -23,7 +23,7 @@ def clone(lang)
|
||||
Dir.chdir 'tmp'
|
||||
ldir = "functions_#{lang}"
|
||||
if !Dir.exist? ldir
|
||||
cmd = "git clone https://github.com/kumokit/#{ldir}"
|
||||
cmd = "git clone https://github.com/treeder/#{ldir}"
|
||||
stream_exec(cmd)
|
||||
else
|
||||
Dir.chdir ldir
|
||||
@@ -69,7 +69,7 @@ languages.each do |l|
|
||||
options['gemName'] = gem_name
|
||||
options['moduleName'] = "IronFunctions"
|
||||
options['gemVersion'] = version
|
||||
options['gemHomepage'] = "https://github.com/kumokit/#{fruby}"
|
||||
options['gemHomepage'] = "https://github.com/treeder/#{fruby}"
|
||||
options['gemSummary'] = 'Ruby gem for IronFunctions'
|
||||
options['gemDescription'] = 'Ruby gem for IronFunctions.'
|
||||
options['gemAuthorEmail'] = 'travis@iron.io'
|
||||
@@ -88,7 +88,7 @@ languages.each do |l|
|
||||
puts "SKIPPING GO, it's manual for now."
|
||||
# This is using https://goswagger.io/ instead
|
||||
# TODO: run this build command instead: this works if run manually
|
||||
# dep ensure && docker run --rm -it -v $HOME/dev/go:/go -w /go/src/github.com/kumokit/functions_go quay.io/goswagger/swagger generate client -f https://raw.githubusercontent.com/kumokit/functions/master/docs/swagger.yml -A functions
|
||||
# dep ensure && docker run --rm -it -v $HOME/dev/go:/go -w /go/src/github.com/treeder/functions_go quay.io/goswagger/swagger generate client -f https://raw.githubusercontent.com/treeder/functions/master/docs/swagger.yml -A functions
|
||||
else
|
||||
gen = JSON.parse(HTTP.post("https://generator.swagger.io/api/gen/clients/#{l}",
|
||||
json: {
|
||||
|
||||
@@ -5,8 +5,6 @@ import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
|
||||
"github.com/go-openapi/loads/fmts"
|
||||
"github.com/go-openapi/spec"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"net/http"
|
||||
@@ -15,6 +13,9 @@ import (
|
||||
"os/user"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"github.com/go-openapi/loads/fmts"
|
||||
"github.com/go-openapi/spec"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -85,7 +86,7 @@ func main() {
|
||||
options["gemName"] = "iron_functions"
|
||||
options["moduleName"] = "IronFunctions"
|
||||
options["gemVersion"] = version
|
||||
options["gemHomepage"] = "https://github.com/kumokit/functions_ruby"
|
||||
options["gemHomepage"] = "https://github.com/treeder/functions_ruby"
|
||||
options["gemSummary"] = "Ruby gem for IronFunctions"
|
||||
options["gemDescription"] = "Ruby gem for IronFunctions."
|
||||
options["gemAuthorEmail"] = "travis@iron.io"
|
||||
@@ -134,7 +135,7 @@ func main() {
|
||||
branch := fmt.Sprintf("update-version-%s", version)
|
||||
|
||||
log.Printf("Cloning previous `%s` source...\n", language)
|
||||
exec.Command("git", "clone", fmt.Sprintf("git@github.com:kumokit/functions_%s.git", short), srcDir).Run()
|
||||
exec.Command("git", "clone", fmt.Sprintf("git@github.com:treeder/functions_%s.git", short), srcDir).Run()
|
||||
|
||||
// Skip language specific files
|
||||
for _, skip := range skipFiles {
|
||||
|
||||
2
doc.go
2
doc.go
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
IronFunctions daemon
|
||||
|
||||
Refer to detailed documentation at https://github.com/kumokit/functions/tree/master/docs
|
||||
Refer to detailed documentation at https://github.com/treeder/functions/tree/master/docs
|
||||
|
||||
Environment Variables:
|
||||
DB_URL
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
If you are a developer using IronFunctions through the API, this section is for you.
|
||||
|
||||
* [Quickstart](https://github.com/kumokit/functions#quickstart)
|
||||
* [Quickstart](https://github.com/treeder/functions#quickstart)
|
||||
* [Definitions](definitions.md)
|
||||
* [fn (CLI Tool)](/fn/README.md)
|
||||
* [Writing functions](writing.md)
|
||||
@@ -14,7 +14,7 @@ If you are a developer using IronFunctions through the API, this section is for
|
||||
* [Function file (func.yaml)](function-file.md)
|
||||
* [Packaging functions](packaging.md)
|
||||
* [Open Function Format](function-format.md)
|
||||
* [API Reference](http://petstore.swagger.io/?url=https://raw.githubusercontent.com/kumokit/functions/master/docs/swagger.yml)
|
||||
* [API Reference](http://petstore.swagger.io/?url=https://raw.githubusercontent.com/treeder/functions/master/docs/swagger.yml)
|
||||
* [Hot functions](hot-functions.md)
|
||||
|
||||
## For Operators
|
||||
|
||||
@@ -19,7 +19,7 @@ input/output.
|
||||
|
||||
## Implementing a hot function
|
||||
|
||||
In the [examples directory](https://github.com/kumokit/functions/blob/master/examples/hotfunctions/http/func.go), there is one simple implementation of a hot function
|
||||
In the [examples directory](https://github.com/treeder/functions/blob/master/examples/hotfunctions/http/func.go), there is one simple implementation of a hot function
|
||||
which we are going to get in the details here.
|
||||
|
||||
The basic cycle comprises three steps: read standard input up to a previosly
|
||||
|
||||
@@ -25,7 +25,7 @@ such assumptions, please rewrite it.
|
||||
* ImageMagick version [6.9.3][magickv] and nodejs [wrapper 6.9.3][magickwrapperv]
|
||||
* aws-sdk version [2.2.12][awsnodev]
|
||||
|
||||
[iron/node]: https://github.com/kumokit/dockers/blob/master/node/Dockerfile
|
||||
[iron/node]: https://github.com/treeder/dockers/blob/master/node/Dockerfile
|
||||
[magickv]: https://pkgs.alpinelinux.org/package/main/x86_64/imagemagick
|
||||
[magickwrapperv]: https://www.npmjs.com/package/imagemagick
|
||||
[awsnodev]: https://aws.amazon.com/sdk-for-node-js/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
This guide will walk you through creating and testing a simple Lambda function.
|
||||
|
||||
We need the the `fn` tool for the rest of this guide. You can install it
|
||||
by following [these instructions](https://github.com/kumokit/function/fn).
|
||||
by following [these instructions](https://github.com/treeder/function/fn).
|
||||
|
||||
*For this getting started we are assuming you already have working lambda function code available, if not head to the [import instructions] (import.md) and skip the next section.*
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Import existing AWS Lambda functions
|
||||
====================================
|
||||
|
||||
The [fn](https://github.com/kumokit/functions/fn/) tool includes a set of
|
||||
The [fn](https://github.com/treeder/functions/fn/) tool includes a set of
|
||||
commands to act on Lambda functions. Most of these are described in
|
||||
[getting-started](./getting-started.md). One more subcommand is `aws-import`.
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ Listeners are the main way to extend IronFunctions.
|
||||
|
||||
The following listener types are supported:
|
||||
|
||||
* App Listeners - [GoDoc](https://godoc.org/github.com/kumokit/functions/api/server#AppListener)
|
||||
* Runner Listeners - [GoDoc](https://godoc.org/github.com/kumokit/functions/api/server#RunnerListener)
|
||||
* App Listeners - [GoDoc](https://godoc.org/github.com/treeder/functions/api/server#AppListener)
|
||||
* Runner Listeners - [GoDoc](https://godoc.org/github.com/treeder/functions/api/server#RunnerListener)
|
||||
|
||||
### Creating a Listener
|
||||
|
||||
@@ -29,8 +29,8 @@ package main
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/kumokit/functions/api/server"
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/treeder/functions/api/server"
|
||||
"github.com/treeder/functions/api/models"
|
||||
)
|
||||
|
||||
type myCustomListener struct{}
|
||||
|
||||
@@ -21,5 +21,5 @@ TODO: List all metrics we emit to logs.
|
||||
|
||||
## Statsd
|
||||
|
||||
The [Logspout Statsd Adapter](https://github.com/kumokit/logspout-statsd) adapter can parse the log metrics and forward
|
||||
The [Logspout Statsd Adapter](https://github.com/treeder/logspout-statsd) adapter can parse the log metrics and forward
|
||||
them to any statsd server.
|
||||
|
||||
@@ -15,7 +15,7 @@ Here's a rough diagram of what a production deployment looks like:
|
||||
|
||||
Any load balancer will work, put every instance of IronFunctions that you run behind the load balancer.
|
||||
|
||||
**Note**: We will work on a smart load balancer that can direct traffic in a smarter way. See [#151](https://github.com/kumokit/functions/issues/151).
|
||||
**Note**: We will work on a smart load balancer that can direct traffic in a smarter way. See [#151](https://github.com/treeder/functions/issues/151).
|
||||
|
||||
## Database
|
||||
|
||||
@@ -33,7 +33,7 @@ The message queue is pluggable and we currently support a few options that can b
|
||||
## Logging, Metrics and Monitoring
|
||||
|
||||
Logging is a particularly important part of IronFunctions. It not only emits logs, but metrics are also emitted to the logs. Ops teams can then decide how they want
|
||||
to use the logs and metrics without us prescribing a particular technology. For instance, you can [logspout-statsd](https://github.com/kumokit/logspout-statsd) to capture metrics
|
||||
to use the logs and metrics without us prescribing a particular technology. For instance, you can [logspout-statsd](https://github.com/treeder/logspout-statsd) to capture metrics
|
||||
from the logs and forward them to statsd.
|
||||
|
||||
[More about Metrics](metrics.md)
|
||||
|
||||
@@ -6,4 +6,4 @@
|
||||
docker run --rm -it --link functions:api -p 4000:4000 -e "API_URL=http://api:8080" iron/functions-ui
|
||||
```
|
||||
|
||||
For more information, see: https://github.com/kumokit/functions-ui
|
||||
For more information, see: https://github.com/treeder/functions-ui
|
||||
|
||||
@@ -532,7 +532,7 @@ definitions:
|
||||
payload:
|
||||
type: string
|
||||
# 256k
|
||||
# maxLength breaks ruby generator too: https://github.com/kumokit/worker_ruby/blob/0aa9236ce5060af3f15758937712973f80dd54fe/lib/iron_titan/models/task.rb#L272
|
||||
# maxLength breaks ruby generator too: https://github.com/treeder/worker_ruby/blob/0aa9236ce5060af3f15758937712973f80dd54fe/lib/iron_titan/models/task.rb#L272
|
||||
# maxLength: 268435456
|
||||
description: Payload for the task. This is what you pass into each task to make it do something.
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@ This will give you the basic overview of writing base level functions. You can a
|
||||
abstractions that make it easier such as [lambda](lambda/README.md).
|
||||
|
||||
Also, for complete examples in various languages, see the [examples directory](/examples).
|
||||
We have language libraries for [Go](https://github.com/iron-io/functions_go), [Javascript](https://github.com/kumokit/functions_js) and
|
||||
[Ruby](https://github.com/kumokit/functions_ruby).
|
||||
We have language libraries for [Go](https://github.com/iron-io/functions_go), [Javascript](https://github.com/treeder/functions_js) and
|
||||
[Ruby](https://github.com/treeder/functions_ruby).
|
||||
|
||||
## Code
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ package database
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/kumokit/functions/examples/blog/models"
|
||||
"github.com/treeder/functions/examples/blog/models"
|
||||
"gopkg.in/mgo.v2"
|
||||
"gopkg.in/mgo.v2/bson"
|
||||
)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package database
|
||||
|
||||
import (
|
||||
"github.com/kumokit/functions/examples/blog/models"
|
||||
"github.com/treeder/functions/examples/blog/models"
|
||||
"gopkg.in/mgo.v2"
|
||||
"gopkg.in/mgo.v2/bson"
|
||||
)
|
||||
|
||||
@@ -5,9 +5,9 @@ import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"github.com/kumokit/functions/examples/blog/database"
|
||||
"github.com/kumokit/functions/examples/blog/models"
|
||||
"github.com/kumokit/functions/examples/blog/routes"
|
||||
"github.com/treeder/functions/examples/blog/database"
|
||||
"github.com/treeder/functions/examples/blog/models"
|
||||
"github.com/treeder/functions/examples/blog/routes"
|
||||
)
|
||||
|
||||
var noAuth = map[string]interface{}{}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package: github.com/kumokit/functions/examples/blog
|
||||
package: github.com/treeder/functions/examples/blog
|
||||
import:
|
||||
- package: github.com/dgrijalva/jwt-go
|
||||
version: ^3.0.0
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"github.com/kumokit/functions/examples/blog/database"
|
||||
"github.com/kumokit/functions/examples/blog/models"
|
||||
"github.com/treeder/functions/examples/blog/database"
|
||||
"github.com/treeder/functions/examples/blog/models"
|
||||
)
|
||||
|
||||
func HandlePostCreate(db *database.Database, auth map[string]interface{}) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package route
|
||||
|
||||
import (
|
||||
"github.com/kumokit/functions/examples/blog/database"
|
||||
"github.com/treeder/functions/examples/blog/database"
|
||||
"gopkg.in/mgo.v2/bson"
|
||||
)
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ package route
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/kumokit/functions/examples/blog/database"
|
||||
"github.com/treeder/functions/examples/blog/database"
|
||||
)
|
||||
|
||||
func HandlePostRead(db *database.Database, auth map[string]interface{}) {
|
||||
|
||||
@@ -8,8 +8,8 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/dgrijalva/jwt-go"
|
||||
"github.com/kumokit/functions/examples/blog/database"
|
||||
"github.com/kumokit/functions/examples/blog/models"
|
||||
"github.com/treeder/functions/examples/blog/database"
|
||||
"github.com/treeder/functions/examples/blog/models"
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
)
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ Simple example of IronFunctions load balancer using Caddy Server
|
||||
|
||||
Start the IronFunctions instances
|
||||
|
||||
Ref: https://github.com/kumokit/functions/blob/master/README.md#start-the-ironfunctions-api
|
||||
Ref: https://github.com/treeder/functions/blob/master/README.md#start-the-ironfunctions-api
|
||||
|
||||
|
||||
## Configure environment variable
|
||||
@@ -38,7 +38,7 @@ docker run --rm \
|
||||
|
||||
Follow the Quick-Start steps replacing the example hosts by the Caddy host (localhost:9000)
|
||||
|
||||
https://github.com/kumokit/functions/blob/master/README.md#quick-start
|
||||
https://github.com/treeder/functions/blob/master/README.md#quick-start
|
||||
|
||||
|
||||
## Docker Compose example
|
||||
|
||||
@@ -6,8 +6,8 @@ import (
|
||||
"html"
|
||||
"net/http"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/server"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/server"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -9,8 +9,8 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/kumokit/functions/api/models"
|
||||
"github.com/kumokit/functions/api/server"
|
||||
"github.com/treeder/functions/api/models"
|
||||
"github.com/treeder/functions/api/server"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package: github.com/kumokit/functions/examples/postgres
|
||||
package: github.com/treeder/functions/examples/postgres
|
||||
import:
|
||||
- package: github.com/lib/pq
|
||||
- package: github.com/pkg/errors
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package: github.com/kumokit/functions/examples/redis
|
||||
package: github.com/treeder/functions/examples/redis
|
||||
import:
|
||||
- package: github.com/garyburd/redigo
|
||||
version: ^1.0.0
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package: github.com/kumokit/functions/examples/twitter
|
||||
package: github.com/treeder/functions/examples/twitter
|
||||
import:
|
||||
- package: github.com/dghubble/go-twitter
|
||||
subpackages:
|
||||
|
||||
@@ -12,7 +12,7 @@ import (
|
||||
"strings"
|
||||
"text/template"
|
||||
|
||||
"github.com/kumokit/functions/fn/langs"
|
||||
"github.com/treeder/functions/fn/langs"
|
||||
)
|
||||
|
||||
func verbwriter(verbose bool) io.Writer {
|
||||
|
||||
2
fn/glide.lock
generated
2
fn/glide.lock
generated
@@ -124,7 +124,7 @@ imports:
|
||||
- api
|
||||
- config
|
||||
- worker
|
||||
- name: github.com/kumokit/lambda
|
||||
- name: github.com/treeder/lambda
|
||||
version: 4a046af3249dd5933a8d328f965e9717c97fef24
|
||||
subpackages:
|
||||
- lambda
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package: github.com/kumokit/functions/fn
|
||||
package: github.com/treeder/functions/fn
|
||||
import:
|
||||
- package: github.com/aws/aws-sdk-go
|
||||
subpackages:
|
||||
@@ -15,7 +15,7 @@ import:
|
||||
- storage
|
||||
- package: github.com/iron-io/functions_go
|
||||
version: f38f2174656467ec3ed404b7294e9ee172573e43
|
||||
- package: github.com/kumokit/lambda
|
||||
- package: github.com/treeder/lambda
|
||||
subpackages:
|
||||
- lambda
|
||||
- package: github.com/urfave/cli
|
||||
|
||||
@@ -17,7 +17,7 @@ import (
|
||||
|
||||
"strings"
|
||||
|
||||
"github.com/kumokit/functions/fn/langs"
|
||||
"github.com/treeder/functions/fn/langs"
|
||||
"github.com/urfave/cli"
|
||||
)
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
url='https://github.com/kumokit/functions/releases/download'
|
||||
url='https://github.com/treeder/functions/releases/download'
|
||||
|
||||
# perform some very rudimentary platform detection
|
||||
case "$(uname)" in
|
||||
@@ -84,7 +84,7 @@ cat >&2 <<'EOF'
|
||||
installer script (yet - PRs welcome! [fn/install]).
|
||||
Please visit the following URL for more detailed installation instructions:
|
||||
|
||||
https://github.com/kumokit/functions
|
||||
https://github.com/treeder/functions
|
||||
|
||||
EOF
|
||||
exit 1
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user