summaryrefslogtreecommitdiffstats
path: root/roles/openshift_repos/tasks/main.yaml
blob: 9a9436fcb30943f28db61082b0d492e1273cd493 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
---
- name: openshift_repos detect ostree
  stat:
    path: /run/ostree-booted
  register: ostree_booted

- block:
  - name: Ensure libselinux-python is installed
    package: name=libselinux-python state=present

  - name: Create any additional repos that are defined
    template:
      src: yum_repo.j2
      dest: /etc/yum.repos.d/openshift_additional.repo
    when:
    - openshift_additional_repos | length > 0
    notify: refresh cache

  - name: Remove the additional repos if no longer defined
    file:
      dest: /etc/yum.repos.d/openshift_additional.repo
      state: absent
    when:
    - openshift_additional_repos | length == 0
    notify: refresh cache

  - name: Configure origin gpg keys if needed
    copy:
      src: "{{ item.src }}"
      dest: "{{ item.dest }}"
    with_items:
    - src: origin/gpg_keys/openshift-ansible-CentOS-SIG-PaaS
      dest: /etc/pki/rpm-gpg/
    - src: origin/repos/openshift-ansible-centos-paas-sig.repo
      dest: /etc/yum.repos.d/
    notify: refresh cache
    when:
    - ansible_os_family == "RedHat"
    - ansible_distribution != "Fedora"
    - openshift_deployment_type == 'origin'
    - openshift_enable_origin_repo | default(true) | bool

  # Singleton block
  - when: r_osr_first_run | default(true)
    block:
    - name: Ensure clean repo cache in the event repos have been changed manually
      debug:
        msg: "First run of openshift_repos"
      changed_when: true
      notify: refresh cache

    - name: Set fact r_osr_first_run false
      set_fact:
        r_osr_first_run: false

  # Force running ALL handlers now, because we expect repo cache to be cleared
  # if changes have been made.
  - meta: flush_handlers

  when: not ostree_booted.stat.exists