Merge "Refactor apt_mirantis/elastic"
diff --git a/debmirror/mirror_mirantis_com/elasticsearch-5.x/xenial.yml b/debmirror/mirror_mirantis_com/elasticsearch-5.x/xenial.yml
new file mode 100644
index 0000000..fd80c19
--- /dev/null
+++ b/debmirror/mirror_mirantis_com/elasticsearch-5.x/xenial.yml
@@ -0,0 +1,24 @@
+parameters:
+  _param:
+    apt_mk_version: 'stable'
+    mirror_mirantis_com_elasticsearch_5_x_xenial_force: False
+    debmirror_mirrors_base_target_dir: "/srv/volumes/aptly/public/${_param:apt_mk_version}/"
+  debmirror:
+    client:
+      enabled: true
+      mirrors:
+        mirror_mirantis_com_elasticsearch_5_x_xenial:
+          enabled: true
+          force: ${_param:mirror_mirantis_com_elasticsearch_5_x_xenial_force}
+          lock_target: True
+          extra_flags: [ '--verbose', '--progress', '--nosource', '--no-check-gpg', '--rsync-extra=none' ]
+          method: "rsync"
+          arch: [ 'amd64' ]
+          mirror_host: "mirror.mirantis.com"
+          mirror_root: ":mirror/${_param:apt_mk_version}/elasticsearch-5.x/xenial/"
+          target_dir: "${_param:debmirror_mirrors_base_target_dir}/elasticsearch-5.x/xenial/"
+          log_file: "/var/log/debmirror/mirror_mirantis_com_elasticsearch_5_x_xenial.log"
+          dist: [ stable ]
+          section: [ main ]
+          filter:
+            001: "--exclude='-dbg_'"
diff --git a/debmirror/mirror_mirantis_com/elasticsearch-curator-5/xenial.yml b/debmirror/mirror_mirantis_com/elasticsearch-curator-5/xenial.yml
new file mode 100644
index 0000000..f939c79
--- /dev/null
+++ b/debmirror/mirror_mirantis_com/elasticsearch-curator-5/xenial.yml
@@ -0,0 +1,22 @@
+parameters:
+  _param:
+    apt_mk_version: 'stable'
+    mirror_mirantis_com_elasticsearch_curator_5_xenial_force: False
+    debmirror_mirrors_base_target_dir: "/srv/volumes/aptly/public/${_param:apt_mk_version}/"
+  debmirror:
+    client:
+      enabled: true
+      mirrors:
+        mirror_mirantis_com_elasticsearch_curator_5_xenial:
+          enabled: true
+          force: ${_param:mirror_mirantis_com_elasticsearch_curator_5_xenial_force}
+          lock_target: True
+          extra_flags: [ '--verbose', '--progress', '--nosource', '--no-check-gpg', '--rsync-extra=none' ]
+          method: "rsync"
+          arch: [ 'amd64' ]
+          mirror_host: "mirror.mirantis.com"
+          mirror_root: ":mirror/${_param:apt_mk_version}/elasticsearch-curator-5/xenial/"
+          target_dir: "${_param:debmirror_mirrors_base_target_dir}/elasticsearch-curator-5/xenial/"
+          log_file: "/var/log/debmirror/mirror_mirantis_com_elasticsearch_curator_5_xenial.log"
+          dist: [ stable ]
+          section: [ main ]
diff --git a/linux/system/repo/keystorage/elasticsearch.yml b/linux/system/repo/keystorage/elasticsearch.yml
new file mode 100644
index 0000000..90fcc90
--- /dev/null
+++ b/linux/system/repo/keystorage/elasticsearch.yml
@@ -0,0 +1,41 @@
+parameters:
+  linux:
+    system:
+      repo:
+        mcp_elasticsearch:
+          # pub   2048R/D88E42B4 2013-09-16
+          key: |
+            -----BEGIN PGP PUBLIC KEY BLOCK-----
+            Version: GnuPG v1
+
+            mQENBFI3HsoBCADXDtbNJnxbPqB1vDNtCsqhe49vFYsZN9IOZsZXgp7aHjh6CJBD
+            A+bGFOwyhbd7at35jQjWAw1O3cfYsKAmFy+Ar3LHCMkV3oZspJACTIgCrwnkic/9
+            CUliQe324qvObU2QRtP4Fl0zWcfb/S8UYzWXWIFuJqMvE9MaRY1bwUBvzoqavLGZ
+            j3SF1SPO+TB5QrHkrQHBsmX+Jda6d4Ylt8/t6CvMwgQNlrlzIO9WT+YN6zS+sqHd
+            1YK/aY5qhoLNhp9G/HxhcSVCkLq8SStj1ZZ1S9juBPoXV1ZWNbxFNGwOh/NYGldD
+            2kmBf3YgCqeLzHahsAEpvAm8TBa7Q9W21C8vABEBAAG0RUVsYXN0aWNzZWFyY2gg
+            KEVsYXN0aWNzZWFyY2ggU2lnbmluZyBLZXkpIDxkZXZfb3BzQGVsYXN0aWNzZWFy
+            Y2gub3JnPokBOAQTAQIAIgUCUjceygIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgEC
+            F4AACgkQ0n1mbNiOQrRzjAgAlTUQ1mgo3nK6BGXbj4XAJvuZDG0HILiUt+pPnz75
+            nsf0NWhqR4yGFlmpuctgCmTD+HzYtV9fp9qW/bwVuJCNtKXk3sdzYABY+Yl0Cez/
+            7C2GuGCOlbn0luCNT9BxJnh4mC9h/cKI3y5jvZ7wavwe41teqG14V+EoFSn3NPKm
+            TxcDTFrV7SmVPxCBcQze00cJhprKxkuZMPPVqpBS+JfDQtzUQD/LSFfhHj9eD+Xe
+            8d7sw+XvxB2aN4gnTlRzjL1nTRp0h2/IOGkqYfIG9rWmSLNlxhB2t+c0RsjdGM4/
+            eRlPWylFbVMc5pmDpItrkWSnzBfkmXL3vO2X3WvwmSFiQbkBDQRSNx7KAQgA5JUl
+            zcMW5/cuyZR8alSacKqhSbvoSqqbzHKcUQZmlzNMKGTABFG1yRx9r+wa/fvqP6OT
+            RzRDvVS/cycws8YX7Ddum7x8uI95b9ye1/Xy5noPEm8cD+hplnpU+PBQZJ5XJ2I+
+            1l9Nixx47wPGXeClLqcdn0ayd+v+Rwf3/XUJrvccG2YZUiQ4jWZkoxsA07xx7Bj+
+            Lt8/FKG7sHRFvePFU0ZS6JFx9GJqjSBbHRRkam+4emW3uWgVfZxuwcUCn1ayNgRt
+            KiFv9jQrg2TIWEvzYx9tywTCxc+FFMWAlbCzi+m4WD+QUWWfDQ009U/WM0ks0Kww
+            EwSk/UDuToxGnKU2dQARAQABiQEfBBgBAgAJBQJSNx7KAhsMAAoJENJ9ZmzYjkK0
+            c3MIAIE9hAR20mqJWLcsxLtrRs6uNF1VrpB+4n/55QU7oxA1iVBO6IFu4qgsF12J
+            TavnJ5MLaETlggXY+zDef9syTPXoQctpzcaNVDmedwo1SiL03uMoblOvWpMR/Y0j
+            6rm7IgrMWUDXDPvoPGjMl2q1iTeyHkMZEyUJ8SKsaHh4jV9wp9KmC8C+9CwMukL7
+            vM5w8cgvJoAwsp3Fn59AxWthN3XJYcnMfStkIuWgR7U2r+a210W6vnUxU4oN0PmM
+            cursYPyeV0NX/KQeUeNMwGTFB6QHS/anRaGQewijkrYYoTNtfllxIu9XYmiBERQ/
+            qPDlGRlOgVTd9xUfHFkzB52c70E=
+            =92oX
+            -----END PGP PUBLIC KEY BLOCK-----
+        mcp_elasticsearch_curator:
+          # pub   2048R/D88E42B4 2013-09-16
+          key: ${linux:system:repo:mcp_elasticsearch:key}
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml b/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
index 9fc19c6..13c30e7 100644
--- a/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/2x.yml
@@ -1,3 +1,7 @@
+# DEPRECATED since 2018.7+ release.
+# Please use system/repo/mcp/apt_mirantis
+classes:
+- system.linux.system.repo.keystorage.elasticsearch
 parameters:
   _param:
     apt_mk_version: stable
