1 |
|
2 | (function() {
|
3 | module.exports = function(client) {
|
4 | return function(bulk, callback) {
|
5 | return bulk.reduce(function(p, c) {
|
6 | return p.then(function() {
|
7 | var putalias, t;
|
8 | t = c.alias;
|
9 | putalias = function() {
|
10 | return client.indices.putAlias({
|
11 | name: t._name,
|
12 | index: t._index
|
13 | });
|
14 | };
|
15 | return putalias()["catch"](function(err) {
|
16 | if (err.status === 404) {
|
17 | return client.indices.create({
|
18 | index: t._index
|
19 | }).then(putalias);
|
20 | } else {
|
21 | throw err;
|
22 | }
|
23 | });
|
24 | });
|
25 | }, Promise.resolve()).then(function() {
|
26 | return callback(null, {});
|
27 | })["catch"](function(err) {
|
28 | return callback(err);
|
29 | });
|
30 | };
|
31 | };
|
32 |
|
33 | }).call(this);
|
34 |
|
35 |
|