52 lines
1.5 KiB
Bash
52 lines
1.5 KiB
Bash
#!/bin/bash
|
|
echo "Elasticsearch is now available. Proceeding with initialization..."
|
|
|
|
echo "Creating Elasticsearch indexes, roles, and users..."
|
|
|
|
# Command to create the "plans" index
|
|
curl -XPUT "http://localhost:9200/opencdmp-plans-test" -u elastic:elastic -H 'Content-Type: application/json' -d '{
|
|
"settings": {
|
|
"number_of_shards": 1,
|
|
"number_of_replicas": 1
|
|
},
|
|
"mappings": {
|
|
"properties": {
|
|
"title": { "type": "text" },
|
|
"description": { "type": "text" },
|
|
"price": { "type": "float" },
|
|
"date_added": { "type": "date" }
|
|
}
|
|
}
|
|
}'
|
|
|
|
# Command to create the "descriptions" index
|
|
curl -XPUT "http://localhost:9200/opencdmp-descriptions-test" -u elastic:elastic -H 'Content-Type: application/json' -d '{
|
|
"settings": {
|
|
"number_of_shards": 1,
|
|
"number_of_replicas": 1
|
|
},
|
|
"mappings": {
|
|
"properties": {
|
|
"product_id": { "type": "keyword" },
|
|
"description_text": { "type": "text" },
|
|
"language": { "type": "keyword" }
|
|
}
|
|
}
|
|
}'
|
|
|
|
curl -XPOST "localhost:9200/_security/role/opencdmp-api-test" -u elastic:elastic -H 'Content-Type: application/json' -d '{
|
|
"indices": [
|
|
{
|
|
"names": [ "opencdmp-plans-test", "opencdmp-descriptions-test" ],
|
|
"privileges": [ "all" ]
|
|
}
|
|
]
|
|
}'
|
|
|
|
curl -XPOST "localhost:9200/_security/user/opencdmp-api-test?pretty" -u elastic:elastic -H 'Content-Type: application/json' -d'
|
|
{
|
|
"password" : "opencdmp",
|
|
"roles" : [ "opencdmp-api-test" ]
|
|
}'
|
|
|
|
elasticsearch-plugin install analysis-icu |