Merge "New Aptly scripts"
diff --git a/README.rst b/README.rst
index 300c3e5..6321347 100644
--- a/README.rst
+++ b/README.rst
@@ -66,6 +66,20 @@
Version: GnuPG v1
...
+Define s3 endpoint:
+
+.. code-block:: yaml
+
+ parameters:
+ aptly:
+ server:
+ endpoint:
+ mys3endpoint:
+ engine: s3
+ awsAccessKeyID: xxxx
+ awsSecretAccessKey: xxxx
+ bucket: test
+
Example pillar
==============
diff --git a/aptly/files/aptly.conf b/aptly/files/aptly.conf
index 71c206f..0f891f9 100644
--- a/aptly/files/aptly.conf
+++ b/aptly/files/aptly.conf
@@ -1,20 +1,47 @@
{%- from "aptly/map.jinja" import server with context %}
{
- "rootDir": "{{ server.root_dir }}",
+ "rootDir": "{{ server.get('config', {}).root_dir|default(server.root_dir) }}",
"downloadConcurrency": 4,
- "architectures": [ "amd64" ],
- "dependencyFollowSuggests": false,
- "dependencyFollowRecommends": false,
- "dependencyFollowAllVariants": false,
- "dependencyFollowSource": false,
+ "architectures": [ {% for arch in server.architectures|default([]) %}"{{ arch }}"{% if not loop.last %},{% endif %}{% endfor %} ],
+ "dependencyFollowSuggests": {{ server.dependency.follow.suggests|lower }},
+ "dependencyFollowRecommends": {{ server.dependency.follow.recommends|lower }},
+ "dependencyFollowAllVariants": {{ server.dependency.follow.all_variants|lower }},
+ "dependencyFollowSource": {{ server.dependency.follow.source|lower }},
+ {%- if server.endpoint is defined %}
+ "S3PublishEndpoints": {
+ {%- for name, endpoint in server.endpoint.iteritems() %}
+ {%- if endpoint.engine == 's3' %}
+ "{{ name }}": {
+ {%- for key, value in endpoint.iteritems() %}
+ "{{ key }}": "{{ value }}"{% if not loop.last %},{% endif %}
+ {%- endfor %}
+ }
+ {%- endif %}
+ {%- endfor %}
+ },
+ "SwiftPublishEndpoints": {
+ {%- for name, endpoint in server.endpoint.iteritems() %}
+ {%- if endpoint.engine == 'swift' %}
+ "{{ name }}": {
+ {%- for key, value in endpoint.iteritems() %}
+ "{{ key }}": "{{ value }}"{% if not loop.last %},{% endif %}
+ {%- endfor %}
+ }
+ {%- endif %}
+ {%- endfor %}
+ },
+ {%- endif %}
{%- if server.secure %}
- "gpgDisableSign": false,
- "gpgDisableVerify": false,
+ "gpgDisableSign": {{ server.gpg.disable_sign|default(False)|lower }},
+ "gpgDisableVerify": {{ server.gpg.disable_verify|default(False)|lower }},
{%- else %}
- "gpgDisableSign": true,
- "gpgDisableVerify": true,
+ "gpgDisableSign": {{ server.gpg.disable_sign|default(True)|lower }},
+ "gpgDisableVerify": {{ server.gpg.disable_verify|default(True)|lower }},
{%- endif %}
"downloadSourcePackages": false,
"ppaDistributorID": "ubuntu",
"ppaCodename": ""
}
+{#-
+vim: syntax=jinja
+-#}
diff --git a/aptly/map.jinja b/aptly/map.jinja
index e0d4853..5538f99 100644
--- a/aptly/map.jinja
+++ b/aptly/map.jinja
@@ -1,10 +1,18 @@
{%- set server = salt['grains.filter_by']({
- 'Debian': {
+ 'default': {
'source': {
'engine': 'pkg',
'pkgs': ['aptly', 'bzip2', 'cron'],
},
+ 'dependency': {
+ 'follow': {
+ 'suggests': false,
+ 'recommends': false,
+ 'all_variants': false,
+ 'source': false,
+ }
+ },
'home_dir': '/var/lib/aptly',
'root_dir': '/srv/aptly',
'secure': True,