You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by dm...@apache.org on 2019/07/12 10:51:59 UTC
[incubator-dlab] 01/01: [DLAB-813] Created terraform scripts for
Keycloak and Mysql
This is an automated email from the ASF dual-hosted git repository.
dmysakovets pushed a commit to branch DLAB-813
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 376bc5a4038b81468a7baba3f0d5fd7cc263fc40
Author: Dyoma33 <de...@gmail.com>
AuthorDate: Fri Jul 12 13:51:45 2019 +0300
[DLAB-813] Created terraform scripts for Keycloak and Mysql
---
.../terraform/aws/modules/keycloak/ingress.yaml | 14 +++++
.../terraform/aws/modules/keycloak/keycloak.tf | 56 ++++++++++++++++++
.../terraform/aws/modules/keycloak/mysql.tf | 68 ++++++++++++++++++++++
.../terraform/aws/modules/keycloak/variables.tf | 0
4 files changed, 138 insertions(+)
diff --git a/infrastructure-provisioning/terraform/aws/modules/keycloak/ingress.yaml b/infrastructure-provisioning/terraform/aws/modules/keycloak/ingress.yaml
new file mode 100644
index 0000000..b165058
--- /dev/null
+++ b/infrastructure-provisioning/terraform/aws/modules/keycloak/ingress.yaml
@@ -0,0 +1,14 @@
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+ name: ingress-keycloak
+ #annotations:
+ # ingress.kubernetes.io/rewrite-target: /
+spec:
+ rules:
+ - http:
+ paths:
+ - path: /keycloak
+ backend:
+ serviceName: keycloak
+ servicePort: 31088
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/modules/keycloak/keycloak.tf b/infrastructure-provisioning/terraform/aws/modules/keycloak/keycloak.tf
new file mode 100644
index 0000000..ff0807d
--- /dev/null
+++ b/infrastructure-provisioning/terraform/aws/modules/keycloak/keycloak.tf
@@ -0,0 +1,56 @@
+resource "helm_release" "keycloak" {
+ name = "keycloak"
+ chart = "stable/keycloak"
+ wait = false
+
+ set {
+ name = "keycloak.username"
+ value = "dlab-admin"
+ }
+
+ set {
+ name = "keycloak.password"
+ value = "12345o"
+ }
+
+ set {
+ name = "keycloak.persistence.dbVendor"
+ value = "mysql"
+ }
+
+ set {
+ name = "keycloak.persistence.dbName"
+ value = "keycloak"
+ }
+
+ set {
+ name = "keycloak.persistence.dbHost"
+ value = "keycloak-mysql"
+ }
+
+ set {
+ name = "keycloak.persistence.dbPort"
+ value = "3306"
+ }
+
+ set {
+ name = "keycloak.persistence.dbUser"
+ value = "keycloak"
+ }
+
+ set {
+ name = "keycloak.persistence.dbPassword"
+ value = "1234567890o"
+ }
+
+ set {
+ name = "keycloak.service.type"
+ value = "NodePort"
+ }
+
+ set {
+ name = "keycloak.service.nodePort"
+ value = "31088"
+ }
+
+}
\ No newline at end of file
diff --git a/infrastructure-provisioning/terraform/aws/modules/keycloak/mysql.tf b/infrastructure-provisioning/terraform/aws/modules/keycloak/mysql.tf
new file mode 100644
index 0000000..367a4b7
--- /dev/null
+++ b/infrastructure-provisioning/terraform/aws/modules/keycloak/mysql.tf
@@ -0,0 +1,68 @@
+resource "helm_release" "keycloak-mysql" {
+ name = "keycloak-mysql"
+ chart = "stable/mysql"
+ wait = false
+
+ set {
+ name = "mysqlRootPassword"
+ value = "1234567890o"
+ }
+
+ set {
+ name = "mysqlUser"
+ value = "keycloak"
+ }
+
+ set {
+ name = "mysqlPassword"
+ value = "1234567890o"
+ }
+
+ set {
+ name = "mysqlDatabase"
+ value = "keycloak"
+ }
+
+ set {
+ name = "persistence.existingClaim"
+ value = "${kubernetes_persistent_volume_claim.example.metadata.0.name}"
+ }
+}
+
+
+provider "kubernetes" {
+ }
+
+resource "kubernetes_persistent_volume" "example" {
+ metadata {
+ name = "mysql-keycloak-pv2"
+ }
+ spec {
+ capacity = {
+ storage = "8Gi"
+ }
+ access_modes = ["ReadWriteMany"]
+ persistent_volume_source {
+ host_path {
+ path = "/home/dlab-user/keycloak-pv2"
+ }
+ }
+ }
+}
+
+
+resource "kubernetes_persistent_volume_claim" "example" {
+ metadata {
+ name = "mysql-keycloak-pvc2"
+ }
+ spec {
+ access_modes = ["ReadWriteMany"]
+ resources {
+ requests = {
+ storage = "5Gi"
+ }
+ }
+ volume_name = "${kubernetes_persistent_volume.example.metadata.0.name}"
+ }
+}
+
diff --git a/infrastructure-provisioning/terraform/aws/modules/keycloak/variables.tf b/infrastructure-provisioning/terraform/aws/modules/keycloak/variables.tf
new file mode 100644
index 0000000..e69de29
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org