93 lines
2.1 KiB
Terraform
93 lines
2.1 KiB
Terraform
terraform {
|
|
required_providers {
|
|
fission = {
|
|
source = "nail/fission"
|
|
version = "~> 0.1.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "fission" {
|
|
kubeconfig_path = "/home/naeel/.kube/config"
|
|
namespace = "default"
|
|
}
|
|
|
|
resource "fission_environment" "python" {
|
|
name = "tf-stress-python-env"
|
|
image = "ghcr.io/fission/python-env"
|
|
version = 3
|
|
poolsize = 10
|
|
}
|
|
|
|
resource "fission_package" "fast" {
|
|
name = "tf-stress-fast-pkg"
|
|
environment = fission_environment.python.name
|
|
source_dir = "${path.module}/code/fast"
|
|
}
|
|
|
|
resource "fission_function" "fast" {
|
|
name = "tf-stress-fast-fn"
|
|
environment = fission_environment.python.name
|
|
package_name = fission_package.fast.name
|
|
entrypoint = "main.main"
|
|
}
|
|
|
|
resource "fission_http_trigger" "fast" {
|
|
name = "tf-stress-fast-route"
|
|
function = fission_function.fast.name
|
|
url = "/stress/fast"
|
|
methods = ["GET"]
|
|
}
|
|
|
|
resource "fission_package" "cpu" {
|
|
name = "tf-stress-cpu-pkg"
|
|
environment = fission_environment.python.name
|
|
source_dir = "${path.module}/code/cpu"
|
|
}
|
|
|
|
resource "fission_function" "cpu" {
|
|
name = "tf-stress-cpu-fn"
|
|
environment = fission_environment.python.name
|
|
package_name = fission_package.cpu.name
|
|
entrypoint = "main.main"
|
|
}
|
|
|
|
resource "fission_http_trigger" "cpu" {
|
|
name = "tf-stress-cpu-route"
|
|
function = fission_function.cpu.name
|
|
url = "/stress/cpu"
|
|
methods = ["GET"]
|
|
}
|
|
|
|
resource "fission_package" "json" {
|
|
name = "tf-stress-json-pkg"
|
|
environment = fission_environment.python.name
|
|
source_dir = "${path.module}/code/json"
|
|
}
|
|
|
|
resource "fission_function" "json" {
|
|
name = "tf-stress-json-fn"
|
|
environment = fission_environment.python.name
|
|
package_name = fission_package.json.name
|
|
entrypoint = "main.main"
|
|
}
|
|
|
|
resource "fission_http_trigger" "json" {
|
|
name = "tf-stress-json-route"
|
|
function = fission_function.json.name
|
|
url = "/stress/json"
|
|
methods = ["GET"]
|
|
}
|
|
|
|
output "stress_fast_url" {
|
|
value = "https://fission.kube5s.ru/stress/fast"
|
|
}
|
|
|
|
output "stress_cpu_url" {
|
|
value = "https://fission.kube5s.ru/stress/cpu"
|
|
}
|
|
|
|
output "stress_json_url" {
|
|
value = "https://fission.kube5s.ru/stress/json"
|
|
}
|