diff options
19 files changed, 173 insertions, 142 deletions
| diff --git a/.tito/packages/openshift-ansible b/.tito/packages/openshift-ansible index 9bbf7f181..6ca85e4f4 100644 --- a/.tito/packages/openshift-ansible +++ b/.tito/packages/openshift-ansible @@ -1 +1 @@ -3.7.0-0.159.0 ./ +3.7.0-0.168.0 ./ diff --git a/files/origin-components/template-service-broker-registration.yaml b/files/origin-components/template-service-broker-registration.yaml index 2086978f0..95fb72924 100644 --- a/files/origin-components/template-service-broker-registration.yaml +++ b/files/origin-components/template-service-broker-registration.yaml @@ -9,8 +9,8 @@ parameters:    required: true  objects:  # register the tsb with the service catalog -- apiVersion: servicecatalog.k8s.io/v1alpha1 -  kind: ServiceBroker +- apiVersion: servicecatalog.k8s.io/v1beta1 +  kind: ClusterServiceBroker    metadata:      name: template-service-broker    spec: diff --git a/openshift-ansible.spec b/openshift-ansible.spec index 0372960c6..dd00fafee 100644 --- a/openshift-ansible.spec +++ b/openshift-ansible.spec @@ -10,7 +10,7 @@  Name:           openshift-ansible  Version:        3.7.0 -Release:        0.159.0%{?dist} +Release:        0.168.0%{?dist}  Summary:        Openshift and Atomic Enterprise Ansible  License:        ASL 2.0  URL:            https://github.com/openshift/openshift-ansible @@ -280,6 +280,49 @@ Atomic OpenShift Utilities includes  %changelog +* Fri Oct 20 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.168.0 +-  + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.167.0 +-  + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.166.0 +-  + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.165.0 +-  + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.164.0 +- Change to service-signer.crt for template_service_broker CA_BUNDLE +  (staebler@redhat.com) +- Use service-signer.crt for ca_bundle passed to clusterservicebroker +  (staebler@redhat.com) +- Rename ServiceBroker to ClusterServiceBroker for ansible_service_broker task. +  (staebler@redhat.com) +- Add apiserver.crt to service-catalog controller-manager deployment. +  (staebler@redhat.com) +- Remove redundant faulty role binding ifrom +  kubeservicecatalog_roles_bindings.yml (staebler@redhat.com) +- Update service catalog playbook for service-catalog rc1 (staebler@redhat.com) + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.163.0 +- set use_manageiq as default (efreiber@redhat.com) + +* Thu Oct 19 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.162.0 +- Wait longer for stable GCP instances (ccoleman@redhat.com) +- Remove unneeded master config updates during upgrades (mgugino@redhat.com) + +* Wed Oct 18 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.161.0 +-  + +* Wed Oct 18 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.160.0 +- Fix pvc selector default to be empty dict instead of string +  (zgalor@redhat.com) +- Fix typo in setting prom-proxy memory limit (zgalor@redhat.com) +- Do not remove files for bootstrap if resolv or dns. (kwoodson@redhat.com) +- Fix missing docker option signature-verification (mgugino@redhat.com) +- Fix prometheus role nfs (zgalor@redhat.com) +  * Wed Oct 18 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.159.0  - Updating openshift-ansible.spec file to include files dir    (sdodson@redhat.com) diff --git a/playbooks/common/openshift-cluster/upgrades/v3_4/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_4/master_config_upgrade.yml index 763922439..52458e03c 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_4/master_config_upgrade.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_4/master_config_upgrade.yml @@ -1,22 +1,6 @@  ---  - modify_yaml:      dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginConfig' -    yaml_value: "{{ openshift.master.admission_plugin_config }}" -  when: "'admission_plugin_config' in openshift.master" - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginOrderOverride' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'kubernetesMasterConfig.admissionConfig' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml"      yaml_key: 'controllerConfig.serviceServingCert.signer.certFile'      yaml_value: service-signer.crt diff --git a/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml index 763922439..52458e03c 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml @@ -1,22 +1,6 @@  ---  - modify_yaml:      dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginConfig' -    yaml_value: "{{ openshift.master.admission_plugin_config }}" -  when: "'admission_plugin_config' in openshift.master" - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginOrderOverride' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'kubernetesMasterConfig.admissionConfig' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml"      yaml_key: 'controllerConfig.serviceServingCert.signer.certFile'      yaml_value: service-signer.crt diff --git a/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml index 763922439..52458e03c 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml @@ -1,22 +1,6 @@  ---  - modify_yaml:      dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginConfig' -    yaml_value: "{{ openshift.master.admission_plugin_config }}" -  when: "'admission_plugin_config' in openshift.master" - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginOrderOverride' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'kubernetesMasterConfig.admissionConfig' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml"      yaml_key: 'controllerConfig.serviceServingCert.signer.certFile'      yaml_value: service-signer.crt diff --git a/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml index c21ab97bc..c26e8f744 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml @@ -1,22 +1,6 @@  ---  - modify_yaml:      dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginConfig' -    yaml_value: "{{ openshift.master.admission_plugin_config }}" -  when: "'admission_plugin_config' in openshift.master" - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'admissionConfig.pluginOrderOverride' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'kubernetesMasterConfig.admissionConfig' -    yaml_value: - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml"      yaml_key: 'controllerConfig.election.lockName'      yaml_value: 'openshift-master-controllers' diff --git a/playbooks/common/openshift-master/additional_config.yml b/playbooks/common/openshift-master/additional_config.yml index 1b3eb268a..e1472ce38 100644 --- a/playbooks/common/openshift-master/additional_config.yml +++ b/playbooks/common/openshift-master/additional_config.yml @@ -25,7 +25,7 @@    - role: openshift_hosted_templates      registry_url: "{{ openshift.master.registry_url }}"    - role: openshift_manageiq -    when: openshift_use_manageiq | default(false) | bool +    when: openshift_use_manageiq | default(true) | bool    - role: cockpit      when:      - openshift.common.is_atomic diff --git a/roles/ansible_service_broker/tasks/install.yml b/roles/ansible_service_broker/tasks/install.yml index 0f4b71124..c0384b7c4 100644 --- a/roles/ansible_service_broker/tasks/install.yml +++ b/roles/ansible_service_broker/tasks/install.yml @@ -30,8 +30,12 @@      ansible_service_broker_image: "{{ ansible_service_broker_image_prefix }}ansible-service-broker:{{ ansible_service_broker_image_tag }}"      ansible_service_broker_etcd_image: "{{ ansible_service_broker_etcd_image_prefix }}etcd:{{ ansible_service_broker_etcd_image_tag }}" +- set_fact: +    openshift_master_config_dir: "{{ openshift.common.config_base }}/master" +  when: openshift_master_config_dir is undefined +  - slurp: -    src: "{{ ansible_service_broker_certs_dir }}/ca.crt" +    src: "{{ openshift_master_config_dir }}/service-signer.crt"    register: catalog_ca @@ -327,12 +331,12 @@    oc_obj:      name: ansible-service-broker      state: present -    kind: ServiceBroker +    kind: ClusterServiceBroker      content:        path: /tmp/brokerout        data: -        apiVersion: servicecatalog.k8s.io/v1alpha1 -        kind: ServiceBroker +        apiVersion: servicecatalog.k8s.io/v1beta1 +        kind: ClusterServiceBroker          metadata:            name: ansible-service-broker          spec: diff --git a/roles/openshift_gcp/templates/provision.j2.sh b/roles/openshift_gcp/templates/provision.j2.sh index d72a11de1..64c7cd019 100644 --- a/roles/openshift_gcp/templates/provision.j2.sh +++ b/roles/openshift_gcp/templates/provision.j2.sh @@ -313,7 +313,7 @@ fi  # wait until all node groups are stable  {% for node_group in openshift_gcp_node_group_config %}  # wait for stable {{ node_group.name }} -( gcloud --project "{{ openshift_gcp_project }}" compute instance-groups managed wait-until-stable "{{ openshift_gcp_prefix }}ig-{{ node_group.suffix }}" --zone "{{ openshift_gcp_zone }}" --timeout=300) & +( gcloud --project "{{ openshift_gcp_project }}" compute instance-groups managed wait-until-stable "{{ openshift_gcp_prefix }}ig-{{ node_group.suffix }}" --zone "{{ openshift_gcp_zone }}" --timeout=600 ) &  {% endfor %} diff --git a/roles/openshift_prometheus/templates/prometheus_deployment.j2 b/roles/openshift_prometheus/templates/prometheus_deployment.j2 index 98c117f19..66eab6df4 100644 --- a/roles/openshift_prometheus/templates/prometheus_deployment.j2 +++ b/roles/openshift_prometheus/templates/prometheus_deployment.j2 @@ -38,7 +38,7 @@ spec:              cpu: "{{openshift_prometheus_oauth_proxy_cpu_requests}}"  {% endif %}            limits: -{% if openshift_prometheus_memory_requests_limit_proxy is defined and openshift_prometheus_oauth_proxy_memory_limit is not none %} +{% if openshift_prometheus_oauth_proxy_memory_limit is defined and openshift_prometheus_oauth_proxy_memory_limit is not none %}              memory: "{{openshift_prometheus_oauth_proxy_memory_limit}}"  {% endif %}  {% if openshift_prometheus_oauth_proxy_cpu_limit is defined and openshift_prometheus_oauth_proxy_cpu_limit is not none %} diff --git a/roles/openshift_service_catalog/files/kubeservicecatalog_roles_bindings.yml b/roles/openshift_service_catalog/files/kubeservicecatalog_roles_bindings.yml index 71e21a269..56b2d1463 100644 --- a/roles/openshift_service_catalog/files/kubeservicecatalog_roles_bindings.yml +++ b/roles/openshift_service_catalog/files/kubeservicecatalog_roles_bindings.yml @@ -4,22 +4,23 @@ metadata:    name: service-catalog  objects: -- kind: ClusterRole -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRole    metadata:      name: servicecatalog-serviceclass-viewer    rules:    - apiGroups:      - servicecatalog.k8s.io      resources: -    - serviceclasses +    - clusterserviceclasses +    - clusterserviceplans      verbs:      - list      - watch      - get -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: servicecatalog-serviceclass-viewer-binding    roleRef: @@ -37,8 +38,8 @@ objects:    metadata:      name: service-catalog-apiserver -- kind: ClusterRole -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRole    metadata:      name: sar-creator    rules: @@ -49,17 +50,19 @@ objects:      verbs:      - create -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: service-catalog-sar-creator-binding    roleRef:      name: sar-creator -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-apiserver +  subjects: +  - kind: ServiceAccount +    name: service-catalog-apiserver +    namespace: kube-service-catalog -- kind: ClusterRole -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRole    metadata:      name: namespace-viewer    rules: @@ -72,26 +75,30 @@ objects:      - watch      - get -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: service-catalog-namespace-viewer-binding    roleRef:      name: namespace-viewer -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-apiserver +  subjects: +  - kind: ServiceAccount +    name: service-catalog-apiserver +    namespace: kube-service-catalog -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: service-catalog-controller-namespace-viewer-binding    roleRef:      name: namespace-viewer -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-controller +  subjects: +  - kind: ServiceAccount +    name: service-catalog-controller +    namespace: kube-service-catalog -- kind: ClusterRole -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRole    metadata:      name: service-catalog-controller    rules: @@ -102,6 +109,7 @@ objects:      verbs:      - create      - update +    - patch      - delete      - get      - list @@ -109,19 +117,22 @@ objects:    - apiGroups:      - servicecatalog.k8s.io      resources: -    - brokers/status -    - instances/status -    - bindings/status +    - clusterservicebrokers/status +    - serviceinstances/status +    - servicebindings/status +    - servicebindings/finalizers +    - serviceinstances/reference      verbs:      - update    - apiGroups:      - servicecatalog.k8s.io      resources: -    - brokers -    - instances -    - bindings +    - clusterservicebrokers +    - serviceinstances +    - servicebindings      verbs:      - list +    - get      - watch    - apiGroups:      - "" @@ -133,7 +144,8 @@ objects:    - apiGroups:      - servicecatalog.k8s.io      resources: -    - serviceclasses +    - clusterserviceclasses +    - clusterserviceplans      verbs:      - create      - delete @@ -154,17 +166,19 @@ objects:      - list      - watch -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: service-catalog-controller-binding    roleRef:      name: service-catalog-controller -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-controller - -- kind: Role -  apiVersion: v1 +  subjects: +  - kind: ServiceAccount +    name: service-catalog-controller +    namespace: kube-service-catalog +   +- apiVersion: authorization.openshift.io/v1 +  kind: Role    metadata:      name: endpoint-accessor    rules: @@ -179,21 +193,25 @@ objects:      - create      - update -- kind: RoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: RoleBinding    metadata: -    name: endpoint-accessor-binding +    name: endpointer-accessor-binding    roleRef:      name: endpoint-accessor      namespace: kube-service-catalog -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-controller +  subjects: +  - kind: ServiceAccount +    namespace: kube-service-catalog +    name: service-catalog-controller -- kind: ClusterRoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: ClusterRoleBinding    metadata:      name: system:auth-delegator-binding    roleRef:      name: system:auth-delegator -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-apiserver +  subjects: +  - kind: ServiceAccount +    name: service-catalog-apiserver +    namespace: kube-service-catalog diff --git a/roles/openshift_service_catalog/files/kubesystem_roles_bindings.yml b/roles/openshift_service_catalog/files/kubesystem_roles_bindings.yml index f6ee0955d..e1af51ce6 100644 --- a/roles/openshift_service_catalog/files/kubesystem_roles_bindings.yml +++ b/roles/openshift_service_catalog/files/kubesystem_roles_bindings.yml @@ -4,8 +4,8 @@ metadata:    name: kube-system-service-catalog  objects: -- kind: Role -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: Role    metadata:      name: extension-apiserver-authentication-reader      namespace: ${KUBE_SYSTEM_NAMESPACE} @@ -19,16 +19,18 @@ objects:      verbs:      - get -- kind: RoleBinding -  apiVersion: v1 +- apiVersion: authorization.openshift.io/v1 +  kind: RoleBinding    metadata:      name: extension-apiserver-authentication-reader-binding      namespace: ${KUBE_SYSTEM_NAMESPACE}    roleRef:      name: extension-apiserver-authentication-reader -    namespace: kube-system -  userNames: -    - system:serviceaccount:kube-service-catalog:service-catalog-apiserver +    namespace: ${KUBE_SYSTEM_NAMESPACE} +  subjects: +  - kind: ServiceAccount +    name: service-catalog-apiserver +    namespace: kube-service-catalog  parameters:  - description: Do not change this value. diff --git a/roles/openshift_service_catalog/tasks/generate_certs.yml b/roles/openshift_service_catalog/tasks/generate_certs.yml index cc897b032..416bdac70 100644 --- a/roles/openshift_service_catalog/tasks/generate_certs.yml +++ b/roles/openshift_service_catalog/tasks/generate_certs.yml @@ -36,19 +36,28 @@      - name: tls.key        path: "{{ generated_certs_dir }}/apiserver.key" +- name: Create service-catalog-ssl secret +  oc_secret: +    state: present +    name: service-catalog-ssl +    namespace: kube-service-catalog +    files: +    - name: tls.crt +      path: "{{ generated_certs_dir }}/apiserver.crt" +  - slurp:      src: "{{ generated_certs_dir }}/ca.crt"    register: apiserver_ca  - shell: > -    oc get apiservices.apiregistration.k8s.io/v1alpha1.servicecatalog.k8s.io -n kube-service-catalog || echo "not found" +    oc get apiservices.apiregistration.k8s.io/v1beta1.servicecatalog.k8s.io -n kube-service-catalog || echo "not found"    register: get_apiservices    changed_when: no  - name: Create api service    oc_obj:      state: present -    name: v1alpha1.servicecatalog.k8s.io +    name: v1beta1.servicecatalog.k8s.io      kind: apiservices.apiregistration.k8s.io      namespace: "kube-service-catalog"      content: @@ -57,10 +66,10 @@          apiVersion: apiregistration.k8s.io/v1beta1          kind: APIService          metadata: -          name: v1alpha1.servicecatalog.k8s.io +          name: v1beta1.servicecatalog.k8s.io          spec:            group: servicecatalog.k8s.io -          version: v1alpha1 +          version: v1beta1            service:              namespace: "kube-service-catalog"              name: apiserver diff --git a/roles/openshift_service_catalog/tasks/install.yml b/roles/openshift_service_catalog/tasks/install.yml index e202ae173..1e94c8c5d 100644 --- a/roles/openshift_service_catalog/tasks/install.yml +++ b/roles/openshift_service_catalog/tasks/install.yml @@ -90,14 +90,14 @@    vars:      original_content: "{{ edit_yaml.results.results[0] | to_yaml }}"    when: -    - not edit_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['instances', 'bindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not edit_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch']) +    - not edit_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['serviceinstances', 'servicebindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not edit_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch'])  # only do this if we don't already have the updated role info  - name: update edit role for service catalog and pod preset access    command: >      oc replace -f {{ mktemp.stdout }}/edit_sc_patch.yml    when: -    - not edit_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['instances', 'bindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not edit_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch']) +    - not edit_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['serviceinstances', 'servicebindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not edit_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch'])  - oc_obj:      name: admin @@ -113,14 +113,14 @@    vars:      original_content: "{{ admin_yaml.results.results[0] | to_yaml }}"    when: -    - not admin_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['instances', 'bindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not admin_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch']) +    - not admin_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['serviceinstances', 'servicebindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not admin_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch'])  # only do this if we don't already have the updated role info  - name: update admin role for service catalog and pod preset access    command: >      oc replace -f {{ mktemp.stdout }}/admin_sc_patch.yml    when: -    - not admin_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['instances', 'bindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not admin_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch']) +    - not admin_yaml.results.results[0] | oo_contains_rule(['servicecatalog.k8s.io'], ['serviceinstances', 'servicebindings'], ['create', 'update', 'delete', 'get', 'list', 'watch']) or not admin_yaml.results.results[0] | oo_contains_rule(['settings.k8s.io'], ['podpresets'], ['create', 'update', 'delete', 'get', 'list', 'watch'])  - oc_adm_policy_user:      namespace: kube-service-catalog diff --git a/roles/openshift_service_catalog/tasks/remove.yml b/roles/openshift_service_catalog/tasks/remove.yml index 2fb1ec440..96ae61507 100644 --- a/roles/openshift_service_catalog/tasks/remove.yml +++ b/roles/openshift_service_catalog/tasks/remove.yml @@ -1,7 +1,7 @@  ---  - name: Remove Service Catalog APIServer    command: > -    oc delete apiservices.apiregistration.k8s.io/v1alpha1.servicecatalog.k8s.io --ignore-not-found -n kube-service-catalog +    oc delete apiservices.apiregistration.k8s.io/v1beta1.servicecatalog.k8s.io --ignore-not-found -n kube-service-catalog  - name: Remove Policy Binding    command: > @@ -13,7 +13,7 @@  #    state: absent  #    namespace: "kube-service-catalog"  #    kind: apiservices.apiregistration.k8s.io -#    name: v1alpha1.servicecatalog.k8s.io +#    name: v1beta1.servicecatalog.k8s.io  - name: Remove Service Catalog API Server route    oc_obj: diff --git a/roles/openshift_service_catalog/templates/api_server.j2 b/roles/openshift_service_catalog/templates/api_server.j2 index c09834fd4..5d5352c1c 100644 --- a/roles/openshift_service_catalog/templates/api_server.j2 +++ b/roles/openshift_service_catalog/templates/api_server.j2 @@ -41,7 +41,9 @@ spec:          - --cors-allowed-origins          - {{ cors_allowed_origin }}          - --admission-control -        - "KubernetesNamespaceLifecycle" +        - KubernetesNamespaceLifecycle,DefaultServicePlan,ServiceBindingsLifecycle,ServicePlanChangeValidator,BrokerAuthSarCheck +        - --feature-gates +        - OriginatingIdentity=true          image: {{ openshift_service_catalog_image_prefix }}service-catalog:{{ openshift_service_catalog_image_version }}          command: ["/usr/bin/apiserver"]          imagePullPolicy: Always diff --git a/roles/openshift_service_catalog/templates/controller_manager.j2 b/roles/openshift_service_catalog/templates/controller_manager.j2 index 1bbc0fa2c..2272cbb44 100644 --- a/roles/openshift_service_catalog/templates/controller_manager.j2 +++ b/roles/openshift_service_catalog/templates/controller_manager.j2 @@ -31,7 +31,12 @@ spec:          args:          - -v          - "5" -        - "--leader-election-namespace=$(K8S_NAMESPACE)" +        - --leader-election-namespace +        - kube-service-catalog +        - --broker-relist-interval +        - "5m" +        - --feature-gates +        - OriginatingIdentity=true          image: {{ openshift_service_catalog_image_prefix }}service-catalog:{{ openshift_service_catalog_image_version }}          command: ["/usr/bin/controller-manager"]          imagePullPolicy: Always @@ -41,7 +46,19 @@ spec:            protocol: TCP          resources: {}          terminationMessagePath: /dev/termination-log +        volumeMounts: +        - mountPath: /var/run/kubernetes-service-catalog +          name: service-catalog-ssl +          readOnly: true        dnsPolicy: ClusterFirst        restartPolicy: Always        securityContext: {}        terminationGracePeriodSeconds: 30 +      volumes: +      - name: service-catalog-ssl +        secret: +          defaultMode: 420 +          items: +          - key: tls.crt +            path: apiserver.crt +          secretName: apiserver-ssl diff --git a/roles/template_service_broker/tasks/install.yml b/roles/template_service_broker/tasks/install.yml index 54008bbf1..6a532a206 100644 --- a/roles/template_service_broker/tasks/install.yml +++ b/roles/template_service_broker/tasks/install.yml @@ -6,7 +6,7 @@      - "{{ openshift_deployment_type | default(deployment_type) }}.yml"      - "default_images.yml" -- name: set ansible_service_broker facts +- name: set template_service_broker facts    set_fact:      template_service_broker_prefix: "{{ template_service_broker_prefix | default(__template_service_broker_prefix) }}"      template_service_broker_version: "{{ template_service_broker_version | default(__template_service_broker_version) }}" @@ -76,7 +76,7 @@    when: openshift_master_config_dir is undefined  - slurp: -    src: "{{ openshift_master_config_dir }}/ca.crt" +    src: "{{ openshift_master_config_dir }}/service-signer.crt"    register: __ca_bundle  # Register with broker | 
