serviceaccount.yml 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. ---
  2. - name: Create temporary directory for admin kubeconfig
  3. command: mktemp -u /tmp/openshift-ansible-XXXXXXX.kubeconfig
  4. register: nuage_tmp_conf_mktemp
  5. changed_when: False
  6. run_once: True
  7. delegate_to: "{{ nuage_ca_master }}"
  8. - set_fact:
  9. nuage_tmp_conf: "{{ nuage_tmp_conf_mktemp.stdout }}"
  10. run_once: True
  11. delegate_to: "{{ nuage_ca_master }}"
  12. - name: Copy Configuration to temporary conf
  13. command: >
  14. cp {{ openshift.common.config_base }}/master/admin.kubeconfig {{nuage_tmp_conf}}
  15. changed_when: false
  16. run_once: True
  17. delegate_to: "{{ nuage_ca_master }}"
  18. - name: Create Admin Service Account
  19. oc_serviceaccount:
  20. kubeconfig: "{{ openshift_master_config_dir }}/admin.kubeconfig"
  21. name: nuage
  22. namespace: default
  23. state: present
  24. run_once: True
  25. delegate_to: "{{ nuage_ca_master }}"
  26. - name: Configure role/user permissions
  27. command: >
  28. {{ openshift.common.client_binary }} adm {{item}}
  29. --config={{ nuage_tmp_conf }}
  30. with_items: "{{nuage_tasks}}"
  31. register: osnuage_perm_task
  32. failed_when: "'the object has been modified' not in osnuage_perm_task.stderr and osnuage_perm_task.rc != 0"
  33. changed_when: osnuage_perm_task.rc == 0
  34. run_once: True
  35. delegate_to: "{{ nuage_ca_master }}"
  36. - name: Generate the node client config
  37. command: >
  38. {{ openshift.common.client_binary }} adm create-api-client-config
  39. --certificate-authority={{ openshift_master_ca_cert }}
  40. --client-dir={{ cert_output_dir }}
  41. --master={{ openshift.master.api_url }}
  42. --public-master={{ openshift.master.api_url }}
  43. --signer-cert={{ openshift_master_ca_cert }}
  44. --signer-key={{ openshift_master_ca_key }}
  45. --signer-serial={{ openshift_master_ca_serial }}
  46. --basename='nuage'
  47. --user={{ nuage_service_account }}
  48. delegate_to: "{{ nuage_ca_master }}"
  49. run_once: True
  50. - name: Clean temporary configuration file
  51. command: >
  52. rm -f {{nuage_tmp_conf}}
  53. changed_when: false
  54. delegate_to: "{{ nuage_ca_master }}"
  55. run_once: True