added support for custom git repos + mirror fix
Change-Id: Icea728380076f2881ec44d58bd8e932df9080f08
diff --git a/README.rst b/README.rst
index 0c260c1..bcf44fa 100644
--- a/README.rst
+++ b/README.rst
@@ -70,6 +70,17 @@
server:
directory: /srv/git
repos:
+ - name: custom-repo-1
+ - name: custom-repo-2
+
+Reclass with GIT over HTTP server setup. Requires web server. Mirrored upsream repos example.
+
+.. code-block:: yaml
+
+ git:
+ server:
+ directory: /srv/git
+ repos:
- name: gerritlib
url: https://github.com/openstack-infra/gerritlib.git
- name: jeepyb
diff --git a/git/server.sls b/git/server.sls
index 139200d..a00561a 100644
--- a/git/server.sls
+++ b/git/server.sls
@@ -15,15 +15,29 @@
{%- for repo in server.get('repos',{}) %}
+{%- if repo.url is defined %}
+
git_server_{{ repo.name }}:
git.latest:
- name: {{ repo.url }}
- target: {{ server.directory }}/{{ repo.name }}.git
- force_reset: True
+ - mirror: True
+ - require:
+ - file: {{ server.directory }}
+
+{%- else %}
+
+git_server_{{ repo.name }}:
+ git.present:
+ - name: {{ server.directory }}/{{ repo.name }}.git
+ - force: True
- bare: True
- require:
- file: {{ server.directory }}
+{%- endif %}
+
git_update_server_info_{{ repo.name }}:
cmd.run:
- name: git update-server-info