diff options
| -rw-r--r-- | .tito/packages/openshift-ansible | 2 | ||||
| -rw-r--r-- | inventory/byo/hosts.origin.example | 4 | ||||
| -rw-r--r-- | inventory/byo/hosts.ose.example | 4 | ||||
| -rw-r--r-- | openshift-ansible.spec | 13 | ||||
| -rw-r--r-- | playbooks/aws/README.md | 7 | ||||
| -rw-r--r-- | playbooks/aws/openshift-cluster/build_ami.yml | 11 | ||||
| -rw-r--r-- | playbooks/aws/openshift-cluster/provisioning_vars.example.yml | 2 | ||||
| -rw-r--r-- | playbooks/common/openshift-cluster/config.yml | 7 | ||||
| -rw-r--r-- | playbooks/common/openshift-cluster/initialize_openshift_version.yml | 5 | ||||
| -rw-r--r-- | playbooks/common/openshift-cluster/upgrades/pre/verify_inventory_vars.yml | 15 | ||||
| -rw-r--r-- | playbooks/common/openshift-master/restart.yml | 2 | ||||
| -rw-r--r-- | playbooks/common/openshift-node/config.yml | 1 | ||||
| -rw-r--r-- | roles/docker/tasks/systemcontainer_docker.yml | 20 | 
13 files changed, 68 insertions, 25 deletions
diff --git a/.tito/packages/openshift-ansible b/.tito/packages/openshift-ansible index 810510bdf..9a5acc500 100644 --- a/.tito/packages/openshift-ansible +++ b/.tito/packages/openshift-ansible @@ -1 +1 @@ -3.7.0-0.125.1 ./ +3.7.0-0.126.0 ./ diff --git a/inventory/byo/hosts.origin.example b/inventory/byo/hosts.origin.example index df0491d71..dbe57bbd2 100644 --- a/inventory/byo/hosts.origin.example +++ b/inventory/byo/hosts.origin.example @@ -118,7 +118,7 @@ openshift_release=v3.6  # Force the registry to use for the docker/crio system container. By default the registry  # will be built off of the deployment type and ansible_distribution. Only  # use this option if you are sure you know what you are doing! -#openshift_docker_systemcontainer_image_registry_override="registry.example.com" +#openshift_docker_systemcontainer_image_override="registry.example.com/container-engine:latest"  #openshift_crio_systemcontainer_image_registry_override="registry.example.com"  # Items added, as is, to end of /etc/sysconfig/docker OPTIONS  # Default value: "--log-driver=journald" @@ -613,6 +613,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  # WORKAROUND : If you must use an overlapping subnet, you can configure a non conflicting  # docker0 CIDR range by adding '--bip=192.168.2.1/24' to DOCKER_NETWORK_OPTIONS  # environment variable located in /etc/sysconfig/docker-network. +# When upgrading these must be specificed!  #osm_cluster_network_cidr=10.128.0.0/14  #openshift_portal_net=172.30.0.0/16 @@ -634,6 +635,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  # Configure number of bits to allocate to each host’s subnet e.g. 9  # would mean a /23 network on the host. +# When upgrading this must be specificed!  #osm_host_subnet_length=9  # Configure master API and console ports. diff --git a/inventory/byo/hosts.ose.example b/inventory/byo/hosts.ose.example index 79eb59ab9..0d60de6d2 100644 --- a/inventory/byo/hosts.ose.example +++ b/inventory/byo/hosts.ose.example @@ -118,7 +118,7 @@ openshift_release=v3.6  # Force the registry to use for the container-engine/crio system container. By default the registry  # will be built off of the deployment type and ansible_distribution. Only  # use this option if you are sure you know what you are doing! -#openshift_docker_systemcontainer_image_registry_override="registry.example.com" +#openshift_docker_systemcontainer_image_override="registry.example.com/container-engine:latest"  #openshift_crio_systemcontainer_image_registry_override="registry.example.com"  # Items added, as is, to end of /etc/sysconfig/docker OPTIONS  # Default value: "--log-driver=journald" @@ -621,6 +621,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  # WORKAROUND : If you must use an overlapping subnet, you can configure a non conflicting  # docker0 CIDR range by adding '--bip=192.168.2.1/24' to DOCKER_NETWORK_OPTIONS  # environment variable located in /etc/sysconfig/docker-network. +# When upgrading these must be specificed!  #osm_cluster_network_cidr=10.128.0.0/14  #openshift_portal_net=172.30.0.0/16 @@ -642,6 +643,7 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',  # Configure number of bits to allocate to each host’s subnet e.g. 9  # would mean a /23 network on the host. +# When upgrading this must be specificed!  #osm_host_subnet_length=9  # Configure master API and console ports. diff --git a/openshift-ansible.spec b/openshift-ansible.spec index fa63bad19..3be13145e 100644 --- a/openshift-ansible.spec +++ b/openshift-ansible.spec @@ -10,7 +10,7 @@  Name:           openshift-ansible  Version:        3.7.0 -Release:        0.125.1%{?dist} +Release:        0.126.0%{?dist}  Summary:        Openshift and Atomic Enterprise Ansible  License:        ASL 2.0  URL:            https://github.com/openshift/openshift-ansible @@ -280,6 +280,17 @@ Atomic OpenShift Utilities includes  %changelog +* Mon Sep 11 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.7.0-0.126.0 +- Fix rpm version logic for hosts (mgugino@redhat.com) +- Revert back to hostnamectl and previous default of not setting hostname +  (sdodson@redhat.com) +- Correct include path to not follow symlink (rteague@redhat.com) +- Fix include path for docker upgrade tasks (rteague@redhat.com) +- Fix issue with etcd_common when using pre_upgrade tag (rteague@redhat.com) +- inventory: Denote new required upgrade variables (smilner@redhat.com) +- upgrade: Verify required network items are set (smilner@redhat.com) +- ami build process calls openshift-node/config.yml (kwoodson@redhat.com) +  * Fri Sep 08 2017 Scott Dodson <sdodson@redhat.com> 3.7.0-0.125.1  - Consolidating AWS roles and variables underneath openshift_aws role.    (kwoodson@redhat.com) diff --git a/playbooks/aws/README.md b/playbooks/aws/README.md index c2da4b632..2b3d4329e 100644 --- a/playbooks/aws/README.md +++ b/playbooks/aws/README.md @@ -43,6 +43,8 @@ The current expected work flow should be to provide an AMI with access to Opensh  ```yaml  --- +# when creating an AMI set this to True +# when installing a cluster set this to False  openshift_node_bootstrap: True  # specify a clusterid @@ -96,6 +98,11 @@ etcd  ################################################################################  # openshift_deployment_type is required for installation  openshift_deployment_type=origin + +# required when building an AMI.  This will +# be dependent on the version provided by the yum repository +openshift_pkg_version=-3.6.0 +  openshift_master_bootstrap_enabled=True  openshift_hosted_router_wait=False diff --git a/playbooks/aws/openshift-cluster/build_ami.yml b/playbooks/aws/openshift-cluster/build_ami.yml index d3c0057b5..fc11205d8 100644 --- a/playbooks/aws/openshift-cluster/build_ami.yml +++ b/playbooks/aws/openshift-cluster/build_ami.yml @@ -63,15 +63,8 @@  - name: run the std_include    include: ../../common/openshift-cluster/initialize_openshift_repos.yml -- hosts: nodes -  remote_user: root -  tasks: -  - set_fact: -      openshift_node_bootstrap: True - -  - name: run openshift image preparation -    include_role: -      name: openshift_node +- name: install node config +  include: ../../common/openshift-node/config.yml  - hosts: localhost    connection: local diff --git a/playbooks/aws/openshift-cluster/provisioning_vars.example.yml b/playbooks/aws/openshift-cluster/provisioning_vars.example.yml index 5a30ad3a5..28eb9c993 100644 --- a/playbooks/aws/openshift-cluster/provisioning_vars.example.yml +++ b/playbooks/aws/openshift-cluster/provisioning_vars.example.yml @@ -1,4 +1,6 @@  --- +# when creating an AMI set this option to True +# when installing the cluster, set this to False  openshift_node_bootstrap: True  # specify a clusterid diff --git a/playbooks/common/openshift-cluster/config.yml b/playbooks/common/openshift-cluster/config.yml index 3baa3c54d..bbd5a0185 100644 --- a/playbooks/common/openshift-cluster/config.yml +++ b/playbooks/common/openshift-cluster/config.yml @@ -25,10 +25,11 @@  - name: Set hostname    hosts: oo_masters_to_config:oo_nodes_to_config    tasks: +  # TODO: switch back to hostname module once we depend on ansible-2.4 +  # https://github.com/ansible/ansible/pull/25906    - name: Set hostname -    hostname: -      name: "{{ openshift.common.hostname }}" -    when: openshift_set_hostname | default(True) | bool +    command: "hostnamectl set-hostname {{ openshift.common.hostname }}" +    when: openshift_set_hostname | default(false,true) | bool  - include: ../openshift-etcd/config.yml diff --git a/playbooks/common/openshift-cluster/initialize_openshift_version.yml b/playbooks/common/openshift-cluster/initialize_openshift_version.yml index 7112a6084..7af6b25bc 100644 --- a/playbooks/common/openshift-cluster/initialize_openshift_version.yml +++ b/playbooks/common/openshift-cluster/initialize_openshift_version.yml @@ -12,5 +12,10 @@    hosts: oo_all_hosts:!oo_first_master    vars:      openshift_version: "{{ hostvars[groups.oo_first_master.0].openshift_version }}" +  pre_tasks: +  - set_fact: +      openshift_pkg_version: -{{ openshift_version }} +    when: openshift_pkg_version is not defined +  - debug: msg="openshift_pkg_version set to {{ openshift_pkg_version }}"    roles:    - openshift_version diff --git a/playbooks/common/openshift-cluster/upgrades/pre/verify_inventory_vars.yml b/playbooks/common/openshift-cluster/upgrades/pre/verify_inventory_vars.yml index 9a959a959..78923e04f 100644 --- a/playbooks/common/openshift-cluster/upgrades/pre/verify_inventory_vars.yml +++ b/playbooks/common/openshift-cluster/upgrades/pre/verify_inventory_vars.yml @@ -9,6 +9,21 @@          deployment types      when: deployment_type not in ['origin','openshift-enterprise', 'online'] +  # osm_cluster_network_cidr, osm_host_subnet_length and openshift_portal_net are +  # required when upgrading to avoid changes that may occur between releases +  # Reference: https://bugzilla.redhat.com/show_bug.cgi?id=1451023 +  - assert: +      that: +      - "osm_cluster_network_cidr is defined" +      - "osm_host_subnet_length is defined" +      - "openshift_portal_net is defined" +      msg: > +        osm_cluster_network_cidr, osm_host_subnet_length, and openshift_portal_net are required inventory +        variables when upgrading. These variables should match what is currently used in the cluster. If +        you don't remember what these values are you can find them in /etc/origin/master/master-config.yaml +        on a master with the names clusterNetworkCIDR (osm_cluster_network_cidr), +        osm_host_subnet_length (hostSubnetLength), and openshift_portal_net (hostSubnetLength). +    # Error out in situations where the user has older versions specified in their    # inventory in any of the openshift_release, openshift_image_tag, and    # openshift_pkg_version variables. These must be removed or updated to proceed diff --git a/playbooks/common/openshift-master/restart.yml b/playbooks/common/openshift-master/restart.yml index 6fec346c3..4d73b8124 100644 --- a/playbooks/common/openshift-master/restart.yml +++ b/playbooks/common/openshift-master/restart.yml @@ -7,7 +7,7 @@      openshift_master_ha: "{{ groups.oo_masters_to_config | length > 1 }}"    serial: 1    handlers: -  - include: roles/openshift_master/handlers/main.yml +  - include: ../../../roles/openshift_master/handlers/main.yml      static: yes    roles:    - openshift_facts diff --git a/playbooks/common/openshift-node/config.yml b/playbooks/common/openshift-node/config.yml index c7afc78ac..0801c41ff 100644 --- a/playbooks/common/openshift-node/config.yml +++ b/playbooks/common/openshift-node/config.yml @@ -82,6 +82,7 @@    - role: nickhammond.logrotate    - role: openshift_manage_node      openshift_master_host: "{{ groups.oo_first_master.0 }}" +    when: not openshift_node_bootstrap | default(False)    tasks:    - name: Create group for deployment type      group_by: key=oo_nodes_deployment_type_{{ openshift.common.deployment_type }} diff --git a/roles/docker/tasks/systemcontainer_docker.yml b/roles/docker/tasks/systemcontainer_docker.yml index 57a84bc2c..146e5f430 100644 --- a/roles/docker/tasks/systemcontainer_docker.yml +++ b/roles/docker/tasks/systemcontainer_docker.yml @@ -100,18 +100,22 @@          l_docker_image_prepend: "registry.fedoraproject.org/f25"        when: ansible_distribution == 'Fedora' -    # For https://github.com/openshift/openshift-ansible/pull/4049#discussion_r114478504 -    - name: Use a testing registry if requested -      set_fact: -        l_docker_image_prepend: "{{ openshift_docker_systemcontainer_image_registry_override }}" -      when: -        - openshift_docker_systemcontainer_image_registry_override is defined -        - openshift_docker_systemcontainer_image_registry_override != "" -      - name: Set the full image name        set_fact:          l_docker_image: "{{ l_docker_image_prepend }}/{{ openshift.docker.service_name }}:latest" +    # For https://github.com/openshift/openshift-ansible/pull/5354#issuecomment-328552959 +    - name: Use a specific image if requested +      set_fact: +        l_docker_image: "{{ openshift_docker_systemcontainer_image_override }}" +      when: +        - openshift_docker_systemcontainer_image_override is defined +        - openshift_docker_systemcontainer_image_override != "" + +    # Be nice and let the user see the variable result +    - debug: +        var: l_docker_image +  # NOTE: no_proxy added as a workaround until https://github.com/projectatomic/atomic/pull/999 is released  - name: Pre-pull Container Engine System Container image    command: "atomic pull --storage ostree {{ l_docker_image }}"  | 
