summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Doan <andy.doan@linaro.org>2015-04-14 09:59:55 -0500
committerLinaro Code Review <review@review.linaro.org>2015-04-14 19:35:58 +0000
commit8d14ad89c6c31ef0f0d59ad4a75f845e18cc7651 (patch)
tree6e729791b7478aa78e25be730d080cf1266ce5c2
parent5924c38ee07660955897fd0f2bd22685c6786548 (diff)
git/cron: break out bundle creation logic
Our android grokmirror slaves (as well as git-main slaves) need to be able to create bundles. However, they don't really need the other logic in the gitserver cron job. This splits things up so we can have better granularity. Change-Id: I3acd3e9db73562632ea4d39b5677033126c0b495
-rw-r--r--per-service/git-servers/gitolite.yml2
-rw-r--r--per-service/git-servers/host_vars/android-ap.git.linaro.org1
-rw-r--r--per-service/git-servers/host_vars/git-ap.linaro.org1
-rw-r--r--per-service/git-servers/host_vars/git-ie.linaro.org1
-rw-r--r--per-service/git-servers/roles/cronjobs/tasks/main.yml15
-rw-r--r--per-service/git-servers/roles/cronjobs/templates/git-bundles10
-rw-r--r--per-service/git-servers/roles/cronjobs/templates/gitserver12
7 files changed, 28 insertions, 14 deletions
diff --git a/per-service/git-servers/gitolite.yml b/per-service/git-servers/gitolite.yml
index d26646f4..31db7816 100644
--- a/per-service/git-servers/gitolite.yml
+++ b/per-service/git-servers/gitolite.yml
@@ -23,7 +23,7 @@
- apache-website
- {role: apache-site, src: "{{git_host}}.conf", config: "{{git_host}}", tags: [apache, website-conf] }
- {role: url-rewrite, when: hosttype != 'git-slave'}
- - {role: cronjobs, when: hosttype != 'git-slave'}
+ - {role: cronjobs}
- gitweb
- upstart-git-daemon
- {role: grokmirror, when: grokmirror_support}
diff --git a/per-service/git-servers/host_vars/android-ap.git.linaro.org b/per-service/git-servers/host_vars/android-ap.git.linaro.org
index e931efba..c2ac05a9 100644
--- a/per-service/git-servers/host_vars/android-ap.git.linaro.org
+++ b/per-service/git-servers/host_vars/android-ap.git.linaro.org
@@ -5,4 +5,5 @@ git_host: android.git.linaro.org
nickname: android-ap-git
host_site_name: Linaro Android Git Hosting
+git_bundle_blacklist: git-android-bundle-exclude.txt
grokmirror_support: true
diff --git a/per-service/git-servers/host_vars/git-ap.linaro.org b/per-service/git-servers/host_vars/git-ap.linaro.org
index f6b0902a..434bfb7f 100644
--- a/per-service/git-servers/host_vars/git-ap.linaro.org
+++ b/per-service/git-servers/host_vars/git-ap.linaro.org
@@ -6,3 +6,4 @@ host_site_name: Linaro Git Hosting
server_access: public
hosttype: git-slave
grokmirror_support: true
+git_bundle_whitelist: git-main-bundle-include.txt
diff --git a/per-service/git-servers/host_vars/git-ie.linaro.org b/per-service/git-servers/host_vars/git-ie.linaro.org
index d675bc3f..9094577d 100644
--- a/per-service/git-servers/host_vars/git-ie.linaro.org
+++ b/per-service/git-servers/host_vars/git-ie.linaro.org
@@ -6,3 +6,4 @@ host_site_name: Linaro Git Hosting
server_access: public
hosttype: git-slave
grokmirror_support: true
+git_bundle_whitelist: git-main-bundle-include.txt
diff --git a/per-service/git-servers/roles/cronjobs/tasks/main.yml b/per-service/git-servers/roles/cronjobs/tasks/main.yml
index 5532e668..cc845705 100644
--- a/per-service/git-servers/roles/cronjobs/tasks/main.yml
+++ b/per-service/git-servers/roles/cronjobs/tasks/main.yml
@@ -1,11 +1,12 @@
---
# All the necessary cron jobs.
-- name: Install crontab
+- name: Install gitserver crontab
template: src=gitserver dest=/etc/cron.d/gitserver
owner=root
group=root
mode=0644
+ when: hosttype != "git-slave"
tags:
- cron
- install
@@ -40,3 +41,15 @@
tags:
- cron
- git
+
+- name: Install git-bundles crontab
+ template: src=git-bundles dest=/etc/cron.d/git-bundles
+ owner=root group=root mode=0644
+ when: git_bundle_whitelist is defined or git_bundle_blacklist is defined
+ tags:
+ - cron
+ - install
+ - update
+ - android
+ - git
+
diff --git a/per-service/git-servers/roles/cronjobs/templates/git-bundles b/per-service/git-servers/roles/cronjobs/templates/git-bundles
new file mode 100644
index 00000000..635f7f75
--- /dev/null
+++ b/per-service/git-servers/roles/cronjobs/templates/git-bundles
@@ -0,0 +1,10 @@
+MAILTO=linaro-infrastructure-errors@lists.linaro.org
+{% if git_bundle_blacklist is defined %}
+#Ansible: Create clone bundles (using blacklist)
+3 3 * * 0 {{git_user}} {{tools_checkout_dir}}/linaro-git-tools/bundles/create-bundle.py --exclude-list {{tools_checkout_dir}}/{{git_bundle_blacklist}}
+{% endif %}
+
+{% if git_bundle_whitelist is defined %}
+#Ansible: Create clone bundles (using whitelist)
+3 3 * * 0 {{git_user}} {{tools_checkout_dir}}/linaro-git-tools/bundles/create-bundle.py --repo-list {{tools_checkout_dir}}/{{git_bundle_whitelist}}
+{% endif %}
diff --git a/per-service/git-servers/roles/cronjobs/templates/gitserver b/per-service/git-servers/roles/cronjobs/templates/gitserver
index 9d16312f..e6a9c765 100644
--- a/per-service/git-servers/roles/cronjobs/templates/gitserver
+++ b/per-service/git-servers/roles/cronjobs/templates/gitserver
@@ -12,15 +12,3 @@ MAILTO=linaro-infrastructure-errors@lists.linaro.org
#Ansible: Clean trashed repositories
2 5 * * * {{git_user}} {{tools_checkout_dir}}/linaro-git-tools/clean-trash-repo.py
{% endif %}
-
-{# TODO: refactor below #}
-
-{% if git_bundle_blacklist is defined %}
-#Ansible: Create clone bundles (using blacklist)
-3 3 * * 0 {{git_user}} {{tools_checkout_dir}}/linaro-git-tools/bundles/create-bundle.py --exclude-list {{tools_checkout_dir}}/{{git_bundle_blacklist}}
-{% endif %}
-
-{% if git_bundle_whitelist is defined %}
-#Ansible: Create clone bundles (using whitelist)
-3 3 * * 0 {{git_user}} {{tools_checkout_dir}}/linaro-git-tools/bundles/create-bundle.py --repo-list {{tools_checkout_dir}}/{{git_bundle_whitelist}}
-{% endif %}