Browse Source

Skip yum/dnf ops when is_containerized

Scott Dodson 9 years ago
parent
commit
afe0064e01

+ 1 - 0
playbooks/common/openshift-cluster/upgrades/v3_0_to_v3_1/upgrade.yml

@@ -235,6 +235,7 @@
 
   - name: Ensure python-yaml present for config upgrade
     action: "{{ ansible_pkg_mgr }} name=PyYAML state=present"
+    when: not openshift.common.is_atomic | bool
 
   - name: Upgrade master configuration
     openshift_upgrade_config:

+ 1 - 0
playbooks/common/openshift-master/config.yml

@@ -246,6 +246,7 @@
     when: (openshift_master_session_auth_secrets is defined and openshift_master_session_encryption_secrets is defined) and (openshift_master_session_auth_secrets | length != openshift_master_session_encryption_secrets | length)
   - name: Install OpenSSL package
     action: "{{ ansible_pkg_mgr }} name=openssl state=present"
+    when: not openshift.common.is_atomic | bool
   - name: Generate session authentication key
     command: /usr/bin/openssl rand -base64 24
     register: session_auth_output

+ 1 - 0
roles/ansible/tasks/main.yml

@@ -3,6 +3,7 @@
 
 - name: Install Ansible
   action: "{{ ansible_pkg_mgr }} name=ansible state=present"
+  when: not openshift.common.is_containerized | bool
 
 - include: config.yml
   vars:

+ 1 - 0
roles/cockpit/tasks/main.yml

@@ -6,6 +6,7 @@
     - cockpit-shell
     - cockpit-bridge
     - "{{ cockpit_plugins }}"
+  when: not openshift.common.is_containerized | bool
 
 - name: Enable cockpit-ws
   service:

+ 1 - 0
roles/copr_cli/tasks/main.yml

@@ -1,2 +1,3 @@
 ---
 - action: "{{ ansible_pkg_mgr }} name=copr-cli state=present"
+  when: not openshift.common.is_containerized | bool

+ 1 - 0
roles/flannel/tasks/main.yml

@@ -2,6 +2,7 @@
 - name: Install flannel
   sudo: true
   action: "{{ ansible_pkg_mgr }} name=flannel state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Set flannel etcd url
   sudo: true

+ 1 - 0
roles/fluentd_master/tasks/main.yml

@@ -6,6 +6,7 @@
 # TODO: Update fluentd install and configuration when packaging is complete
 - name: download and install td-agent
   action: "{{ ansible_pkg_mgr }} name='http://packages.treasuredata.com/2/redhat/7/x86_64/td-agent-2.2.0-0.x86_64.rpm' state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Verify fluentd plugin installed
   command: '/opt/td-agent/embedded/bin/gem query -i fluent-plugin-kubernetes'

+ 1 - 0
roles/fluentd_node/tasks/main.yml

@@ -6,6 +6,7 @@
 # TODO: Update fluentd install and configuration when packaging is complete
 - name: download and install td-agent
   action: "{{ ansible_pkg_mgr }} name='http://packages.treasuredata.com/2/redhat/7/x86_64/td-agent-2.2.0-0.x86_64.rpm' state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Verify fluentd plugin installed
   command: '/opt/td-agent/embedded/bin/gem query -i fluent-plugin-kubernetes'

+ 1 - 0
roles/haproxy/tasks/main.yml

@@ -1,6 +1,7 @@
 ---
 - name: Install haproxy
   action: "{{ ansible_pkg_mgr }} name=haproxy state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Configure haproxy
   template:

+ 1 - 0
roles/kube_nfs_volumes/tasks/main.yml

@@ -5,6 +5,7 @@
 
 - name: Install pyparted (RedHat/Fedora)
   action: "{{ ansible_pkg_mgr }} name=pyparted,python-httplib2 state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: partition the drives
   partitionpool: disks={{ disks }} force={{ force }} sizes={{ sizes }}

+ 1 - 0
roles/kube_nfs_volumes/tasks/nfs.yml

@@ -1,6 +1,7 @@
 ---
 - name: Install NFS server
   action: "{{ ansible_pkg_mgr }} name=nfs-utils state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Start rpcbind on Fedora/Red Hat
   service: name=rpcbind state=started enabled=yes

+ 1 - 0
roles/openshift_ansible_inventory/tasks/main.yml

@@ -4,6 +4,7 @@
   - openshift-ansible-inventory
   - openshift-ansible-inventory-aws
   - openshift-ansible-inventory-gce
+  when: not openshift.common.is_containerized | bool
 
 - name:
   copy:

+ 1 - 0
roles/openshift_common/tasks/main.yml

