fas2discourse: structure to deploy the fas2discourse-operator
Signed-off-by: David Kirwan <dkirwan@redhat.com>
This commit is contained in:
parent
953f2e5c4a
commit
a21dfeea4f
10 changed files with 108 additions and 4 deletions
|
@ -9,11 +9,23 @@
|
|||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
tasks:
|
||||
- name: fas2discourse Role
|
||||
include_role:
|
||||
name: fas2discourse
|
||||
tasks_from: create-keytab
|
||||
|
||||
|
||||
- hosts: os-control-stg #:os-control
|
||||
user: root
|
||||
gather_facts: false
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "/srv/private/ansible/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
tasks:
|
||||
- name: fas2discourse Role
|
||||
include_role:
|
||||
name: fas2discourse
|
||||
tasks_from: administration-tasks
|
||||
apply:
|
||||
tags:
|
||||
- generate-keytab
|
||||
|
|
|
@ -1 +1,5 @@
|
|||
fas2discourse_hostname: "fas2discourse.hostna.me"
|
||||
fas2discourse_namespace: "fas2discourse-operator"
|
||||
fas2discourse_project_description: "The fas2discourse-operator is responsible for synchronising group membership for users between Discourse and IPA."
|
||||
fas2discourse_keytab_file: "OVERRIDEME WITH A FILE LOOKUP"
|
||||
fas2discourse_discourse_apikey: "OVERRIDEME WITH A DISCOURSE APIKEY"
|
||||
|
|
|
@ -1,2 +1,15 @@
|
|||
---
|
||||
- include_tasks: create-keytab.yml
|
||||
- name: Create the directories to hold the templates
|
||||
file:
|
||||
path: "/root/ocp4/openshift-apps/fas2discourse-operator"
|
||||
state: directory
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0770
|
||||
recurse: yes
|
||||
|
||||
- include_tasks: create-operator-namespace.yml
|
||||
- include_tasks: create-keytab-secret.yml
|
||||
- include_tasks: create-discourse-apikey-secret.yml
|
||||
- include_tasks: deploy-fas2discourse-operator.yml
|
||||
|
||||
|
|
12
roles/fas2discourse/tasks/create-discourse-apikey-secret.yml
Normal file
12
roles/fas2discourse/tasks/create-discourse-apikey-secret.yml
Normal file
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
# generate the templates for project to be created
|
||||
- name: create the templates
|
||||
template:
|
||||
src: "secret-discourse-apikey.yml"
|
||||
dest: "/root/ocp4/openshift-apps/fas2discourse-operator/secret-discourse-apikey.yml"
|
||||
mode: 0770
|
||||
|
||||
# apply created openshift resources
|
||||
- name: oc apply resources
|
||||
command: "/root/bin/oc apply -f /root/ocp4/openshift-apps/fas2discourse-operator/secret-discourse-apikey.yml"
|
||||
|
24
roles/fas2discourse/tasks/create-keytab-secret.yml
Normal file
24
roles/fas2discourse/tasks/create-keytab-secret.yml
Normal file
|
@ -0,0 +1,24 @@
|
|||
---
|
||||
# generate the templates for project to be created
|
||||
- name: create the templates
|
||||
ansible.builtin.copy:
|
||||
src: "/etc/openshift_apps/fas2discourse/fas2discourse-keytab.kt"
|
||||
dest: "/root/ocp4/openshift-apps/fas2discourse-operator/fas2discourse-keytab.kt"
|
||||
mode: 0770
|
||||
|
||||
# generate the templates for project to be created
|
||||
- name: create the templates
|
||||
template:
|
||||
src: "secret-keytab.yml"
|
||||
dest: "/root/ocp4/openshift-apps/fas2discourse-operator/secret-keytab.yml"
|
||||
mode: 0770
|
||||
vars:
|
||||
fas2discourse_keytab_file:
|
||||
"{{ lookup('file',
|
||||
'/etc/openshift_apps/fas2discourse/fas2discourse-keytab.kt')
|
||||
}}"
|
||||
|
||||
# apply created openshift resources
|
||||
- name: oc apply resources
|
||||
command: "/root/bin/oc apply -f /root/ocp4/openshift-apps/fas2discourse-operator/secret-keytab.yml"
|
||||
|
11
roles/fas2discourse/tasks/create-operator-namespace.yml
Normal file
11
roles/fas2discourse/tasks/create-operator-namespace.yml
Normal file
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
# generate the templates for project to be created
|
||||
- name: create the templates
|
||||
template:
|
||||
src: "namespace.yml"
|
||||
dest: "/root/ocp4/openshift-apps/fas2discourse-operator/namespace.yml"
|
||||
mode: 0770
|
||||
|
||||
# apply created openshift resources
|
||||
- name: oc apply resources
|
||||
command: "/root/bin/oc apply -f /root/ocp4/openshift-apps/fas2discourse-operator/namespace.yml"
|
|
@ -0,0 +1,2 @@
|
|||
---
|
||||
|
8
roles/fas2discourse/templates/namespace.yml
Normal file
8
roles/fas2discourse/templates/namespace.yml
Normal file
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
kind: Namespace
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: "{{fas2discourse_namespace}}"
|
||||
annotations:
|
||||
openshift.io/description: "{{ fas2discourse_project_description }}"
|
||||
openshift.io/display-name: "{{ fas2discourse_namespace }}"
|
|
@ -0,0 +1,9 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: "{{ fas2discourse_namespace }}-discourse-apikey-secret"
|
||||
namespace: "{{ fas2discourse_namespace }}"
|
||||
data:
|
||||
fas2discourse-discourse-apikey:
|
||||
"{{ fas2discourse_discourse_apikey | b64encode }}"
|
||||
|
9
roles/fas2discourse/templates/secret-keytab.yml
Normal file
9
roles/fas2discourse/templates/secret-keytab.yml
Normal file
|
@ -0,0 +1,9 @@
|
|||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: "{{ fas2discourse_namespace }}-keytab-secret"
|
||||
namespace: "{{ fas2discourse_namespace }}"
|
||||
data:
|
||||
fas2discourse-keytab:
|
||||
"{{ fas2discourse_keytab_file | b64encode }}"
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue