add webhook handler and env variables [ci skip]

This commit is contained in:
viktorbarzin 2023-03-18 17:36:37 +00:00
parent 14ae0f9c61
commit f2b76aa01b
No known key found for this signature in database
GPG key ID: 0EB088298288D958
6 changed files with 117 additions and 18 deletions

View file

@ -6,6 +6,10 @@ variable "imap_host" {}
variable "imap_user" {}
variable "imap_password" {}
variable "imap_directory" {}
variable "prod_graphql_endpoint" {
default = "https://finance.viktorbarzin.me/graphql"
}
variable "monzo_registered_accounts_json" {}
resource "kubernetes_namespace" "finance_app" {
@ -133,6 +137,48 @@ resource "kubernetes_deployment" "finance_app" {
}
}
resource "kubernetes_deployment" "finance_app_backend_webhook_handler" {
metadata {
name = "finance-app-backend-webhook-handler"
namespace = "finance-app"
labels = {
app = "finance-app-backend-webhook-handler"
}
}
spec {
replicas = 1
strategy {
type = "RollingUpdate"
}
selector {
match_labels = {
app = "finance-app-backend-webhook-handler"
}
}
template {
metadata {
labels = {
app = "finance-app-backend-webhook-handler"
}
}
spec {
container {
image = "viktorbarzin/finance-app-backend-webhook-handler"
name = "finance-app-backend-webhook-handler"
env {
name = "MONZO_REGISTERED_ACCOUNTS_JSON"
value = var.monzo_registered_accounts_json
}
env {
name = "GRAPHQL_ENDPOINT"
value = var.prod_graphql_endpoint
}
}
}
}
}
}
resource "kubernetes_deployment" "finance_app_frontend" {
metadata {
name = "finance-app-frontend"
@ -187,6 +233,25 @@ resource "kubernetes_service" "finance_app" {
}
}
resource "kubernetes_service" "finance_app_backend_webhook_handler" {
metadata {
name = "finance-app-backend-webhook-handler"
namespace = "finance-app"
labels = {
app = "finance-app-backend-webhook-handler"
}
}
spec {
selector = {
app = "finance-app-backend-webhook-handler"
}
port {
name = "http"
port = "5000"
}
}
}
resource "kubernetes_service" "finance_app_frontend" {
metadata {
name = "finance-app-frontend"
@ -253,5 +318,21 @@ resource "kubernetes_ingress_v1" "finance_app" {
}
}
}
rule {
host = "finance.viktorbarzin.me"
http {
path {
path = "/webhook"
backend {
service {
name = "finance-app-backend-webhook-handler"
port {
number = 5000
}
}
}
}
}
}
}
}