jolicode / elastically

🔍 JoliCode's Elastica wrapper to bootstrap Elasticsearch PHP integrations
248 stars 37 forks source link

OpenSearch 2.3.0 indices:admin/aliases for '_all' indices is not allowed for a regular user #122

Open kftseng opened 1 year ago

kftseng commented 1 year ago

must patch IndexBuilder.php~

*** jolicode/elastically/src/IndexBuilder.php~ 2022-11-07 04:22:55.000000000 +0800
--- jolicode/elastically/src/IndexBuilder.php 2022-11-07 04:24:35.888045057 +0800
***************
*** 64,70 ****
$data = ['actions' => []];
! $data['actions'][] = ['remove' => ['index' => '*', 'alias' => $indexName]];
$data['actions'][] = ['add' => ['index' => $index->getName(), 'alias' => $indexName]];
var_dump(json_encode($data));
return $this->client->request('_aliases', Request::POST, $data);
--- 64,70 ----
$data = ['actions' => []];
! $data['actions'][] = ['remove' => ['index' => $indexName . '*', 'alias' => $indexName]];
$data['actions'][] = ['add' => ['index' => $index->getName(), 'alias' => $indexName]];
var_dump(json_encode($data));
return $this->client->request('_aliases', Request::POST, $data);
lyrixx commented 1 year ago

Hello,

Would you mind to submit a patch?

Thanks

kftseng commented 1 year ago
diff --git a/src/IndexBuilder.php b/src/IndexBuilder.php
index 33a461d..8b8af56 100644
--- a/src/IndexBuilder.php
+++ b/src/IndexBuilder.php
@@ -54,7 +54,7 @@ class IndexBuilder

         $data = ['actions' => []];

-        $data['actions'][] = ['remove' => ['index' => '*', 'alias' => $indexName]];
+        $data['actions'][] = ['remove' => ['index' => $indexName . '*', 'alias' => $indexName]];
         $data['actions'][] = ['add' => ['index' => $index->getName(), 'alias' => $indexName]];

         return $this->client->request('_aliases', Request::POST, $data);