Jeff Bride
2019-02-21 01e6a072c589f7e8f3bf5d2678b945927516fd70
ansible/roles/ocp-workload-fuse-ignite/tasks/workload.yml
@@ -11,132 +11,56 @@
    msg: "User does not have cluster-admin rights to install Fuse Online"
  when: default_project_result is failed
- name: Create project for workload; project =  {{ocp_project}}
  shell: "oc new-project {{ocp_project}} --display-name={{ocp_project}}"
# credentials for accessing registry.redhat.io
#- name: Create project for workload; project =  {{ocp_project}}
#  shell: "oc create secret docker-registry rhcc --docker-server=registry.redhat.io --docker-username={{oreg_user}} --docker-password={{oreg_pass}} --docker-email=honghuac@gmail.com"
- name: "Label namespace"
  command: "oc label namespace {{ocp_project}} AAD='{{guid}}'"
  command: "oc label namespace {{ocp_project}} AAD='{{guid}}' --as={{ocp_username}}"
- name: Make sure we go back do default project
  shell: "oc project default"
- name: Make sure we go back do {{ocp_project}} project
  shell: "oc project {{ocp_project}}"
# Note; depending on the environment, OCP projects may or may not have default limit ranges
- name: Delete default limitrange
- name: List existing CRDs
  shell: |
    oc delete limitrange {{ocp_project}}-core-resource-limits -n {{ocp_project}}
  ignore_errors: true
    oc get crd
- name: Create a new limitrange
- name: Ensure the following directory is refreshed in remote, /tmp/{{ocp_project}}
  file:
    path: "/tmp/{{ocp_project}}"
    state: absent
- file:
    path: "/tmp/{{ocp_project}}"
    state: directory
- name: Register a new CRD for Fuse Online
  template:
    src: templates/limitrange.yaml.j2
    dest: /tmp/{{ocp_project}}_limitrange.yaml
- shell: |
    oc create -f /tmp/{{ocp_project}}_limitrange.yaml -n {{ocp_project}}
    src: templates/install_ocp.sh
    dest: /tmp/{{ocp_project}}/install_ocp.sh
- script: /tmp/{{ocp_project}}/install_ocp.sh --setup
- name: Grant installation permission to user
  template:
    src: templates/install_ocp.sh
    dest: /tmp/{{ocp_project}}/install_ocp.sh
- script: /tmp/{{ocp_project}}/install_ocp.sh --grant {{ocp_username}}
# ######                 Fuse Online            ##########
- name: Create serviceaccount-as-oauthclient
  shell: "oc create -f {{syndesisio_sa_yml}} -n {{ocp_project}}"
- name: Create syndesisio template; {{syndesisio_template_yml}}
  shell: "oc create -f {{syndesisio_template_yml}} -n {{ocp_project}}"
- name: delete temp dir if it exists
  file:
      path: /tmp/{{ocp_project}}
      state: absent
- file:
      path: /tmp/{{ocp_project}}
      state: directory
- name: Load fuse-ignite-is
  shell: "oc create -f {{ fuse_ignite_is_yaml }} -n {{ocp_project}}"
- name: Create the syndesisio app
  shell: |
      oc new-app {{ignite_template_name}} \
      -p ROUTE_HOSTNAME=fuse.{{ocp_project}}.{{ocp_apps_domain}} \
      -p OPENSHIFT_MASTER={{ocp_domain}} \
      -p OPENSHIFT_PROJECT={{ocp_project}} \
      -p POSTGRESQL_MEMORY_LIMIT={{POSTGRESQL_MEMORY_LIMIT}} \
      -p PROMETHEUS_MEMORY_LIMIT={{PROMETHEUS_MEMORY_LIMIT}} \
      -p META_MEMORY_LIMIT={{META_MEMORY_LIMIT}} \
      -p SERVER_MEMORY_LIMIT={{SERVER_MEMORY_LIMIT}} \
      -p OPENSHIFT_OAUTH_CLIENT_SECRET=$(oc sa get-token syndesis-oauth-client -n {{ocp_project}}) \
      -p MAX_INTEGRATIONS_PER_USER={{MAX_INTEGRATIONS_PER_USER}} \
      -p IMAGE_STREAM_NAMESPACE={{ocp_project}} \
      -n {{ocp_project}}
- name: "Resume {{with_items}}"
  command: oc rollout resume dc/"{{ item }}" -n "{{ ocp_project }}"
  with_items:
    - syndesis-db
    - syndesis-oauthproxy
- include_tasks: wait_for_deploy.yml
  vars:
    pod_to_wait:
    - syndesis-db
    - syndesis-oauthproxy
- name: resume todo
  shell: oc rollout resume dc/todo -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - todo
- name: Install Fuse Online
  template:
    src: templates/install_ocp.sh
    dest: /tmp/{{ocp_project}}/install_ocp.sh
- script: /tmp/{{ocp_project}}/install_ocp.sh
- name: Scale up broker-amq
  shell: |
      oc scale dc/broker-amq --replicas=1 -n {{ocp_project}}
- name: resume broker-amq
  shell: oc rollout resume dc/broker-amq -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - "broker-amq"
- name: resume syndesis-meta
  shell: oc rollout resume dc/syndesis-meta -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - syndesis-meta
- name: resume syndesis-server
  shell: oc rollout resume dc/syndesis-server -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - syndesis-server
- name: resume syndesis-ui
  shell: oc rollout resume dc/syndesis-ui -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - syndesis-ui
- name: resume syndesis-prometheus
  shell: oc rollout resume dc/syndesis-prometheus -n {{ocp_project}}
- include_tasks: ./wait_for_deploy.yml
  static: no
  vars:
    pod_to_wait:
      - syndesis-prometheus
# ########################################################
# ######        Coolstore Catalog Service       ##########