Add module tests
This commit is contained in:
parent
b46dd3f01c
commit
ace45e8bda
|
@ -1 +1 @@
|
||||||
plugin_test_cases.bash
|
module_and_plugin_test_cases.bash
|
|
@ -0,0 +1 @@
|
||||||
|
module_and_plugin_test_cases.bash
|
|
@ -1 +0,0 @@
|
||||||
plugin_test_cases.bash
|
|
|
@ -33,13 +33,14 @@
|
||||||
##################################
|
##################################
|
||||||
# Common test cases for both tar and rpm/deb based plugin tests
|
# Common test cases for both tar and rpm/deb based plugin tests
|
||||||
##################################
|
##################################
|
||||||
# This file is symlinked to both 25_tar_plugins.bats and 50_plugins.bats so its
|
# This file is symlinked to both 25_tar_plugins.bats and 50_modules_and_plugins.bats so its
|
||||||
# executed twice - once to test plugins using the tar distribution and once to
|
# executed twice - once to test plugins using the tar distribution and once to
|
||||||
# test files using the rpm distribution or the deb distribution, whichever the
|
# test files using the rpm distribution or the deb distribution, whichever the
|
||||||
# system uses.
|
# system uses.
|
||||||
|
|
||||||
# Load test utilities
|
# Load test utilities
|
||||||
load packaging_test_utils
|
load packaging_test_utils
|
||||||
|
load modules
|
||||||
load plugins
|
load plugins
|
||||||
|
|
||||||
setup() {
|
setup() {
|
||||||
|
@ -219,16 +220,30 @@ fi
|
||||||
install_and_check_plugin discovery ec2 aws-java-sdk-core-*.jar
|
install_and_check_plugin discovery ec2 aws-java-sdk-core-*.jar
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "[$GROUP] install lang-expression plugin" {
|
@test "[$GROUP] check ingest-grok module" {
|
||||||
install_and_check_plugin lang expression
|
check_module ingest-grok jcodings-*.jar joni-*.jar
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "[$GROUP] install lang-groovy plugin" {
|
@test "[$GROUP] check lang-expression module" {
|
||||||
install_and_check_plugin lang groovy
|
# we specify the version on the asm-5.0.4.jar so that the test does
|
||||||
|
# not spuriously pass if the jar is missing but the other asm jars
|
||||||
|
# are present
|
||||||
|
check_secure_module lang-expression antlr4-runtime-*.jar asm-5.0.4.jar asm-commons-*.jar asm-tree-*.jar lucene-expressions-*.jar
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "[$GROUP] install lang-painless plugin" {
|
@test "[$GROUP] check lang-groovy module" {
|
||||||
install_and_check_plugin lang painless
|
check_secure_module lang-groovy groovy-*-indy.jar
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "[$GROUP] check lang-mustache module" {
|
||||||
|
check_secure_module lang-mustache compiler-*.jar
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "[$GROUP] check lang-painless module" {
|
||||||
|
# we specify the version on the asm-5.0.4.jar so that the test does
|
||||||
|
# not spuriously pass if the jar is missing but the other asm jars
|
||||||
|
# are present
|
||||||
|
check_secure_module lang-painless antlr4-runtime-*.jar asm-5.0.4.jar asm-commons-*.jar asm-tree-*.jar
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "[$GROUP] install javascript plugin" {
|
@test "[$GROUP] install javascript plugin" {
|
||||||
|
@ -247,6 +262,10 @@ fi
|
||||||
install_and_check_plugin mapper murmur3
|
install_and_check_plugin mapper murmur3
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "[$GROUP] check reindex module" {
|
||||||
|
check_module reindex
|
||||||
|
}
|
||||||
|
|
||||||
@test "[$GROUP] install size mapper plugin" {
|
@test "[$GROUP] install size mapper plugin" {
|
||||||
install_and_check_plugin mapper size
|
install_and_check_plugin mapper size
|
||||||
}
|
}
|
||||||
|
@ -321,18 +340,6 @@ fi
|
||||||
remove_plugin discovery-ec2
|
remove_plugin discovery-ec2
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "[$GROUP] remove lang-expression plugin" {
|
|
||||||
remove_plugin lang-expression
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "[$GROUP] remove lang-groovy plugin" {
|
|
||||||
remove_plugin lang-groovy
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "[$GROUP] remove lang-painless plugin" {
|
|
||||||
remove_plugin lang-painless
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "[$GROUP] remove javascript plugin" {
|
@test "[$GROUP] remove javascript plugin" {
|
||||||
remove_plugin lang-javascript
|
remove_plugin lang-javascript
|
||||||
}
|
}
|
|
@ -0,0 +1,42 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# This file contains some utilities to test the elasticsearch scripts,
|
||||||
|
# the .deb/.rpm packages and the SysV/Systemd scripts.
|
||||||
|
|
||||||
|
# WARNING: This testing file must be executed as root and can
|
||||||
|
# dramatically change your system. It removes the 'elasticsearch'
|
||||||
|
# user/group and also many directories. Do not execute this file
|
||||||
|
# unless you know exactly what you are doing.
|
||||||
|
|
||||||
|
# Licensed to Elasticsearch under one or more contributor
|
||||||
|
# license agreements. See the NOTICE file distributed with
|
||||||
|
# this work for additional information regarding copyright
|
||||||
|
# ownership. Elasticsearch licenses this file to you under
|
||||||
|
# the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
# not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing,
|
||||||
|
# software distributed under the License is distributed on an
|
||||||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
# KIND, either express or implied. See the License for the
|
||||||
|
# specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
|
||||||
|
check_module() {
|
||||||
|
local name=$1
|
||||||
|
shift
|
||||||
|
|
||||||
|
for file in "$@"; do
|
||||||
|
assert_file_exist "$(readlink -m $ESMODULES/$name/$file)"
|
||||||
|
done
|
||||||
|
|
||||||
|
assert_file_exist "$(readlink -m $ESMODULES/$name/$name-*.jar)"
|
||||||
|
assert_file_exist "$(readlink -m $ESMODULES/$name/plugin-descriptor.properties)"
|
||||||
|
}
|
||||||
|
|
||||||
|
check_secure_module() {
|
||||||
|
check_module "$@" plugin-security.policy
|
||||||
|
}
|
|
@ -30,6 +30,7 @@
|
||||||
export_elasticsearch_paths() {
|
export_elasticsearch_paths() {
|
||||||
export ESHOME="/usr/share/elasticsearch"
|
export ESHOME="/usr/share/elasticsearch"
|
||||||
export ESPLUGINS="$ESHOME/plugins"
|
export ESPLUGINS="$ESHOME/plugins"
|
||||||
|
export ESMODULES="$ESHOME/modules"
|
||||||
export ESCONFIG="/etc/elasticsearch"
|
export ESCONFIG="/etc/elasticsearch"
|
||||||
export ESSCRIPTS="$ESCONFIG/scripts"
|
export ESSCRIPTS="$ESCONFIG/scripts"
|
||||||
export ESDATA="/var/lib/elasticsearch"
|
export ESDATA="/var/lib/elasticsearch"
|
||||||
|
@ -82,6 +83,7 @@ verify_package_installation() {
|
||||||
assert_file "$ESDATA" d elasticsearch elasticsearch 755
|
assert_file "$ESDATA" d elasticsearch elasticsearch 755
|
||||||
assert_file "$ESLOG" d elasticsearch elasticsearch 755
|
assert_file "$ESLOG" d elasticsearch elasticsearch 755
|
||||||
assert_file "$ESPLUGINS" d elasticsearch elasticsearch 755
|
assert_file "$ESPLUGINS" d elasticsearch elasticsearch 755
|
||||||
|
assert_file "$ESMODULES" d root root 755
|
||||||
assert_file "$ESPIDDIR" d elasticsearch elasticsearch 755
|
assert_file "$ESPIDDIR" d elasticsearch elasticsearch 755
|
||||||
assert_file "$ESHOME/NOTICE.txt" f root root 644
|
assert_file "$ESHOME/NOTICE.txt" f root root 644
|
||||||
assert_file "$ESHOME/README.textile" f root root 644
|
assert_file "$ESHOME/README.textile" f root root 644
|
||||||
|
|
|
@ -68,6 +68,7 @@ move_elasticsearch() {
|
||||||
|
|
||||||
# Export some useful paths.
|
# Export some useful paths.
|
||||||
export_elasticsearch_paths() {
|
export_elasticsearch_paths() {
|
||||||
|
export ESMODULES="$ESHOME/modules"
|
||||||
export ESPLUGINS="$ESHOME/plugins"
|
export ESPLUGINS="$ESHOME/plugins"
|
||||||
export ESCONFIG="$ESHOME/config"
|
export ESCONFIG="$ESHOME/config"
|
||||||
export ESSCRIPTS="$ESCONFIG/scripts"
|
export ESSCRIPTS="$ESCONFIG/scripts"
|
||||||
|
|
Loading…
Reference in New Issue