]> git.apps.os.sepia.ceph.com Git - ceph-cm-ansible.git/commitdiff
pcp: Optionally use upstream package repos 226/head
authorZack Cerza <zack@redhat.com>
Fri, 15 Apr 2016 22:58:39 +0000 (16:58 -0600)
committerZack Cerza <zack@redhat.com>
Tue, 19 Apr 2016 21:35:28 +0000 (15:35 -0600)
Signed-off-by: Zack Cerza <zack@redhat.com>
roles/pcp/README.rst
roles/pcp/defaults/main.yml
roles/pcp/tasks/main.yml
roles/pcp/tasks/repo.yml [new file with mode: 0644]
roles/pcp/vars/apt_systems.yml
roles/pcp/vars/yum_systems.yml

index cafd2c97b083ff40c10c0d37f867598f5e01e988..fff2e49816baca377563f053e07f0d72ff2aee13 100644 (file)
@@ -26,6 +26,10 @@ Variables
 
 Defaults for these variables are defined in ``roles/pcp/defaults/main.yml``.
 
+To use upstream-provided packages instead of the distro's packages, set::
+
+    upstream_repo: true
+
 To tell a given host to collect performance data using ``pmcd``, and to run
 ``pmlogger`` to create archive logs::
 
index ae1ad08f4d761e2d8822062dcab2116a0fb0d9e3..aff86a3131c9bb41b12af5ff88f7de83f1e04131 100644 (file)
@@ -1,4 +1,7 @@
 ---
+# Whether or not to use upstream repos
+upstream_repo: false
+
 ## PCP Collector options
 # Set the host up to collect data
 pcp_collector: true
index d7078a13d56316b9cc2162911ab3e51e78dced77..39b2fee3d59c1be0603cee02f9e7a453edc517da 100644 (file)
@@ -4,6 +4,13 @@
   tags:
     - always
 
+- name: Set up upstream repo
+  include: repo.yml
+  when:
+    upstream_repo|bool == true
+  tags:
+    - repo
+
 - name: Miscellaneous preparation
   include: prep.yml
   tags:
diff --git a/roles/pcp/tasks/repo.yml b/roles/pcp/tasks/repo.yml
new file mode 100644 (file)
index 0000000..924979e
--- /dev/null
@@ -0,0 +1,32 @@
+---
+- name: Add upstream apt repo
+  copy:
+    content: "{{ upstream_repo_source }}"
+    dest: /etc/apt/sources.list.d/pcp.list
+  when:
+    ansible_pkg_mgr == "apt"
+
+- name: Add upstream GPG key to apt
+  apt_key:
+    url: https://bintray.com/user/downloadSubjectPublicKey?username=pcp
+    keyring: /etc/apt/trusted.gpg.d/pcp.gpg
+    state: present
+    validate_certs: true
+  when:
+    ansible_pkg_mgr == "apt"
+
+- name: Add upstream yum repo
+  get_url:
+    url: "{{ upstream_repo_url }}"
+    dest: /etc/apt/sources.list.d/pcp.list
+    dest: /etc/yum.repos.d/pcp.repo
+  when:
+    ansible_pkg_mgr == "yum"
+
+- name: Add upstream GPG key to rpm
+  rpm_key:
+    key: https://bintray.com/user/downloadSubjectPublicKey?username=pcp
+    state: present
+    validate_certs: true
+  when:
+    ansible_pkg_mgr == "yum"
index dc30777e47afc76d2e75d8cf44c4ff569d6bdc65..d4789c474553b3cc50651b7f42817e8683e885d5 100644 (file)
@@ -1,4 +1,5 @@
 ---
+upstream_repo_source: "deb https://dl.bintray.com/pcp/trusty {{ ansible_distribution_release }} main"
 pcp_user: pcp
 pcp_package: pcp
 pmcd_service: pmcd
index b47ba6feba2abf9811f95ff6b43e839b251aaaf1..14ba8cf4a032c7b13402af8dbd13a6f3812caea7 100644 (file)
@@ -1,4 +1,5 @@
 ---
+upstream_repo_url: "https://bintray.com/pcp/{{ {'Fedora': 'f', 'CentOS': 'el', 'RedHat': 'el'}[ansible_distribution] }}{{ ansible_distribution_major_version }}/rpm"
 pcp_user: pcp
 pcp_package: pcp
 pmcd_service: pmcd