]> git-server-git.apps.pok.os.sepia.ceph.com Git - cephmetrics.git/commitdiff
Add support for custom repos 128/head
authorZack Cerza <zack@redhat.com>
Mon, 25 Sep 2017 23:49:58 +0000 (17:49 -0600)
committerZack Cerza <zack@redhat.com>
Tue, 26 Sep 2017 00:04:11 +0000 (18:04 -0600)
This is to enable testing packages built from non-master branches with
devel_mode=False

Signed-off-by: Zack Cerza <zack@redhat.com>
ansible/README.md
ansible/common/templates/cephmetrics-custom.repo [new file with mode: 0644]
ansible/roles/ceph-collectd/tasks/setup_repos.yml
ansible/roles/ceph-collectd/templates/cephmetrics-custom.repo [new symlink]
ansible/roles/ceph-grafana/tasks/setup_repos.yml
ansible/roles/ceph-grafana/templates/cephmetrics-custom.repo [new symlink]

index 78bc4c11294e3a082ddacb54e65a51e5c1be091c..fa1d7b8c1a0a8bef9df07c35c510dd65590ddd97 100644 (file)
@@ -61,6 +61,13 @@ You may override certain variables by creating a `vars.yml` file:
         - ['15m', '5y']
     ```
 - `update_alerts`: Whether to update the alerts dashboard along with the rest. Removes any user-defined alerts. Default: false
+- `custom_repos`: A list of custom package repositories to enable. Currently supports yum systems only. Format:
+    ```
+    custom_repos:
+      yum:
+      - name: my_repo
+        baseurl: http://example.com/my/repo
+    ```
 
 These variables are only relevent when `devel_mode` is true:
 - `use_epel`: Whether or not to use EPEL and grafana.com instead of ceph.com-sourced packages for dependencies. Default: false
diff --git a/ansible/common/templates/cephmetrics-custom.repo b/ansible/common/templates/cephmetrics-custom.repo
new file mode 100644 (file)
index 0000000..1aa7b32
--- /dev/null
@@ -0,0 +1,9 @@
+{% for repo in custom_repos.yum %}
+[{{ repo.name }}]
+name={{ repo.name }}
+baseurl={{ repo.baseurl }}
+enabled={{ repo.enabled|default('1') }}
+gpgcheck={{ repo.gpgcheck|default('0') }}
+type={{ repo.type|default('rpm-md') }}
+
+{% endfor %}
index 7d867a1536fd53cf865ff0b1027d4acfdd173627..3a63462898b430b1dd98b1f268be20b39d40783b 100644 (file)
   when:
     - ansible_pkg_mgr == "yum"
     - not devel_mode
+
+- name: Add custom repos
+  template:
+    src: cephmetrics-custom.repo
+    dest: /etc/yum.repos.d/cephmetrics-custom.repo
+  when:
+    - ansible_pkg_mgr == "yum"
+    - custom_repos is defined
+
+- name: Remove custom repos
+  file:
+    path: /etc/yum.repos.d/cephmetrics-custom.repo
+    state: absent
+  when:
+    - ansible_pkg_mgr == "yum"
+    - custom_repos is not defined
diff --git a/ansible/roles/ceph-collectd/templates/cephmetrics-custom.repo b/ansible/roles/ceph-collectd/templates/cephmetrics-custom.repo
new file mode 120000 (symlink)
index 0000000..84ad75a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/templates/cephmetrics-custom.repo
\ No newline at end of file
index 38bd5caf10dfb6e91fec6763309a9970b8e3c880..edac3f361e899328ab6112eafe809127c5aaaceb 100644 (file)
   when:
     - ansible_pkg_mgr == "yum"
     - not devel_mode
+
+- name: Add custom repos
+  template:
+    src: cephmetrics-custom.repo
+    dest: /etc/yum.repos.d/cephmetrics-custom.repo
+  when:
+    - ansible_pkg_mgr == "yum"
+    - custom_repos is defined
+
+- name: Remove custom repos
+  file:
+    path: /etc/yum.repos.d/cephmetrics-custom.repo
+    state: absent
+  when:
+    - ansible_pkg_mgr == "yum"
+    - custom_repos is not defined
diff --git a/ansible/roles/ceph-grafana/templates/cephmetrics-custom.repo b/ansible/roles/ceph-grafana/templates/cephmetrics-custom.repo
new file mode 120000 (symlink)
index 0000000..84ad75a
--- /dev/null
@@ -0,0 +1 @@
+../../../common/templates/cephmetrics-custom.repo
\ No newline at end of file