Skip to content

Commit 370bf07

Browse files
committed
added changes
1 parent 7dce41e commit 370bf07

File tree

15 files changed

+467
-251
lines changed

15 files changed

+467
-251
lines changed

.github/workflows/publish-deployer.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ on:
44
push:
55
tags:
66
- "*"
7+
branches:
8+
- "AE-1241/fix-vulnerabilties-d"
79

810
env:
911
REGISTRY: gcr.io/stackgen-gcp-marketplace

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Terraform files
2+
*.tfvars
3+
*.tfstate
4+
*.tfstate.*
5+
.terraform/
6+
.terraform.lock.hcl
7+

deployer-image/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ RUN apk add --no-cache yq && \
1111
yq -i ".properties.stackgenPat.default = \"$GH_TOKEN\"" schema.yaml
1212

1313
# Stage 1: Preprocessing schema.yaml
14-
FROM marketplace.gcr.io/google/debian10 AS build
14+
FROM marketplace.gcr.io/google/debian11 AS build
1515

1616
# Install tools for envsubst
1717
RUN apt-get update && apt-get install -y --no-install-recommends gettext && rm -rf /var/lib/apt/lists/*

deployer-image/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ MANIFEST_DIR := marketplace/manifests
66

77
# Semantic minor version (TRACK) and full release version
88
# TODO(sabith) read from tag
9-
TRACK ?= 1.1
9+
TRACK ?= 1.5
1010
RELEASE ?= ${TRACK}.0
1111

1212
# Docker registry and image names

deployer-image/terraform/Makefile

Lines changed: 0 additions & 14 deletions
This file was deleted.
163 KB
Binary file not shown.
-58.9 KB
Binary file not shown.

deployer-image/terraform/main.tf

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,58 @@
1+
terraform {
2+
required_providers {
3+
helm = {
4+
source = "hashicorp/helm"
5+
version = ">= 2.0"
6+
}
7+
kubernetes = {
8+
source = "hashicorp/kubernetes"
9+
version = ">= 2.0"
10+
}
11+
}
12+
}
13+
114
locals {
215
labels = merge(var.labels, {
316
"maintainer" = "stackgen"
417
})
518
}
619

20+
# provider "helm" {
21+
# kubernetes = {
22+
# host = "https://kubernetes.default.svc"
23+
# token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
24+
# cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
25+
# insecure = false
26+
# }
27+
# }
28+
29+
30+
# provider "kubernetes" {
31+
# host = "https://kubernetes.default.svc"
32+
# token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
33+
# cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
34+
# # If the cluster CA is signed by a recognized authority, you can set 'insecure = false'
35+
# insecure = false
36+
# }
37+
738
provider "helm" {
8-
kubernetes {
9-
host = "https://kubernetes.default.svc"
10-
token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
11-
cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
12-
insecure = false
39+
kubernetes = {
40+
config_path = "~/.kube/config"
1341
}
1442
}
1543

16-
1744
provider "kubernetes" {
18-
host = "https://kubernetes.default.svc"
19-
token = file("/var/run/secrets/kubernetes.io/serviceaccount/token")
20-
cluster_ca_certificate = file("/var/run/secrets/kubernetes.io/serviceaccount/ca.crt")
21-
# If the cluster CA is signed by a recognized authority, you can set 'insecure = false'
22-
insecure = false
45+
config_path = "~/.kube/config"
2346
}
2447

2548

26-
2749
module "stackgen" {
2850
source = "./modules/stackgen-installation"
2951
domain = var.domain
3052
STACKGEN_PAT = var.STACKGEN_PAT
3153
suffix = var.suffix
3254
global_static_ip_name = var.global_static_ip_name
3355
pre_shared_cert_name = var.pre_shared_cert_name
56+
nginx_config = var.nginx_config
57+
enable_feature = var.enable_feature
3458
}

deployer-image/terraform/modules/stackgen-installation/database.tf

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,29 +27,34 @@ locals {
2727
persistence = {
2828
enabled = true
2929
size = "50Gi"
30-
storageClass = "standard"
30+
storageClass = "standard-rwo"
3131
}
3232
resources = {
3333
requests = {
3434
memory = "2Gi"
35-
cpu = "1"
35+
cpu = "500m"
3636
}
3737
limits = {
3838
memory = "4Gi"
39-
cpu = "2"
39+
cpu = "2000m"
4040
}
4141
}
4242
postgresql = {
4343
maxConnections = 500
44-
sharedBuffers = "512MB"
44+
sharedBuffers = "1GB"
4545
}
4646
}
4747
volumePermissions = {
48+
enabled = false
49+
}
50+
podSecurityContext = {
4851
enabled = true
49-
containerSecurityContext = {
50-
runAsUser = 0
51-
runAsGroup = 0
52-
}
52+
fsGroup = 1001
53+
}
54+
containerSecurityContext = {
55+
enabled = true
56+
runAsUser = 1001
57+
runAsNonRoot = true
5358
}
5459
tls = {
5560
enabled = false
@@ -64,9 +69,9 @@ locals {
6469
resource "helm_release" "postgresql" {
6570
name = "postgres"
6671

67-
repository = "oci://registry-1.docker.io/"
68-
chart = "bitnamicharts/postgresql"
69-
version = "16.4.5"
72+
repository = "https://charts.bitnami.com/bitnami"
73+
chart = "postgresql"
74+
version = "18.0.15"
7075

7176
namespace = var.namespace
7277
values = [

deployer-image/terraform/modules/stackgen-installation/main.tf

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
locals {
3-
temporal_helm_version = "0.33.0"
3+
temporal_helm_version = "0.57.0"
44
postgresql_administrator_password = random_password.db_password.result
55
postgresql_fqdn = "postgres-postgresql.${helm_release.postgresql.namespace}.svc.cluster.local"
66
postgresql_administrator_login = "stackgen"
@@ -49,7 +49,7 @@ resource "helm_release" "dex" {
4949
chart = "dex"
5050
namespace = var.namespace
5151
create_namespace = false
52-
version = "0.18.0"
52+
version = "0.19.1"
5353
values = [
5454
templatefile("./values/dex.yaml", {
5555
host_domain = var.domain,
@@ -62,6 +62,14 @@ resource "helm_release" "dex" {
6262
]
6363
}
6464

65+
resource "random_id" "appcd_client_id" {
66+
byte_length = 16
67+
}
68+
69+
resource "random_id" "appcd_client_secret" {
70+
byte_length = 36
71+
}
72+
6573
resource "kubernetes_secret" "ghcr_pkg" {
6674
depends_on = [kubernetes_namespace.this]
6775
metadata {
@@ -109,11 +117,14 @@ resource "kubernetes_secret" "appcd_secrets" {
109117
type = "Opaque"
110118

111119
data = {
112-
rds_port = "5432"
113-
rds_password = local.postgresql_administrator_password
114-
rds_endpoint = local.postgresql_fqdn
115-
rds_read_endpoint = local.postgresql_fqdn
116-
rds_username = local.postgresql_administrator_login
120+
rds_port = "5432"
121+
rds_password = local.postgresql_administrator_password
122+
rds_endpoint = local.postgresql_fqdn
123+
rds_host = local.postgresql_fqdn
124+
rds_read_endpoint = local.postgresql_fqdn
125+
rds_username = local.postgresql_administrator_login
126+
appcd_client_id = random_id.appcd_client_id.hex
127+
appcd_client_secret = random_id.appcd_client_secret.hex
117128
}
118129
}
119130

@@ -187,16 +198,14 @@ resource "helm_release" "temporal" {
187198
}
188199

189200
resource "kubernetes_persistent_volume_claim" "this" {
190-
count = length(var.storage.volume) > 0 ? 1 : 0
191201
depends_on = [kubernetes_namespace.this]
192202
metadata {
193203
name = "storage-${var.namespace}"
194204
namespace = var.namespace
195205
}
196206
spec {
197-
access_modes = ["ReadWriteMany"]
198-
volume_name = var.storage.volume
199-
storage_class_name = var.storage.class
207+
access_modes = ["ReadWriteOnce"]
208+
storage_class_name = "standard-rwo"
200209
resources {
201210
requests = {
202211
storage = "100Gi"
@@ -211,6 +220,7 @@ locals {
211220
appcd_secrets : concat([kubernetes_secret.appcd_secrets.metadata[0].name, kubernetes_secret.appcd_scm_secrets.metadata[0].name], var.additional_secrets)
212221
enable_ops : var.enable_ops
213222
domain : var.domain
223+
enable_ingress : true
214224
auth_enabled : var.stackgen_authentication.type != "none"
215225
scm_github_auth_url : try(var.scm_configuration.github_config.auth_url, "")
216226
scm_github_token_url : try(var.scm_configuration.github_config.token_url, "")
@@ -222,6 +232,8 @@ locals {
222232
appcd_admin_emails : var.admin_emails
223233
enable_storage : length(var.storage.volume) > 0
224234
appcd_service_account : local.appcd_service_account
235+
nginx : var.nginx_config
236+
worm_enabled : false
225237
})
226238
}
227239

0 commit comments

Comments
 (0)