@@ -27,6 +27,7 @@
 
 - name: Install the base package for versioning
   action: "{{ ansible_pkg_mgr }} name={{ openshift.common.service_type }}{{ openshift_version | default('') }} state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Set version facts
   openshift_facts:

+ 13 - 0
roles/openshift_facts/tasks/main.yml

@@ -5,9 +5,22 @@
     - ansible_version | version_compare('1.8.0', 'ge')
     - ansible_version | version_compare('1.9.0', 'ne')
     - ansible_version | version_compare('1.9.0.1', 'ne')
+    
+- name: Detecting Operating System
+  shell: ls /run/ostree-booted
+  ignore_errors: yes
+  failed_when: false
+  register: ostree_output
+
+# Locally setup containerized facts for now
+- set_fact:
+    l_is_atomic: "{{ ostree_output.rc == 0 }}"
+- set_fact:
+    l_is_containerized: "{{ l_is_atomic or containerized | default(false) | bool }}"
 
 - name: Ensure PyYaml is installed
   action: "{{ ansible_pkg_mgr }} name=PyYAML state=present"
+  when: not l_is_atomic | bool
 
 - name: Gather Cluster facts and set is_containerized if needed
   openshift_facts:

+ 2 - 1
roles/openshift_master_ca/tasks/main.yml

@@ -1,7 +1,8 @@
 ---
 - name: Install the base package for admin tooling
   action: "{{ ansible_pkg_mgr }} name={{ openshift.common.service_type }}{{ openshift_version  }} state=present"
-  when: openshift.common.is_containerized | bool
+  when: not openshift.common.is_containerized | bool
+  register: install_result
 
 - name: Reload generated facts
   openshift_facts:

+ 2 - 11
roles/openshift_node/tasks/main.yml

@@ -50,7 +50,7 @@
   when: openshift.common.is_containerized | bool
   register: docker_images
 
-- name: Pull required docker image
+- name: Pull node image
   command: >
     docker pull {{ openshift.node.node_image }}
   when: openshift.common.is_containerized | bool and openshift.node.node_image not in docker_images.stdout
@@ -61,17 +61,8 @@
     src: openshift.docker.node.service
   register: install_node_result
   when: openshift.common.is_containerized | bool
-  
-- name: Create openshift.common.data_dir
-  file: 
-    path: openshift.common.data_dir
-    state: directory
-    mode: 0755
-    owner: root
-    group: root
-  when: openshift.common.is_containerized | bool
 
-- name: Pull required docker image
+- name: Pull OpenvSwitch docker image
   command: >
     docker pull {{ openshift.node.ovs_image }}
   when: openshift.common.is_containerized | bool and openshift.node.ovs_image not in docker_images.stdout

+ 2 - 1
roles/openshift_node/tasks/storage_plugins/ceph.yml

@@ -1,3 +1,4 @@
 ---
 - name: Install Ceph storage plugin dependencies
-  action: "{{ ansible_pkg_mgr }} name=ceph-common state=present"
+  action: "{{ ansible_pkg_mgr }} name=ceph-common state=present"
+  when: not openshift.common.is_containerized | bool

+ 1 - 0
roles/openshift_node/tasks/storage_plugins/glusterfs.yml

@@ -1,6 +1,7 @@
 ---
 - name: Install GlusterFS storage plugin dependencies
   action: "{{ ansible_pkg_mgr }} name=glusterfs-fuse state=present"
+  when: not openshift.common.is_containerized | bool
 
 - name: Set sebooleans to allow gluster storage plugin access from containers
   seboolean:

+ 2 - 2
roles/openshift_repos/tasks/main.yaml

@@ -8,7 +8,7 @@
 #       proper repos correctly.
 
 - assert:
-    that: openshift.common.deployment_type in known_openshift_deployment_types
+    that: openshift_deployment_type in known_openshift_deployment_types
 
 - name: Ensure libselinux-python is installed
   action: "{{ ansible_pkg_mgr }} name=libselinux-python state=present"
@@ -46,7 +46,7 @@
   with_fileglob:
   - '*/repos/*'
   when: not (item | search("/files/fedora-" ~ openshift_deployment_type ~ "/repos")) and
-        (ansible_distribution == "Fedora")
+        (ansible_distribution == "Fedora") 
         and not openshift.common.is_containerized | bool
   notify: refresh cache
 

+ 1 - 0
roles/os_firewall/tasks/firewall/firewalld.yml

@@ -1,6 +1,7 @@
 ---
 - name: Install firewalld packages
   action: "{{ ansible_pkg_mgr }} name=firewalld state=present"
+  when: not openshift.common.is_containerized | bool
   register: install_result
 
 - name: Check if iptables-services is installed