mirror of
https://github.com/openfaas/faas.git
synced 2025-06-08 16:26:47 +00:00
Migrate from alexellis org to openfaas
Note, not all `alexellis/github` references should be changed, there are a number of repos which are not part of the openfaas org, this commit excludes those. Signed-off-by: John McCabe <john@johnmccabe.net>
This commit is contained in:
parent
eed9641254
commit
89878f0c8a
4
.github/PULL_REQUEST_TEMPLATE.md
vendored
4
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -6,7 +6,7 @@
|
|||||||
## Motivation and Context
|
## Motivation and Context
|
||||||
<!--- Why is this change required? What problem does it solve? -->
|
<!--- Why is this change required? What problem does it solve? -->
|
||||||
<!--- If it fixes an open issue, please link to the issue here. -->
|
<!--- If it fixes an open issue, please link to the issue here. -->
|
||||||
- [ ] I have raised an issue to propose this change ([required](https://github.com/alexellis/faas/blob/master/CONTRIBUTING.md))
|
- [ ] I have raised an issue to propose this change ([required](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md))
|
||||||
|
|
||||||
|
|
||||||
## How Has This Been Tested?
|
## How Has This Been Tested?
|
||||||
@ -26,7 +26,7 @@
|
|||||||
- [ ] My code follows the code style of this project.
|
- [ ] My code follows the code style of this project.
|
||||||
- [ ] My change requires a change to the documentation.
|
- [ ] My change requires a change to the documentation.
|
||||||
- [ ] I have updated the documentation accordingly.
|
- [ ] I have updated the documentation accordingly.
|
||||||
- [ ] I've read the [CONTRIBUTION](https://github.com/alexellis/faas/blob/master/CONTRIBUTING.md) guide
|
- [ ] I've read the [CONTRIBUTION](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md) guide
|
||||||
- [ ] I have signed-off my commits with `git commit -s`
|
- [ ] I have signed-off my commits with `git commit -s`
|
||||||
- [ ] I have added tests to cover my changes.
|
- [ ] I have added tests to cover my changes.
|
||||||
- [ ] All new and existing tests passed.
|
- [ ] All new and existing tests passed.
|
||||||
|
@ -20,7 +20,7 @@ We have a number of areas where we can accept contributions:
|
|||||||
|
|
||||||
**I've found a typo**
|
**I've found a typo**
|
||||||
|
|
||||||
* A Pull Request is not necessary. Raise an [Issue](https://github.com/alexellis/faas/issues) and we'll fix it as soon as we can.
|
* A Pull Request is not necessary. Raise an [Issue](https://github.com/openfaas/faas/issues) and we'll fix it as soon as we can.
|
||||||
|
|
||||||
**I have a [great] idea**
|
**I have a [great] idea**
|
||||||
|
|
||||||
@ -76,11 +76,11 @@ This project is written in Golang but many of the community contributions so far
|
|||||||
|
|
||||||
#### Community file
|
#### Community file
|
||||||
|
|
||||||
The [community.md](https://github.com/alexellis/faas/blob/master/community.md) file highlights blogs, talks and code repos with example FaaS functions and usages. Please send a Pull Request if you are doing something cool with FaaS.
|
The [community.md](https://github.com/openfaas/faas/blob/master/community.md) file highlights blogs, talks and code repos with example FaaS functions and usages. Please send a Pull Request if you are doing something cool with FaaS.
|
||||||
|
|
||||||
#### Roadmap
|
#### Roadmap
|
||||||
|
|
||||||
Checkout the [roadmap](https://github.com/alexellis/faas/blob/master/ROADMAP.md) and [open issues](https://github.com/alexellis/faas/issues).
|
Checkout the [roadmap](https://github.com/openfaas/faas/blob/master/ROADMAP.md) and [open issues](https://github.com/openfaas/faas/issues).
|
||||||
|
|
||||||
#### Slack
|
#### Slack
|
||||||
|
|
||||||
|
10
DEV.md
10
DEV.md
@ -6,19 +6,19 @@ Before you start development, you may want to take FaaS for a test drive which s
|
|||||||
|
|
||||||
> You can test-drive FaaS with a set of sample functions as defined in docker-compose.yml on play-with-docker.com for free, or on your own laptop.
|
> You can test-drive FaaS with a set of sample functions as defined in docker-compose.yml on play-with-docker.com for free, or on your own laptop.
|
||||||
|
|
||||||
* [Begin the TestDrive instructions](https://github.com/alexellis/faas/blob/master/TestDrive.md)
|
* [Begin the TestDrive instructions](https://github.com/openfaas/faas/blob/master/TestDrive.md)
|
||||||
|
|
||||||
### Working on the API Gateway or Watchdog
|
### Working on the API Gateway or Watchdog
|
||||||
|
|
||||||
To work on either of the FaaS Golang components checkout the "./build.sh" scripts and acompanying Dockerfiles.
|
To work on either of the FaaS Golang components checkout the "./build.sh" scripts and acompanying Dockerfiles.
|
||||||
|
|
||||||
* [Roadmap and Contributing](https://github.com/alexellis/faas/blob/master/ROADMAP.md)
|
* [Roadmap and Contributing](https://github.com/openfaas/faas/blob/master/ROADMAP.md)
|
||||||
|
|
||||||
### Creating a function
|
### Creating a function
|
||||||
|
|
||||||
Functions run as Docker containers with the Watchdog component embedded to handle communication with the API Gateway.
|
Functions run as Docker containers with the Watchdog component embedded to handle communication with the API Gateway.
|
||||||
|
|
||||||
You can find the [reference documentation for the Watchdog here](https://github.com/alexellis/faas/tree/master/watchdog).
|
You can find the [reference documentation for the Watchdog here](https://github.com/openfaas/faas/tree/master/watchdog).
|
||||||
|
|
||||||
|
|
||||||
**Markdown Parser**
|
**Markdown Parser**
|
||||||
@ -35,7 +35,7 @@ RUN go get github.com/microcosm-cc/bluemonday && \
|
|||||||
|
|
||||||
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
|
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app .
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.3-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.3-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess="/go/src/app/app"
|
ENV fprocess="/go/src/app/app"
|
||||||
@ -63,7 +63,7 @@ Update the Docker stack with this:
|
|||||||
```
|
```
|
||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.3-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.3-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess="wc"
|
ENV fprocess="wc"
|
||||||
|
34
README.md
34
README.md
@ -13,8 +13,8 @@ OpenFaaS (Functions as a Service) is a framework for building serverless functio
|
|||||||
|
|
||||||
* Ease of use through UI portal and *one-click* install
|
* Ease of use through UI portal and *one-click* install
|
||||||
* Write functions in any language for Linux or Windows and package in Docker/OCI image format
|
* Write functions in any language for Linux or Windows and package in Docker/OCI image format
|
||||||
* Portable - runs on existing hardware or public/private cloud - [Kubernetes](https://github.com/alexellis/faas-netes) and Docker Swarm native
|
* Portable - runs on existing hardware or public/private cloud - [Kubernetes](https://github.com/openfaas/faas-netes) and Docker Swarm native
|
||||||
* [CLI](http://github.com/alexellis/faas-cli) available with YAML format for templating and defining functions
|
* [CLI](http://github.com/openfaas/faas-cli) available with YAML format for templating and defining functions
|
||||||
* Auto-scales as demand increases
|
* Auto-scales as demand increases
|
||||||
|
|
||||||
## Governance
|
## Governance
|
||||||
@ -36,11 +36,11 @@ OpenFaaS is an independent project created by [Alex Ellis](https://www.alexellis
|
|||||||
* Your API Gateway will scale functions according to demand by altering the service replica count in the Docker Swarm or Kubernetes API.
|
* Your API Gateway will scale functions according to demand by altering the service replica count in the Docker Swarm or Kubernetes API.
|
||||||
* A UI is baked in allowing you to invoke functions in your browser and create new ones as needed.
|
* A UI is baked in allowing you to invoke functions in your browser and create new ones as needed.
|
||||||
|
|
||||||
> The API Gateway is a RESTful micro-service and you can view the [Swagger docs here](https://github.com/alexellis/faas/tree/master/api-docs).
|
> The API Gateway is a RESTful micro-service and you can view the [Swagger docs here](https://github.com/openfaas/faas/tree/master/api-docs).
|
||||||
|
|
||||||
### CLI
|
### CLI
|
||||||
|
|
||||||
Any container or process in a Docker container can be a serverless function in FaaS. Using the [FaaS CLI](http://github.com/alexellis/faas-cli) you can deploy your functions or quickly create new functions from templates such as Node.js or Python.
|
Any container or process in a Docker container can be a serverless function in FaaS. Using the [FaaS CLI](http://github.com/openfaas/faas-cli) you can deploy your functions or quickly create new functions from templates such as Node.js or Python.
|
||||||
|
|
||||||
> The CLI is effectively a RESTful client for the API Gateway.
|
> The CLI is effectively a RESTful client for the API Gateway.
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ module.exports = (callback, context) => {
|
|||||||
```
|
```
|
||||||
*handler.js*
|
*handler.js*
|
||||||
|
|
||||||
Other [Sample functions](https://github.com/alexellis/faas/tree/master/sample-functions) are available in the Github repository in a range of programming languages.
|
Other [Sample functions](https://github.com/openfaas/faas/tree/master/sample-functions) are available in the Github repository in a range of programming languages.
|
||||||
|
|
||||||
## Get started with OpenFaaS
|
## Get started with OpenFaaS
|
||||||
|
|
||||||
@ -80,23 +80,23 @@ Other [Sample functions](https://github.com/alexellis/faas/tree/master/sample-fu
|
|||||||
|
|
||||||
**Docker Swarm**
|
**Docker Swarm**
|
||||||
|
|
||||||
The deployment guide for Docker Swarm contains a simple one-line command to get you up and running in around 60 seconds. It also includes a set of [sample functions](https://github.com/alexellis/faas/tree/master/sample-functions) which you can use with the TestDrive instructions below.
|
The deployment guide for Docker Swarm contains a simple one-line command to get you up and running in around 60 seconds. It also includes a set of [sample functions](https://github.com/openfaas/faas/tree/master/sample-functions) which you can use with the TestDrive instructions below.
|
||||||
|
|
||||||
[Deployment guide for Docker Swarm](https://github.com/openfaas/faas/blob/master/guide/deployment_swarm.md)
|
[Deployment guide for Docker Swarm](https://github.com/openfaas/faas/blob/master/guide/deployment_swarm.md)
|
||||||
|
|
||||||
**Kubernetes**
|
**Kubernetes**
|
||||||
|
|
||||||
OpenFaaS is Kubernetes-native - you can follow the [deployment guide here](https://github.com/alexellis/faas/blob/master/guide/deployment_k8s.md).
|
OpenFaaS is Kubernetes-native - you can follow the [deployment guide here](https://github.com/openfaas/faas/blob/master/guide/deployment_k8s.md).
|
||||||
|
|
||||||
**Docker Playground**
|
**Docker Playground**
|
||||||
|
|
||||||
You can quickly start OpenFaaS on Docker Swarm online using the community-run Docker playground: play-with-docker.com (PWD) by clicking the button below:
|
You can quickly start OpenFaaS on Docker Swarm online using the community-run Docker playground: play-with-docker.com (PWD) by clicking the button below:
|
||||||
|
|
||||||
[](http://play-with-docker.com?stack=https://raw.githubusercontent.com/alexellis/faas/master/docker-compose.yml&stack_name=func)
|
[](http://play-with-docker.com?stack=https://raw.githubusercontent.com/openfaas/faas/master/docker-compose.yml&stack_name=func)
|
||||||
|
|
||||||
#### Begin the TestDrive
|
#### Begin the TestDrive
|
||||||
|
|
||||||
* [Begin the TestDrive with Docker Swarm](https://github.com/alexellis/faas/blob/master/TestDrive.md)
|
* [Begin the TestDrive with Docker Swarm](https://github.com/openfaas/faas/blob/master/TestDrive.md)
|
||||||
|
|
||||||
Here is a screenshot of the API gateway portal - designed for ease of use.
|
Here is a screenshot of the API gateway portal - designed for ease of use.
|
||||||
|
|
||||||
@ -130,7 +130,7 @@ This is my original blog post on FaaS from January: [Functions as a Service blog
|
|||||||
|
|
||||||
Have you written a blog about OpenFaaS? Send a Pull Request to the community page below.
|
Have you written a blog about OpenFaaS? Send a Pull Request to the community page below.
|
||||||
|
|
||||||
* [Read blogs/articles and find events about OpenFaaS](https://github.com/alexellis/faas/blob/master/community.md)
|
* [Read blogs/articles and find events about OpenFaaS](https://github.com/openfaas/faas/blob/master/community.md)
|
||||||
|
|
||||||
If you'd like to join OpenFaaS community Slack channel to chat with contributors or get some help - then send a Tweet to [@alexellisuk](https://twitter.com/alexellisuk/) or email alex@openfaas.com.
|
If you'd like to join OpenFaaS community Slack channel to chat with contributors or get some help - then send a Tweet to [@alexellisuk](https://twitter.com/alexellisuk/) or email alex@openfaas.com.
|
||||||
|
|
||||||
@ -138,21 +138,21 @@ If you'd like to join OpenFaaS community Slack channel to chat with contributors
|
|||||||
|
|
||||||
OpenFaaS is written in Golang and is MIT licensed - contributions are welcomed whether that means providing feedback, testing existing and new feature or hacking on the source.
|
OpenFaaS is written in Golang and is MIT licensed - contributions are welcomed whether that means providing feedback, testing existing and new feature or hacking on the source.
|
||||||
|
|
||||||
To get started you can read the [roadmap](https://github.com/alexellis/faas/blob/master/ROADMAP.md) and [contribution guide](https://github.com/alexellis/faas/blob/master/CONTRIBUTING.md) or:
|
To get started you can read the [roadmap](https://github.com/openfaas/faas/blob/master/ROADMAP.md) and [contribution guide](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md) or:
|
||||||
|
|
||||||
* [Browse FaaS issues on Github](https://github.com/alexellis/faas/issues).
|
* [Browse FaaS issues on Github](https://github.com/openfaas/faas/issues).
|
||||||
* [Browse FaaS-CLI issues on Github](https://github.com/alexellis/faas-cli/issues).
|
* [Browse FaaS-CLI issues on Github](https://github.com/openfaas/faas-cli/issues).
|
||||||
|
|
||||||
Highlights:
|
Highlights:
|
||||||
|
|
||||||
* New: Kubernetes support via [FaaS-netes](https://github.com/alexellis/faas-netes) plugin
|
* New: Kubernetes support via [FaaS-netes](https://github.com/openfaas/faas-netes) plugin
|
||||||
* New: FaaS CLI and easy install via `curl` and `brew`
|
* New: FaaS CLI and easy install via `curl` and `brew`
|
||||||
* New: Windows function support
|
* New: Windows function support
|
||||||
* New: Asynchronous/long-running OpenFaaS functions via [NATS Streaming](https://nats.io/documentation/streaming/nats-streaming-intro/) - [Follow this guide](https://github.com/alexellis/faas/blob/master/guide/asynchronous.md)
|
* New: Asynchronous/long-running OpenFaaS functions via [NATS Streaming](https://nats.io/documentation/streaming/nats-streaming-intro/) - [Follow this guide](https://github.com/openfaas/faas/blob/master/guide/asynchronous.md)
|
||||||
|
|
||||||
### How do I become a contributor?
|
### How do I become a contributor?
|
||||||
|
|
||||||
Anyone is invited to contribute to the project in-line with the [contribution guide](https://github.com/alexellis/faas/blob/master/CONTRIBUTING.md) - you can also read the guide for ideas on how to get involved. We invite new contributors to join our Slack community. We would also ask you to propose any changes or contributions ahead of time, especially when there is no issue or proposal alredy tracking it.
|
Anyone is invited to contribute to the project in-line with the [contribution guide](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md) - you can also read the guide for ideas on how to get involved. We invite new contributors to join our Slack community. We would also ask you to propose any changes or contributions ahead of time, especially when there is no issue or proposal alredy tracking it.
|
||||||
|
|
||||||
### Other
|
### Other
|
||||||
|
|
||||||
@ -160,4 +160,4 @@ Example of a Grafana dashboard linked to OpenFaaS showing auto-scaling live in a
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
Sample dashboard JSON file available [here](https://github.com/alexellis/faas/blob/master/contrib/grafana.json)
|
Sample dashboard JSON file available [here](https://github.com/openfaas/faas/blob/master/contrib/grafana.json)
|
||||||
|
10
ROADMAP.md
10
ROADMAP.md
@ -8,9 +8,9 @@ For an overview of features in August 2017 read the following post:
|
|||||||
|
|
||||||
## GitHub repos:
|
## GitHub repos:
|
||||||
|
|
||||||
* https://github.com/alexellis/faas
|
* https://github.com/openfaas/faas
|
||||||
* https://github.com/alexellis/faas-netes
|
* https://github.com/openfaas/faas-netes
|
||||||
* https://github.com/alexellis/faas-cli
|
* https://github.com/openfaas/faas-cli
|
||||||
* https://github.com/openfaas/nats-queue-worker
|
* https://github.com/openfaas/nats-queue-worker
|
||||||
|
|
||||||
### The API Gateway
|
### The API Gateway
|
||||||
@ -61,7 +61,7 @@ This binary fwatchdog acts as a watchdog for your function. Features:
|
|||||||
|
|
||||||
## 2. Future items
|
## 2. Future items
|
||||||
|
|
||||||
Most items are detailed [via Github issues](https://github.com/alexellis/faas/issues).
|
Most items are detailed [via Github issues](https://github.com/openfaas/faas/issues).
|
||||||
|
|
||||||
Native support is available for Docker Swarm and Kubernetes using primitive API objects in each orchestration platform.
|
Native support is available for Docker Swarm and Kubernetes using primitive API objects in each orchestration platform.
|
||||||
|
|
||||||
@ -125,4 +125,4 @@ Internal research is also being done for the ACI / K8s-connector.
|
|||||||
|
|
||||||
### Contributing
|
### Contributing
|
||||||
|
|
||||||
Please see [CONTRIBUTING.md](https://github.com/alexellis/faas/blob/master/CONTRIBUTING.md).
|
Please see [CONTRIBUTING.md](https://github.com/openfaas/faas/blob/master/CONTRIBUTING.md).
|
||||||
|
@ -75,7 +75,7 @@ $ faas-cli --help
|
|||||||
|
|
||||||
### Invoke the sample functions with curl or Postman:
|
### Invoke the sample functions with curl or Postman:
|
||||||
|
|
||||||
Head over to the [Github and Star the project](https://github.com/alexellis/faas), or read on to see the input/output from the sample functions.
|
Head over to the [Github and Star the project](https://github.com/openfaas/faas), or read on to see the input/output from the sample functions.
|
||||||
|
|
||||||
### Working with the sample functions
|
### Working with the sample functions
|
||||||
|
|
||||||
@ -152,7 +152,7 @@ Guides:
|
|||||||
|
|
||||||
Read the developer guide:
|
Read the developer guide:
|
||||||
|
|
||||||
* [Packaging a function](https://github.com/alexellis/faas/blob/master/DEV.md)
|
* [Packaging a function](https://github.com/openfaas/faas/blob/master/DEV.md)
|
||||||
|
|
||||||
The original blog post also walks through creating a function:
|
The original blog post also walks through creating a function:
|
||||||
|
|
||||||
@ -162,7 +162,7 @@ The original blog post also walks through creating a function:
|
|||||||
|
|
||||||
**Option 1: via the FaaS CLI**
|
**Option 1: via the FaaS CLI**
|
||||||
|
|
||||||
The FaaS CLI can be used to build functions very quickly though the use of templates. See more details on the FaaS CLI [here](https://github.com/alexellis/faas-cli).
|
The FaaS CLI can be used to build functions very quickly though the use of templates. See more details on the FaaS CLI [here](https://github.com/openfaas/faas-cli).
|
||||||
|
|
||||||
**Option 2: via FaaS UI portal**
|
**Option 2: via FaaS UI portal**
|
||||||
|
|
||||||
|
@ -6,6 +6,6 @@ The `swagger.yml` file can be viewed and edited in the Swagger UI.
|
|||||||
|
|
||||||
* Now click File -> Import URL
|
* Now click File -> Import URL
|
||||||
|
|
||||||
* Type in `https://raw.githubusercontent.com/alexellis/faas/master/api-docs/swagger.yml` and click OK
|
* Type in `https://raw.githubusercontent.com/openfaas/faas/master/api-docs/swagger.yml` and click OK
|
||||||
|
|
||||||
You can now view and edit the Swagger, copy back to your fork before pushing changes.
|
You can now view and edit the Swagger, copy back to your fork before pushing changes.
|
||||||
|
@ -211,4 +211,4 @@ definitions:
|
|||||||
~/.docker/config.json)
|
~/.docker/config.json)
|
||||||
externalDocs:
|
externalDocs:
|
||||||
description: More documentation available on Github
|
description: More documentation available on Github
|
||||||
url: 'https://github.com/alexellis/faas'
|
url: 'https://github.com/openfaas/faas'
|
||||||
|
@ -9,8 +9,8 @@ Welcome to the OpenFaaS community page where you can find:
|
|||||||
There are three main Github repos
|
There are three main Github repos
|
||||||
|
|
||||||
* FaaS - the main OpenFaaS repo for the Docker Swarm integration, samples and documentation
|
* FaaS - the main OpenFaaS repo for the Docker Swarm integration, samples and documentation
|
||||||
* [FaaS-netes](http://github.com/alexellis/faas-netes) - the Kubernetes back-end for FaaS
|
* [FaaS-netes](http://github.com/openfaas/faas-netes) - the Kubernetes back-end for FaaS
|
||||||
* [FaaS-cli](http://github.com/alexellis/faas-cli) - the user-facing CLI for templating and deploying functions
|
* [FaaS-cli](http://github.com/openfaas/faas-cli) - the user-facing CLI for templating and deploying functions
|
||||||
|
|
||||||
> It would be great to hear from you espcially if you have any of the above and want to share it with the rest of the community. Pull Request or submit a Github Issue.
|
> It would be great to hear from you espcially if you have any of the above and want to share it with the rest of the community. Pull Request or submit a Github Issue.
|
||||||
|
|
||||||
@ -78,7 +78,7 @@ There are three main Github repos
|
|||||||
### Third-party integrations / OpenFaaS providers
|
### Third-party integrations / OpenFaaS providers
|
||||||
| Project name and description | Author | Site | Status |
|
| Project name and description | Author | Site | Status |
|
||||||
|----------------------------------------------------------------------|------------|-----------|-------------|
|
|----------------------------------------------------------------------|------------|-----------|-------------|
|
||||||
| [faas-netes](https://github.com/alexellis/faas-nets) - Kubernetes provider | OpenFaaS | github.com | Supported |
|
| [faas-netes](https://github.com/openfaas/faas-netes) - Kubernetes provider | OpenFaaS | github.com | Supported |
|
||||||
| [faas-nomad](https://github.com/hashicorp/faas-nomad) - Nomad provider | Hashicorp | github.com | Incubation |
|
| [faas-nomad](https://github.com/hashicorp/faas-nomad) - Nomad provider | Hashicorp | github.com | Incubation |
|
||||||
| [faas-rancher](https://github.com/kenfdev/faas-rancher) - Rancher/Cattle provider | Ken Fukuyama | github.com | Incubation |
|
| [faas-rancher](https://github.com/kenfdev/faas-rancher) - Rancher/Cattle provider | Ken Fukuyama | github.com | Incubation |
|
||||||
| [faas-hyper](https://github.com/hyperhq/faas-hyper) - Hyper.sh provider | Hyper | github.com | Incubation |
|
| [faas-hyper](https://github.com/hyperhq/faas-hyper) - Hyper.sh provider | Hyper | github.com | Incubation |
|
||||||
@ -97,7 +97,7 @@ You can also find cool projects or submit your own to the [faas-and-furious orga
|
|||||||
| [Github - Reverse geocoding](https://github.com/lucj/faas-reverse-geocoding) | Luc Juggery | github.com | 14-September-2017 |
|
| [Github - Reverse geocoding](https://github.com/lucj/faas-reverse-geocoding) | Luc Juggery | github.com | 14-September-2017 |
|
||||||
| [QR Code](https://github.com/faas-and-furious/qrcode) | John McCabe | github.com | 18-August-2017 |
|
| [QR Code](https://github.com/faas-and-furious/qrcode) | John McCabe | github.com | 18-August-2017 |
|
||||||
| [Img2ANSI - GIF/PNG/JPG to ANSI art converter](https://github.com/johnmccabe/faas-img2ansi/) | John McCabe | github.com | 10-August-2017 |
|
| [Img2ANSI - GIF/PNG/JPG to ANSI art converter](https://github.com/johnmccabe/faas-img2ansi/) | John McCabe | github.com | 10-August-2017 |
|
||||||
| [FaaS-netes - Kubernetes backend for FaaS](https://github.com/alexellis/faas-netes) | Alex Ellis | github.com | 25-Jul-2017 |
|
| [FaaS-netes - Kubernetes backend for FaaS](https://github.com/openfaas/faas-netes) | Alex Ellis | github.com | 25-Jul-2017 |
|
||||||
| [Twitter, Elastic Search and Alexa stack of functions](https://github.com/alexellis/journey-expert/tree/master/tweetstash) | Alex Ellis | github.com | 24-Apr-2017 |
|
| [Twitter, Elastic Search and Alexa stack of functions](https://github.com/alexellis/journey-expert/tree/master/tweetstash) | Alex Ellis | github.com | 24-Apr-2017 |
|
||||||
| [Dockercon FaaS demos including Alexa/Github](https://github.com/alexellis/faas-dockercon) | Alex Ellis | github.com | 14-Apr-2017 |
|
| [Dockercon FaaS demos including Alexa/Github](https://github.com/alexellis/faas-dockercon) | Alex Ellis | github.com | 14-Apr-2017 |
|
||||||
| [Docker Birthday voting app ported to FaaS](https://github.com/alexellis/faas-example-voting-app) | Alex Ellis | github.com | 14-Apr-2017 |
|
| [Docker Birthday voting app ported to FaaS](https://github.com/alexellis/faas-example-voting-app) | Alex Ellis | github.com | 14-Apr-2017 |
|
||||||
|
@ -8,11 +8,6 @@ cd ..
|
|||||||
|
|
||||||
echo $GOPATH
|
echo $GOPATH
|
||||||
|
|
||||||
|
|
||||||
# Fix-up
|
|
||||||
mkdir -p $GOPATH/src/github.com/alexellis/
|
|
||||||
cp -r faas $GOPATH/src/github.com/alexellis/
|
|
||||||
|
|
||||||
mkdir -p $GOPATH/src/github.com/openfaas/
|
mkdir -p $GOPATH/src/github.com/openfaas/
|
||||||
cp -r faas $GOPATH/src/github.com/openfaas/
|
cp -r faas $GOPATH/src/github.com/openfaas/
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM docker:dind
|
FROM docker:dind
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
RUN apk --no-cache add git && \
|
RUN apk --no-cache add git && \
|
||||||
git clone https://github.com/alexellis/faas
|
git clone https://github.com/openfaas/faas
|
||||||
WORKDIR /root/faas/
|
WORKDIR /root/faas/
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
## Functions as a Service (OpenFaaS)
|
## Functions as a Service (OpenFaaS)
|
||||||
|
|
||||||
[](https://travis-ci.org/alexellis/faas)
|
Status](https://travis-ci.org/openfaas/faas.svg?branch=master)](https://travis-ci.org/openfaas/faas)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -11,8 +11,8 @@ FaaS is a framework for building serverless functions with Docker which has firs
|
|||||||
|
|
||||||
* Ease of use through UI portal and *one-click* install
|
* Ease of use through UI portal and *one-click* install
|
||||||
* Write functions in any language for Linux or Windows and package in Docker/OCI image format
|
* Write functions in any language for Linux or Windows and package in Docker/OCI image format
|
||||||
* Portable - runs on existing hardware or public/private cloud - [Kubernetes](https://github.com/alexellis/faas-netes) or Docker Swarm
|
* Portable - runs on existing hardware or public/private cloud - [Kubernetes](https://github.com/openfaas/faas-netes) or Docker Swarm
|
||||||
* [CLI](http://github.com/alexellis/faas-cli) available with YAML format for templating and defining functions
|
* [CLI](http://github.com/openfaas/faas-cli) available with YAML format for templating and defining functions
|
||||||
* Auto-scales as demand increases
|
* Auto-scales as demand increases
|
||||||
|
|
||||||
## Overview of OpenFaaS
|
## Overview of OpenFaaS
|
||||||
@ -32,7 +32,7 @@ FaaS is a framework for building serverless functions with Docker which has firs
|
|||||||
|
|
||||||
### CLI
|
### CLI
|
||||||
|
|
||||||
Any container or process in a Docker container can be a serverless function in FaaS. Using the [FaaS CLI](http://github.com/alexellis/faas-cli) you can deploy your functions or quickly create new functions from templates such as Node.js or Python.
|
Any container or process in a Docker container can be a serverless function in FaaS. Using the [FaaS CLI](http://github.com/openfaas/faas-cli) you can deploy your functions or quickly create new functions from templates such as Node.js or Python.
|
||||||
|
|
||||||
## Notable mentions
|
## Notable mentions
|
||||||
|
|
||||||
@ -54,7 +54,7 @@ Serdar Yegulalp Senior Technical Writer covered FaaS in a write-up looking at se
|
|||||||
|
|
||||||
There is also a community being built around FaaS with talks, demos and sample functions being built out.
|
There is also a community being built around FaaS with talks, demos and sample functions being built out.
|
||||||
|
|
||||||
[Find out about community activity](https://github.com/alexellis/faas/blob/master/community.md)
|
[Find out about community activity](https://github.com/openfaas/faas/blob/master/community.md)
|
||||||
|
|
||||||
## Getting started
|
## Getting started
|
||||||
|
|
||||||
@ -72,14 +72,14 @@ Read up on the background, the top 3 highlighted features and what's coming next
|
|||||||
|
|
||||||
**Test Drive OpenFaaS**
|
**Test Drive OpenFaaS**
|
||||||
|
|
||||||
You can [TestDrive](https://github.com/alexellis/faas/blob/master/TestDrive.md) FaaS on your laptop in 60 seconds, or deploy to a free online Docker playground. Find out more in the [TestDrive](https://github.com/alexellis/faas/blob/master/TestDrive.md).
|
You can [TestDrive](https://github.com/openfaas/faas/blob/master/TestDrive.md) FaaS on your laptop in 60 seconds, or deploy to a free online Docker playground. Find out more in the [TestDrive](https://github.com/openfaas/faas/blob/master/TestDrive.md).
|
||||||
|
|
||||||
You can dive straight into the [sample functions here](https://github.com/alexellis/faas/blob/master/sample-functions/README.md). You'll find hello-world examples for the most common programming languages including: Golang, DotNet Core, Java, NodeJS, Python even BusyBox.
|
You can dive straight into the [sample functions here](https://github.com/openfaas/faas/blob/master/sample-functions/README.md). You'll find hello-world examples for the most common programming languages including: Golang, DotNet Core, Java, NodeJS, Python even BusyBox.
|
||||||
|
|
||||||
The [faas-cli](https://github.com/alexellis/faas-cli/) lets you speed up development by creating functions from templates for:
|
The [faas-cli](https://github.com/openfaas/faas-cli/) lets you speed up development by creating functions from templates for:
|
||||||
|
|
||||||
* [Node.js](https://github.com/alexellis/faas-cli/blob/master/test_node.sh)
|
* [Node.js](https://github.com/openfaas/faas-cli/blob/master/test_node.sh)
|
||||||
* [Python](https://github.com/alexellis/faas-cli/blob/master/test_python.sh)
|
* [Python](https://github.com/openfaas/faas-cli/blob/master/test_python.sh)
|
||||||
* Ruby
|
* Ruby
|
||||||
* CSharp
|
* CSharp
|
||||||
|
|
||||||
@ -93,9 +93,9 @@ FaaS enables you to run your serverless functions in whatever language you like,
|
|||||||
|
|
||||||
Contributions to the project are welcome - please send in issues and questions through Github.
|
Contributions to the project are welcome - please send in issues and questions through Github.
|
||||||
|
|
||||||
[See issues and PRs](https://github.com/alexellis/faas/issues)
|
[See issues and PRs](https://github.com/openfaas/faas/issues)
|
||||||
|
|
||||||
*What about the name?*
|
*What about the name?*
|
||||||
|
|
||||||
FaaS is becoming OpenFaas, see more here: [Issue 123](https://github.com/alexellis/faas/issues/123)
|
FaaS is becoming OpenFaas, see more here: [Issue 123](https://github.com/openfaas/faas/issues/123)
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
FROM golang:1.7.5 as build
|
FROM golang:1.7.5 as build
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/gateway
|
WORKDIR /go/src/github.com/openfaas/faas/gateway
|
||||||
|
|
||||||
COPY vendor vendor
|
COPY vendor vendor
|
||||||
|
|
||||||
@ -22,7 +22,7 @@ EXPOSE 8080
|
|||||||
ENV http_proxy ""
|
ENV http_proxy ""
|
||||||
ENV https_proxy ""
|
ENV https_proxy ""
|
||||||
|
|
||||||
COPY --from=build /go/src/github.com/alexellis/faas/gateway/gateway .
|
COPY --from=build /go/src/github.com/openfaas/faas/gateway/gateway .
|
||||||
|
|
||||||
COPY assets assets
|
COPY assets assets
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM alexellis2/go-armhf:1.7.4
|
FROM alexellis2/go-armhf:1.7.4
|
||||||
|
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/gateway
|
WORKDIR /go/src/github.com/openfaas/faas/gateway
|
||||||
|
|
||||||
COPY vendor vendor
|
COPY vendor vendor
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ EXPOSE 8080
|
|||||||
ENV http_proxy ""
|
ENV http_proxy ""
|
||||||
ENV https_proxy ""
|
ENV https_proxy ""
|
||||||
|
|
||||||
COPY --from=0 /go/src/github.com/alexellis/faas/gateway/gateway .
|
COPY --from=0 /go/src/github.com/openfaas/faas/gateway/gateway .
|
||||||
|
|
||||||
COPY assets assets
|
COPY assets assets
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ docker build --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_p
|
|||||||
-t functions/gateway:build-armhf . -f Dockerfile.build.armhf
|
-t functions/gateway:build-armhf . -f Dockerfile.build.armhf
|
||||||
|
|
||||||
docker create --name gateway_extract functions/gateway:build-armhf echo
|
docker create --name gateway_extract functions/gateway:build-armhf echo
|
||||||
docker cp gateway_extract:/go/src/github.com/alexellis/faas/gateway/app ./gateway
|
docker cp gateway_extract:/go/src/github.com/openfaas/faas/gateway/app ./gateway
|
||||||
docker rm -f gateway_extract
|
docker rm -f gateway_extract
|
||||||
|
|
||||||
echo Building functions/gateway:latest-armhf-dev
|
echo Building functions/gateway:latest-armhf-dev
|
||||||
|
@ -13,9 +13,9 @@ import (
|
|||||||
|
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DefaultMaxReplicas is the amount of replicas a service will auto-scale up to.
|
// DefaultMaxReplicas is the amount of replicas a service will auto-scale up to.
|
||||||
|
@ -8,8 +8,8 @@ import (
|
|||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
// MakeAsyncReport makes a handler for asynchronous invocations to report back into.
|
// MakeAsyncReport makes a handler for asynchronous invocations to report back into.
|
||||||
|
@ -12,8 +12,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
"github.com/docker/distribution/reference"
|
"github.com/docker/distribution/reference"
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/swarm"
|
"github.com/docker/docker/api/types/swarm"
|
||||||
|
@ -12,8 +12,8 @@ import (
|
|||||||
|
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/filters"
|
"github.com/docker/docker/api/types/filters"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
@ -8,8 +8,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/types"
|
"github.com/openfaas/faas/gateway/types"
|
||||||
"github.com/prometheus/client_golang/prometheus"
|
"github.com/prometheus/client_golang/prometheus"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/filters"
|
"github.com/docker/docker/api/types/filters"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
@ -10,8 +10,8 @@ import (
|
|||||||
"net/url"
|
"net/url"
|
||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/queue"
|
"github.com/openfaas/faas/gateway/queue"
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -11,8 +11,8 @@ import (
|
|||||||
|
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/filters"
|
"github.com/docker/docker/api/types/filters"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
@ -9,11 +9,11 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
"github.com/docker/docker/api/types/swarm"
|
"github.com/docker/docker/api/types/swarm"
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
// MakeUpdateFunctionHandler request to update an existing function with new configuration such as image, envvars etc.
|
// MakeUpdateFunctionHandler request to update an existing function with new configuration such as image, envvars etc.
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"net/http/httptest"
|
"net/http/httptest"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
func makeClient() http.Client {
|
func makeClient() http.Client {
|
||||||
|
@ -13,7 +13,7 @@ import (
|
|||||||
|
|
||||||
"log"
|
"log"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
func AttachExternalWatcher(endpointURL url.URL, metricsOptions MetricOptions, label string, interval time.Duration) {
|
func AttachExternalWatcher(endpointURL url.URL, metricsOptions MetricOptions, label string, interval time.Duration) {
|
||||||
|
@ -16,8 +16,8 @@ import (
|
|||||||
|
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/handlers"
|
"github.com/openfaas/faas/gateway/handlers"
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
// NewExternalServiceQuery proxies service queries to external plugin via HTTP
|
// NewExternalServiceQuery proxies service queries to external plugin via HTTP
|
||||||
|
@ -13,12 +13,12 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
"github.com/Sirupsen/logrus"
|
"github.com/Sirupsen/logrus"
|
||||||
natsHandler "github.com/alexellis/faas-nats/handler"
|
|
||||||
internalHandlers "github.com/alexellis/faas/gateway/handlers"
|
|
||||||
"github.com/alexellis/faas/gateway/metrics"
|
|
||||||
"github.com/alexellis/faas/gateway/plugin"
|
|
||||||
"github.com/alexellis/faas/gateway/types"
|
|
||||||
"github.com/docker/docker/client"
|
"github.com/docker/docker/client"
|
||||||
|
internalHandlers "github.com/openfaas/faas/gateway/handlers"
|
||||||
|
"github.com/openfaas/faas/gateway/metrics"
|
||||||
|
"github.com/openfaas/faas/gateway/plugin"
|
||||||
|
"github.com/openfaas/faas/gateway/types"
|
||||||
|
natsHandler "github.com/openfaas/nats-queue-worker/handler"
|
||||||
|
|
||||||
"github.com/gorilla/mux"
|
"github.com/gorilla/mux"
|
||||||
)
|
)
|
||||||
|
@ -6,7 +6,7 @@ package tests
|
|||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/handlers"
|
"github.com/openfaas/faas/gateway/handlers"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestScale1to5(t *testing.T) {
|
func TestScale1to5(t *testing.T) {
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/types"
|
"github.com/openfaas/faas/gateway/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
type EnvBucket struct {
|
type EnvBucket struct {
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
func createFunction(request requests.CreateFunctionRequest) (string, int, error) {
|
func createFunction(request requests.CreateFunctionRequest) (string, int, error) {
|
||||||
|
@ -9,7 +9,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/handlers"
|
"github.com/openfaas/faas/gateway/handlers"
|
||||||
"github.com/docker/docker/api/types"
|
"github.com/docker/docker/api/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -10,7 +10,7 @@ import (
|
|||||||
|
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/requests"
|
"github.com/openfaas/faas/gateway/requests"
|
||||||
)
|
)
|
||||||
|
|
||||||
// TestUnmarshallAlert is an exploratory test from TDD'ing the struct to parse a Prometheus alert
|
// TestUnmarshallAlert is an exploratory test from TDD'ing the struct to parse a Prometheus alert
|
||||||
|
@ -6,7 +6,7 @@ import (
|
|||||||
|
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
|
||||||
"github.com/alexellis/faas/gateway/queue"
|
"github.com/openfaas/faas/gateway/queue"
|
||||||
"github.com/nats-io/go-nats-streaming"
|
"github.com/nats-io/go-nats-streaming"
|
||||||
)
|
)
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
github.com/alexellis/faas 4cc299d4c84e7ce10c6a5117e918c5a5b4aeb2ae
|
github.com/openfaas/faas 4cc299d4c84e7ce10c6a5117e918c5a5b4aeb2ae
|
||||||
github.com/nats-io/go-nats-streaming bf8654e90f5296da96eab1e85808eb5c4b7b5541
|
github.com/nats-io/go-nats-streaming bf8654e90f5296da96eab1e85808eb5c4b7b5541
|
||||||
github.com/nats-io/go-nats 34c8842105ac0b69c838a9998a239d482936c466
|
github.com/nats-io/go-nats 34c8842105ac0b69c838a9998a239d482936c466
|
||||||
github.com/nats-io/nuid 3cf34f9fca4e88afa9da8eabd75e3326c9941b44
|
github.com/nats-io/nuid 3cf34f9fca4e88afa9da8eabd75e3326c9941b44
|
@ -6,7 +6,7 @@ By default functions are accessed synchronously via the following route:
|
|||||||
$ curl --data "message" http://gateway/function/{function_name}
|
$ curl --data "message" http://gateway/function/{function_name}
|
||||||
```
|
```
|
||||||
|
|
||||||
As of [PR #131](https://github.com/alexellis/faas/pull/131) asynchronous invocation is available for testing.
|
As of [PR #131](https://github.com/openfaas/faas/pull/131) asynchronous invocation is available for testing.
|
||||||
|
|
||||||
*Logical flow for synchronous functions:*
|
*Logical flow for synchronous functions:*
|
||||||
|
|
||||||
@ -74,4 +74,4 @@ Hard timeout:
|
|||||||
|
|
||||||
To make use of these just add them to your Dockerfile when needed as ENV variables.
|
To make use of these just add them to your Dockerfile when needed as ENV variables.
|
||||||
|
|
||||||
> [Function watchdog reference](https://github.com/alexellis/faas/tree/master/watchdog)
|
> [Function watchdog reference](https://github.com/openfaas/faas/tree/master/watchdog)
|
||||||
|
@ -13,7 +13,7 @@ There is also community work in-progress to support:
|
|||||||
|
|
||||||
* Rancher/Cattle
|
* Rancher/Cattle
|
||||||
|
|
||||||
The Docker Swarm support is built-into the faas repo, but the Kubernetes support is provided by a microservice in the [faas-netes](https://github.com/alexellis/faas-netes) repo.
|
The Docker Swarm support is built-into the faas repo, but the Kubernetes support is provided by a microservice in the [faas-netes](https://github.com/openfaas/faas-netes) repo.
|
||||||
|
|
||||||
If you're thinking of writing a new back-end we'd love to hear about it and help you, so please get in touch with alex@openfaas.com. Existing implementations (like OpenFaaS) are written in Golang and this provides a level of consistency across the projects.
|
If you're thinking of writing a new back-end we'd love to hear about it and help you, so please get in touch with alex@openfaas.com. Existing implementations (like OpenFaaS) are written in Golang and this provides a level of consistency across the projects.
|
||||||
|
|
||||||
@ -28,11 +28,11 @@ Here are some ideas:
|
|||||||
* AWS ECS
|
* AWS ECS
|
||||||
* Hyper.sh
|
* Hyper.sh
|
||||||
|
|
||||||
If you would like to write your own back-end for `X` then you can write your own microservice that conforms to the [Swagger API](https://github.com/alexellis/faas/tree/master/api-docs) here.
|
If you would like to write your own back-end for `X` then you can write your own microservice that conforms to the [Swagger API](https://github.com/openfaas/faas/tree/master/api-docs) here.
|
||||||
|
|
||||||
### How does my back-end work?
|
### How does my back-end work?
|
||||||
|
|
||||||
In order to support a new back end you will write a new "external_provider" and configure this on the API Gateway. The API Gateway will then proxy any requests to your new microservice. The first "external_provider" was the Kubernetes implementation [faas-netes](https://github.com/alexellis/faas-netes):
|
In order to support a new back end you will write a new "external_provider" and configure this on the API Gateway. The API Gateway will then proxy any requests to your new microservice. The first "external_provider" was the Kubernetes implementation [faas-netes](https://github.com/openfaas/faas-netes):
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@ -44,7 +44,7 @@ Invoke your function - through the built-in Swarm or via faas-netes
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
Find out more about the [watchdog here](https://github.com/alexellis/faas/tree/master/watchdog).
|
Find out more about the [watchdog here](https://github.com/openfaas/faas/tree/master/watchdog).
|
||||||
|
|
||||||
### Automatically compatible OpenFaaS
|
### Automatically compatible OpenFaaS
|
||||||
|
|
||||||
@ -54,7 +54,7 @@ The following are fully compatible with any additional back-ends:
|
|||||||
* Promethes metrics (tracked through API Gateway)
|
* Promethes metrics (tracked through API Gateway)
|
||||||
* The built-in UI portal (hosted on the API Gateway)
|
* The built-in UI portal (hosted on the API Gateway)
|
||||||
* The Function Watchdog and any existing OpenFaaS functions
|
* The Function Watchdog and any existing OpenFaaS functions
|
||||||
* The [CLI](https://github.com/alexellis/faas-cli)
|
* The [CLI](https://github.com/openfaas/faas-cli)
|
||||||
* Asynchronous function invocation
|
* Asynchronous function invocation
|
||||||
|
|
||||||
Dependent on back-end:
|
Dependent on back-end:
|
||||||
@ -92,13 +92,13 @@ Method(s): POST
|
|||||||
|
|
||||||
### Examples / documentation
|
### Examples / documentation
|
||||||
|
|
||||||
* See the [Swagger API](https://github.com/alexellis/faas/tree/master/api-docs) as a starting point.
|
* See the [Swagger API](https://github.com/openfaas/faas/tree/master/api-docs) as a starting point.
|
||||||
|
|
||||||
#### faas-netes (Kubernetes)
|
#### faas-netes (Kubernetes)
|
||||||
|
|
||||||
The Kubernetes integration was written by Alex Ellis and is officially supported by the project.
|
The Kubernetes integration was written by Alex Ellis and is officially supported by the project.
|
||||||
|
|
||||||
* See the [FaaS-netes handlers](https://github.com/alexellis/faas-netes/tree/master/handlers) for examples of how to implement each endpoint.
|
* See the [FaaS-netes handlers](https://github.com/openfaas/faas-netes/tree/master/handlers) for examples of how to implement each endpoint.
|
||||||
|
|
||||||
#### Rancher / Cattle (community)
|
#### Rancher / Cattle (community)
|
||||||
|
|
||||||
|
@ -8,15 +8,15 @@ Below is a demo of how you could use Kong as an authentication layer for OpenFaa
|
|||||||
|
|
||||||
If you haven't already setup OpenFaaS then you can follow one of the deployment guides available here:
|
If you haven't already setup OpenFaaS then you can follow one of the deployment guides available here:
|
||||||
|
|
||||||
* [Docker Swarm](https://github.com/alexellis/faas/blob/master/guide/deployment_swarm.md)
|
* [Docker Swarm](https://github.com/openfaas/faas/blob/master/guide/deployment_swarm.md)
|
||||||
* [Kubernetes](https://github.com/alexellis/faas/blob/master/guide/deployment_k8s.md)
|
* [Kubernetes](https://github.com/openfaas/faas/blob/master/guide/deployment_k8s.md)
|
||||||
|
|
||||||
Here is a quick reference for Docker Swarm:
|
Here is a quick reference for Docker Swarm:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ docker swarm init --advertise-addr $(hostname -i)
|
$ docker swarm init --advertise-addr $(hostname -i)
|
||||||
|
|
||||||
$ git clone https://github.com/alexellis/faas && \
|
$ git clone https://github.com/openfaas/faas && \
|
||||||
cd faas && \
|
cd faas && \
|
||||||
./deploy_stack.sh
|
./deploy_stack.sh
|
||||||
```
|
```
|
||||||
|
@ -114,7 +114,7 @@ Within the CLI directory for instance:
|
|||||||
Build the samples:
|
Build the samples:
|
||||||
|
|
||||||
```
|
```
|
||||||
$ git clone https://github.com/alexellis/faas-cli && \
|
$ git clone https://github.com/openfaas/faas-cli && \
|
||||||
cd faas-cli
|
cd faas-cli
|
||||||
$ faas-cli -action build -f ./samples.yml
|
$ faas-cli -action build -f ./samples.yml
|
||||||
```
|
```
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.5/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.6.5/fwatchdog /usr/bin
|
||||||
# COPY ./fwatchdog /usr/bin/
|
# COPY ./fwatchdog /usr/bin/
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM arm32v6/alpine:3.6
|
FROM arm32v6/alpine:3.6
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
# Populate example here
|
# Populate example here
|
||||||
|
@ -6,7 +6,7 @@ EXPOSE 8080
|
|||||||
ENV http_proxy ""
|
ENV http_proxy ""
|
||||||
ENV https_proxy ""
|
ENV https_proxy ""
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
# COPY fwatchdog /usr/bin/
|
# COPY fwatchdog /usr/bin/
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/alexellis/faas/watchdog/types"
|
"github.com/openfaas/faas/watchdog/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
func handle(header http.Header, body []byte) {
|
func handle(header http.Header, body []byte) {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM artemklevtsov/r-alpine:latest
|
FROM artemklevtsov/r-alpine:latest
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.1/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.6.1/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -15,7 +15,7 @@ Use this FaaS function using R.
|
|||||||
|
|
||||||
* Option 1 - click *Create a new function* on the FaaS UI
|
* Option 1 - click *Create a new function* on the FaaS UI
|
||||||
|
|
||||||
* Option 2 - use the [faas-cli](https://github.com/alexellis/faas-cli/) (experimental)
|
* Option 2 - use the [faas-cli](https://github.com/openfaas/faas-cli/) (experimental)
|
||||||
|
|
||||||
```
|
```
|
||||||
# curl -sSL https://get.openfaas.com | sudo sh
|
# curl -sSL https://get.openfaas.com | sudo sh
|
||||||
|
@ -9,7 +9,7 @@ Use this FaaS function using R.
|
|||||||
|
|
||||||
- Option 1 - click *Create a new function* on the FaaS UI
|
- Option 1 - click *Create a new function* on the FaaS UI
|
||||||
|
|
||||||
- Option 2 - use the [faas-cli](https://github.com/alexellis/faas-cli/) (experimental)
|
- Option 2 - use the [faas-cli](https://github.com/openfaas/faas-cli/) (experimental)
|
||||||
|
|
||||||
<!-- -->
|
<!-- -->
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM toricls/gnucobol:latest
|
FROM toricls/gnucobol:latest
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM node:6.9.1-alpine
|
FROM node:6.9.1-alpine
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM microsoft/dotnet:sdk
|
FROM microsoft/dotnet:sdk
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV DOTNET_CLI_TELEMETRY_OPTOUT 1
|
ENV DOTNET_CLI_TELEMETRY_OPTOUT 1
|
||||||
|
@ -3,12 +3,12 @@ FROM golang:1.7.5-alpine
|
|||||||
MAINTAINER alexellis2@gmail.com
|
MAINTAINER alexellis2@gmail.com
|
||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/sample-functions/golang
|
WORKDIR /go/src/github.com/openfaas/faas/sample-functions/golang
|
||||||
COPY . /go/src/github.com/alexellis/faas/sample-functions/golang
|
COPY . /go/src/github.com/openfaas/faas/sample-functions/golang
|
||||||
|
|
||||||
RUN go install
|
RUN go install
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess "/go/bin/golang"
|
ENV fprocess "/go/bin/golang"
|
||||||
|
@ -2,8 +2,8 @@ FROM golang:1.7.5-windowsservercore
|
|||||||
MAINTAINER alexellis2@gmail.com
|
MAINTAINER alexellis2@gmail.com
|
||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/sample-functions/golang
|
WORKDIR /go/src/github.com/openfaas/faas/sample-functions/golang
|
||||||
COPY . /go/src/github.com/alexellis/faas/sample-functions/golang
|
COPY . /go/src/github.com/openfaas/faas/sample-functions/golang
|
||||||
RUN go build
|
RUN go build
|
||||||
|
|
||||||
ADD ./watchdog.exe /
|
ADD ./watchdog.exe /
|
||||||
|
@ -4,7 +4,7 @@ BaseFunction for Golang
|
|||||||
You will find a Dockerfile for Linux and one for Windows so that you can run serverless functions in a mixed-OS swarm.
|
You will find a Dockerfile for Linux and one for Windows so that you can run serverless functions in a mixed-OS swarm.
|
||||||
|
|
||||||
Dockerfile for Windows
|
Dockerfile for Windows
|
||||||
* [Dockerfile.win](https://github.com/alexellis/faas/blob/master/sample-functions/BaseFunctions/golang/Dockerfile.win)
|
* [Dockerfile.win](https://github.com/openfaas/faas/blob/master/sample-functions/BaseFunctions/golang/Dockerfile.win)
|
||||||
|
|
||||||
This function reads STDIN then prints it back - you can use it to create an "echo service" or as a basis to write your own function.
|
This function reads STDIN then prints it back - you can use it to create an "echo service" or as a basis to write your own function.
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM openjdk:8u121-jdk-alpine
|
FROM openjdk:8u121-jdk-alpine
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM node:6.9.1-alpine
|
FROM node:6.9.1-alpine
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM python:2.7-alpine
|
FROM python:2.7-alpine
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM alpine:3.6 as builder
|
FROM alpine:3.6 as builder
|
||||||
RUN apk add --no-cache curl \
|
RUN apk add --no-cache curl \
|
||||||
&& curl -SL https://github.com/alexellis/faas/releases/download/0.6.4/fwatchdog > /usr/bin/fwatchdog \
|
&& curl -SL https://github.com/openfaas/faas/releases/download/0.6.4/fwatchdog > /usr/bin/fwatchdog \
|
||||||
&& chmod +x /usr/bin/fwatchdog \
|
&& chmod +x /usr/bin/fwatchdog \
|
||||||
&& apk --no-cache del curl
|
&& apk --no-cache del curl
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
RUN apk --update add nodejs nodejs-npm
|
RUN apk --update add nodejs nodejs-npm
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
COPY package.json .
|
COPY package.json .
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
RUN apk --update add nodejs nodejs-npm
|
RUN apk --update add nodejs nodejs-npm
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
#COPY ./fwatchdog /usr/bin/
|
#COPY ./fwatchdog /usr/bin/
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
|
@ -3,12 +3,12 @@ MAINTAINER alexellis2@gmail.com
|
|||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
||||||
RUN apk --no-cache add make
|
RUN apk --no-cache add make
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/sample-functions/DockerHubStats
|
WORKDIR /go/src/github.com/openfaas/faas/sample-functions/DockerHubStats
|
||||||
COPY . /go/src/github.com/alexellis/faas/sample-functions/DockerHubStats
|
COPY . /go/src/github.com/openfaas/faas/sample-functions/DockerHubStats
|
||||||
|
|
||||||
RUN make
|
RUN make
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess "/go/bin/DockerHubStats"
|
ENV fprocess "/go/bin/DockerHubStats"
|
||||||
|
@ -4,8 +4,8 @@ MAINTAINER alexellis2@gmail.com
|
|||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
||||||
RUN apk --no-cache add make
|
RUN apk --no-cache add make
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/sample-functions/DockerHubStats
|
WORKDIR /go/src/github.com/openfaas/faas/sample-functions/DockerHubStats
|
||||||
COPY . /go/src/github.com/alexellis/faas/sample-functions/DockerHubStats
|
COPY . /go/src/github.com/openfaas/faas/sample-functions/DockerHubStats
|
||||||
|
|
||||||
RUN make
|
RUN make
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
RUN apk --update add nodejs nodejs-npm
|
RUN apk --update add nodejs nodejs-npm
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
COPY package.json .
|
COPY package.json .
|
||||||
|
@ -6,7 +6,7 @@ EXPOSE 8080
|
|||||||
ENV http_proxy ""
|
ENV http_proxy ""
|
||||||
ENV https_proxy ""
|
ENV https_proxy ""
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
# COPY fwatchdog /usr/bin/
|
# COPY fwatchdog /usr/bin/
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM arm32v6/alpine:3.6
|
FROM arm32v6/alpine:3.6
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
RUN apk --update add nodejs nodejs-npm
|
RUN apk --update add nodejs nodejs-npm
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
COPY package.json .
|
COPY package.json .
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM arm32v6/alpine:latest
|
FROM arm32v6/alpine:latest
|
||||||
RUN apk --no-cache add nodejs nodejs-npm
|
RUN apk --no-cache add nodejs nodejs-npm
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
COPY package.json .
|
COPY package.json .
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM alexellis2/phantomjs-docker:latest
|
FROM alexellis2/phantomjs-docker:latest
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.6-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.6-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess="phantomjs /dev/stdin"
|
ENV fprocess="phantomjs /dev/stdin"
|
||||||
|
@ -32,7 +32,7 @@ real 0m8.729s
|
|||||||
|
|
||||||
This script visits the front page of CNN and once it is fully loaded - scrapes the title.
|
This script visits the front page of CNN and once it is fully loaded - scrapes the title.
|
||||||
|
|
||||||
See [cnn.js](https://github.com/alexellis/faas/tree/master/sample-functions/Phantomjs/cnn.js) as an example of a Phantomjs script.
|
See [cnn.js](https://github.com/openfaas/faas/tree/master/sample-functions/Phantomjs/cnn.js) as an example of a Phantomjs script.
|
||||||
|
|
||||||
Another example script [feedly_subscribers.js](https://github.com/alexellis/faas/tree/master/sample-functions/Phantomjs/feedly_subscribers.js) gives the count of subscribers for an RSS Feed registered on Feedly.
|
Another example script [feedly_subscribers.js](https://github.com/openfaas/faas/tree/master/sample-functions/Phantomjs/feedly_subscribers.js) gives the count of subscribers for an RSS Feed registered on Feedly.
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
For examples of hello-world in different programming languages see inside the BaseFunctions folder:
|
For examples of hello-world in different programming languages see inside the BaseFunctions folder:
|
||||||
|
|
||||||
* [Base Functions](https://github.com/alexellis/faas/tree/master/sample-functions/BaseFunctions)
|
* [Base Functions](https://github.com/openfaas/faas/tree/master/sample-functions/BaseFunctions)
|
||||||
|
|
||||||
## Demo functions from closing keynote @ Dockercon
|
## Demo functions from closing keynote @ Dockercon
|
||||||
|
|
||||||
@ -11,7 +11,7 @@ For examples of hello-world in different programming languages see inside the Ba
|
|||||||
|
|
||||||
## Sample functions from the FaaS stack
|
## Sample functions from the FaaS stack
|
||||||
|
|
||||||
> Also see the [community page](https://github.com/alexellis/faas/blob/master/community.md) for functions created by FaaS users and contributors.
|
> Also see the [community page](https://github.com/openfaas/faas/blob/master/community.md) for functions created by FaaS users and contributors.
|
||||||
|
|
||||||
Here is a list of the sample functions included this repository.
|
Here is a list of the sample functions included this repository.
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM v4tech/imagemagick
|
FROM v4tech/imagemagick
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.2-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.2-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess "convert - -resize 50% fd:1"
|
ENV fprocess "convert - -resize 50% fd:1"
|
||||||
|
@ -2,7 +2,7 @@ FROM arm32v6/alpine:3.6
|
|||||||
|
|
||||||
RUN apk --no-cache add imagemagick
|
RUN apk --no-cache add imagemagick
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess "convert - -resize 50% fd:1"
|
ENV fprocess "convert - -resize 50% fd:1"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
## functions/resizer
|
## functions/resizer
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Use this FaaS function to resize an image with ImageMagick.
|
Use this FaaS function to resize an image with ImageMagick.
|
||||||
|
|
||||||
@ -10,7 +10,7 @@ Use this FaaS function to resize an image with ImageMagick.
|
|||||||
|
|
||||||
* Option 1 - click *Create a new function* on the FaaS UI
|
* Option 1 - click *Create a new function* on the FaaS UI
|
||||||
|
|
||||||
* Option 2 - use the [faas-cli](https://github.com/alexellis/faas-cli/) (experimental)
|
* Option 2 - use the [faas-cli](https://github.com/openfaas/faas-cli/) (experimental)
|
||||||
|
|
||||||
```
|
```
|
||||||
# curl -sSL https://get.openfaas.com | sudo sh
|
# curl -sSL https://get.openfaas.com | sudo sh
|
||||||
|
@ -3,7 +3,7 @@ FROM python:2.7-alpine
|
|||||||
RUN pip install textblob && \
|
RUN pip install textblob && \
|
||||||
python -m textblob.download_corpora
|
python -m textblob.download_corpora
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/0.5.1-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -3,7 +3,7 @@ FROM arm32v7/python:2.7-slim
|
|||||||
RUN pip install textblob && \
|
RUN pip install textblob && \
|
||||||
python -m textblob.download_corpora
|
python -m textblob.download_corpora
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
ADD https://github.com/openfaas/faas/releases/download/0.6.0/fwatchdog-armhf /usr/bin/fwatchdog
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -6,7 +6,7 @@ EXPOSE 8080
|
|||||||
ENV http_proxy ""
|
ENV http_proxy ""
|
||||||
ENV https_proxy ""
|
ENV https_proxy ""
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
# COPY fwatchdog /usr/bin/
|
# COPY fwatchdog /usr/bin/
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:latest
|
FROM alpine:latest
|
||||||
ENTRYPOINT []
|
ENTRYPOINT []
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
ENV fprocess "/bin/cat"
|
ENV fprocess "/bin/cat"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
FROM alpine:3.6
|
FROM alpine:3.6
|
||||||
|
|
||||||
RUN apk --no-cache add ffmpeg gifsicle curl \
|
RUN apk --no-cache add ffmpeg gifsicle curl \
|
||||||
&& curl -LS https://github.com/alexellis/faas/releases/download/0.5.6-alpha/fwatchdog > /usr/bin/fwatchdog \
|
&& curl -LS https://github.com/openfaas/faas/releases/download/0.5.6-alpha/fwatchdog > /usr/bin/fwatchdog \
|
||||||
&& chmod +x /usr/bin/fwatchdog \
|
&& chmod +x /usr/bin/fwatchdog \
|
||||||
&& apk del curl
|
&& apk del curl
|
||||||
WORKDIR /root/
|
WORKDIR /root/
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
FROM golang:1.8.3
|
FROM golang:1.8.3
|
||||||
RUN mkdir -p /go/src/github.com/alexellis/faas/watchdog
|
RUN mkdir -p /go/src/github.com/openfaas/faas/watchdog
|
||||||
WORKDIR /go/src/github.com/alexellis/faas/watchdog
|
WORKDIR /go/src/github.com/openfaas/faas/watchdog
|
||||||
|
|
||||||
COPY main.go .
|
COPY main.go .
|
||||||
COPY readconfig.go .
|
COPY readconfig.go .
|
||||||
|
@ -17,7 +17,7 @@ The easiest way to create a function is to use a template and the FaaS CLI. The
|
|||||||
|
|
||||||
* [Your first serverless Python function with OpenFaaS](https://blog.alexellis.io/first-faas-python-function/)
|
* [Your first serverless Python function with OpenFaaS](https://blog.alexellis.io/first-faas-python-function/)
|
||||||
|
|
||||||
* [Read a tutorial on the FaaS CLI](https://github.com/alexellis/faas-cli)
|
* [Read a tutorial on the FaaS CLI](https://github.com/openfaas/faas-cli)
|
||||||
|
|
||||||
## Delve deeper
|
## Delve deeper
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ The easiest way to create a function is to use a template and the FaaS CLI. The
|
|||||||
Here's how to package your function if you don't want to use the CLI or have existing binaries or images:
|
Here's how to package your function if you don't want to use the CLI or have existing binaries or images:
|
||||||
|
|
||||||
- [x] Use an existing or a new Docker image as base image `FROM`
|
- [x] Use an existing or a new Docker image as base image `FROM`
|
||||||
- [x] Add the fwatchdog binary from the [Releases page](https://github.com/alexellis/faas/releases) via `curl` or `ADD https://`
|
- [x] Add the fwatchdog binary from the [Releases page](https://github.com/openfaas/faas/releases) via `curl` or `ADD https://`
|
||||||
- [x] Set an `fprocess` environmental variable with the function you want to run for each request
|
- [x] Set an `fprocess` environmental variable with the function you want to run for each request
|
||||||
- [x] Expose port 8080
|
- [x] Expose port 8080
|
||||||
- [x] Set the `CMD` to `fwatchdog`
|
- [x] Set the `CMD` to `fwatchdog`
|
||||||
@ -36,7 +36,7 @@ Example Dockerfile for an `echo` function:
|
|||||||
```
|
```
|
||||||
FROM alpine:3.5
|
FROM alpine:3.5
|
||||||
|
|
||||||
ADD https://github.com/alexellis/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
ADD https://github.com/openfaas/faas/releases/download/v0.5-alpha/fwatchdog /usr/bin
|
||||||
RUN chmod +x /usr/bin/fwatchdog
|
RUN chmod +x /usr/bin/fwatchdog
|
||||||
|
|
||||||
# Define your UNIX binary here
|
# Define your UNIX binary here
|
||||||
|
@ -6,5 +6,5 @@ docker build -t alexellis2/watchdog:windows . -f .\Dockerfile.win
|
|||||||
|
|
||||||
docker create --name watchdog alexellis2/watchdog:windows cmd
|
docker create --name watchdog alexellis2/watchdog:windows cmd
|
||||||
|
|
||||||
& docker cp watchdog:/go/src/github.com/alexellis/faas/watchdog/watchdog.exe .
|
& docker cp watchdog:/go/src/github.com/openfaas/faas/watchdog/watchdog.exe .
|
||||||
docker rm -f watchdog
|
docker rm -f watchdog
|
||||||
|
@ -16,10 +16,10 @@ fi
|
|||||||
|
|
||||||
docker create --name buildoutput functions/watchdog:build echo
|
docker create --name buildoutput functions/watchdog:build echo
|
||||||
|
|
||||||
docker cp buildoutput:/go/src/github.com/alexellis/faas/watchdog/watchdog ./fwatchdog
|
docker cp buildoutput:/go/src/github.com/openfaas/faas/watchdog/watchdog ./fwatchdog
|
||||||
docker cp buildoutput:/go/src/github.com/alexellis/faas/watchdog/watchdog-armhf ./fwatchdog-armhf
|
docker cp buildoutput:/go/src/github.com/openfaas/faas/watchdog/watchdog-armhf ./fwatchdog-armhf
|
||||||
docker cp buildoutput:/go/src/github.com/alexellis/faas/watchdog/watchdog-arm64 ./fwatchdog-arm64
|
docker cp buildoutput:/go/src/github.com/openfaas/faas/watchdog/watchdog-arm64 ./fwatchdog-arm64
|
||||||
docker cp buildoutput:/go/src/github.com/alexellis/faas/watchdog/watchdog.exe ./fwatchdog.exe
|
docker cp buildoutput:/go/src/github.com/openfaas/faas/watchdog/watchdog.exe ./fwatchdog.exe
|
||||||
|
|
||||||
docker rm buildoutput
|
docker rm buildoutput
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ import (
|
|||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/alexellis/faas/watchdog/types"
|
"github.com/openfaas/faas/watchdog/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
func buildFunctionInput(config *WatchdogConfig, r *http.Request) ([]byte, error) {
|
func buildFunctionInput(config *WatchdogConfig, r *http.Request) ([]byte, error) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user