@@ -8,12 +12,10 @@
         mcp_elastic_2x:
           source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_2x_version}/elasticsearch-2.x/${_param:linux_system_codename}/ stable main"
           architectures: amd64
-          key_id: D88E42B4
-          key_server: keyserver.ubuntu.com
           clean_file: true
+          key: ${linux:system:repo:mcp_elasticsearch:key}
         mcp_elastic_curator_2x:
           source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_2x_version}/elasticsearch-curator/${_param:linux_system_codename}/ stable main"
           architectures: amd64
-          key_id: D88E42B4
-          key_server: keyserver.ubuntu.com
           clean_file: true
+          key: ${linux:system:repo:mcp_elasticsearch:key}
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml b/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
index 01d2ff0..49e9eba 100644
--- a/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/5x.yml
@@ -1,3 +1,7 @@
+# DEPRECATED since 2018.7+ release.
+# Please use system/repo/mcp/apt_mirantis
+classes:
+- system.linux.system.repo.keystorage.elasticsearch
 parameters:
   _param:
     apt_mk_version: stable
@@ -8,13 +12,10 @@
         mcp_elastic_5x:
           source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_5x_version}/elasticsearch-5.x/${_param:linux_system_codename}/ stable main"
           architectures: amd64
-          key_id: D88E42B4
-          key_server: keyserver.ubuntu.com
           clean_file: true
