https://github.com/openfaas/mass-deploy
Deploy functions to OpenFaaS en-masse
https://github.com/openfaas/mass-deploy
Last synced: about 1 year ago
JSON representation
Deploy functions to OpenFaaS en-masse
- Host: GitHub
- URL: https://github.com/openfaas/mass-deploy
- Owner: openfaas
- License: mit
- Created: 2023-10-12T14:34:37.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-26T09:21:52.000Z (over 1 year ago)
- Last Synced: 2025-04-06T23:06:08.893Z (about 1 year ago)
- Language: Go
- Size: 15.6 KB
- Stars: 3
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## mass-deploy
Deploy functions to OpenFaaS en-masse
This tool exists to load test the OpenFaaS control-plane with a large number of functions.
Example usage, to deploy the `env` function 100 times
The default `--action` is `create`, so can be omitted.
```bash
go run . -image ghcr.io/openfaas/alpine:latest \
-fprocess env \
--workers 10 \
--gateway http://127.0.0.1:8081 \
--functions 1000 \
--start-at 0
```
If you're deploying 1000 functions and want to split that into two batches, set the `--start-at` flag to `0`, then `500` for the second batch.
Example usage to delete the functions created earlier:
```bash
go run . -image ghcr.io/openfaas/alpine:latest \
-fprocess env \
--workers 5 \
--gateway http://127.0.0.1:8081 \
--functions 100 \
--start-at 0 \
--action=delete
```
Log tailing without stern:
```
kubectl logs -l app=gateway -c operator -n openfaas -f --prefix
```
Port forward OpenFaaS:
```bash
export OPENFAAS_URL=http://127.0.0.1:8081
kubectl port-forward -n openfaas svc/gateway 8081:8080 &
# If basic auth is enabled, you can now log into your gateway:
PASSWORD=$(kubectl get secret -n openfaas basic-auth -o jsonpath="{.data.basic-auth-password}" | base64 --decode; echo)
echo -n $PASSWORD | faas-cli login --username admin --password-stdin
```
## Status
Internal testing tool for the OpenFaaS Ltd team and contributors
## License
MIT