diff --git a/deploy/crds/tower_v1alpha1_tower_cr.yaml b/deploy/crds/tower_v1alpha1_tower_cr.yaml index 9c3de1b0..29dfa2ce 100644 --- a/deploy/crds/tower_v1alpha1_tower_cr.yaml +++ b/deploy/crds/tower_v1alpha1_tower_cr.yaml @@ -11,3 +11,4 @@ spec: tower_postgres_pass: awxpass tower_postgres_image: postgres:9.6 tower_postgres_storage_request: 8Gi + tower_memcached_image: 'memcached:1.5' diff --git a/roles/tower/tasks/main.yml b/roles/tower/tasks/main.yml index 6fc5190d..79c8514a 100644 --- a/roles/tower/tasks/main.yml +++ b/roles/tower/tasks/main.yml @@ -1,8 +1,7 @@ --- -- name: Ensure configured Tower Postgres resources exist in the cluster. +- name: Ensure configured Tower resources exist in the cluster. k8s: definition: "{{ lookup('template', item) | from_yaml }}" with_items: - - tower_postgres_secret.yaml.j2 - - tower_postgres_statefulset.yaml.j2 - - tower_postgres_service.yaml.j2 + - tower_postgres.yaml.j2 + - tower_memcached.yaml.j2 diff --git a/roles/tower/templates/tower_memcached.yaml.j2 b/roles/tower/templates/tower_memcached.yaml.j2 new file mode 100644 index 00000000..5d1f6a05 --- /dev/null +++ b/roles/tower/templates/tower_memcached.yaml.j2 @@ -0,0 +1,39 @@ +# Memcached Deployment. +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: '{{ meta.name }}-memcached' + namespace: '{{ meta.namespace }}' + labels: + app: tower-memcached +spec: + replicas: 1 + template: + metadata: + labels: + app: tower-memcached + spec: + containers: + - name: memcached + image: '{{ tower_memcached_image }}' + ports: + - containerPort: 11211 + +# Memcached Service. +--- +apiVersion: v1 +kind: Service +metadata: + name: '{{ meta.name }}-memcached' + namespace: '{{ meta.namespace }}' + labels: + app: tower-memcached +spec: + clusterIP: None + ports: + - port: 11211 + protocol: TCP + targetPort: 11211 + selector: + app: tower-memcached diff --git a/roles/tower/templates/tower_postgres_statefulset.yaml.j2 b/roles/tower/templates/tower_postgres.yaml.j2 similarity index 69% rename from roles/tower/templates/tower_postgres_statefulset.yaml.j2 rename to roles/tower/templates/tower_postgres.yaml.j2 index 7a8ce695..219b5e69 100644 --- a/roles/tower/templates/tower_postgres_statefulset.yaml.j2 +++ b/roles/tower/templates/tower_postgres.yaml.j2 @@ -1,3 +1,14 @@ +# Postgres Secret. +--- +apiVersion: v1 +kind: Secret +metadata: + name: '{{ meta.name }}-postgres-pass' + namespace: {{ meta.namespace }} +data: + password: {{ tower_postgres_pass | b64encode }} + +# Postgres StatefulSet. --- apiVersion: v1 kind: StatefulSet @@ -20,7 +31,7 @@ spec: app: tower-postgres spec: containers: - - image: '{{ mariadb_image }}' + - image: '{{ tower_postgres_image }}' name: postgres env: - name: POSTGRES_DB @@ -48,3 +59,20 @@ spec: resources: requests: storage: '{{ tower_postgres_storage_request }}' + +# Postgres Service. +--- +apiVersion: v1 +kind: Service +metadata: + name: '{{ meta.name }}-postgres' + namespace: '{{ meta.namespace }}' + labels: + app: tower-postgres +spec: + ports: + - port: 5432 + clusterIP: None + selector: + app: tower-postgres + diff --git a/roles/tower/templates/tower_postgres_secret.yaml.j2 b/roles/tower/templates/tower_postgres_secret.yaml.j2 deleted file mode 100644 index db876369..00000000 --- a/roles/tower/templates/tower_postgres_secret.yaml.j2 +++ /dev/null @@ -1,8 +0,0 @@ ---- -apiVersion: v1 -kind: Secret -metadata: - name: '{{ meta.name }}-postgres-pass' - namespace: {{ meta.namespace }} -data: - password: {{ tower_postgres_pass | b64encode }} diff --git a/roles/tower/templates/tower_postgres_service.yaml.j2 b/roles/tower/templates/tower_postgres_service.yaml.j2 deleted file mode 100644 index 76df619a..00000000 --- a/roles/tower/templates/tower_postgres_service.yaml.j2 +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: '{{ meta.name }}-postgres' - namespace: '{{ meta.namespace }}' - labels: - app: tower-postgres -spec: - ports: - - port: 5432 - clusterIP: None - selector: - app: tower-postgres