+          key: ${linux:system:repo:mcp_elasticsearch:key}
         mcp_elastic_curator_5x:
           source: "deb [arch=amd64] http://mirror.mirantis.com/${_param:linux_system_repo_mcp_elastic_5x_version}/elasticsearch-curator-5/${_param:linux_system_codename}/ stable main"
           architectures: amd64
-          key_id: D88E42B4
-          key_server: keyserver.ubuntu.com
           clean_file: true
-
+          key: ${linux:system:repo:mcp_elasticsearch:key}
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/es.yml b/linux/system/repo/mcp/apt_mirantis/elastic/es.yml
new file mode 100644
index 0000000..1e455c8
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/es.yml
@@ -0,0 +1,18 @@
+classes:
+- system.linux.system.repo.keystorage.elasticsearch
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_url: http://mirror.mirantis.com/${_param:apt_mk_version}/
+    linux_system_repo_mcp_elasticsearch_url: ${_param:linux_system_repo_url}/elasticsearch-5.x/
+  linux:
+    system:
+      repo:
+        mcp_elasticsearch:
+          source: "deb [arch=amd64] ${_param:linux_system_repo_mcp_elasticsearch_url}/${_param:linux_system_codename} stable main"
+          architectures: amd64
+          clean_file: true
+          pin:
+          - pin: 'release o=elastic'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/es_curator.yml b/linux/system/repo/mcp/apt_mirantis/elastic/es_curator.yml
new file mode 100644
index 0000000..c099a03
--- /dev/null
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/es_curator.yml
@@ -0,0 +1,18 @@
+classes:
+- system.linux.system.repo.keystorage.elasticsearch
+parameters:
+  _param:
+    apt_mk_version: stable
+    linux_system_repo_url: http://mirror.mirantis.com/${_param:apt_mk_version}/
+    linux_system_repo_mcp_elasticsearch_curator_url: ${_param:linux_system_repo_url}/elasticsearch-curator-5/
+  linux:
+    system:
+      repo:
+        mcp_elasticsearch_curator:
+          source: "deb [arch=amd64] ${_param:linux_system_repo_mcp_elasticsearch_curator_url}/${_param:linux_system_codename} stable main"
+          architectures: amd64
+          clean_file: true
+          pin:
+          - pin: 'release o=Elastic'
+            priority: 1100
+            package: '*'
diff --git a/linux/system/repo/mcp/apt_mirantis/elastic/init.yml b/linux/system/repo/mcp/apt_mirantis/elastic/init.yml
index a66b757..08f54fd 100644
--- a/linux/system/repo/mcp/apt_mirantis/elastic/init.yml
+++ b/linux/system/repo/mcp/apt_mirantis/elastic/init.yml
@@ -1,3 +1,3 @@
 classes:
-- system.linux.system.repo.mcp.apt_mirantis.elastic.2x
-- system.linux.system.repo.mcp.apt_mirantis.elastic.5x
\ No newline at end of file
+- system.linux.system.repo.mcp.apt_mirantis.elastic.es
+- system.linux.system.repo.mcp.apt_mirantis.elastic.es_curator