mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-06 04:58:50 +00:00
2c81d7f77e
This reworks how we configure the `shadow` plugin in the build. The major change is that we no longer bundle dependencies in the `compile` configuration, instead we bundle dependencies in the new `bundle` configuration. This feels more right because it is a little more "opt in" rather than "opt out" and the name of the `bundle` configuration is a little more obvious. As an neat side effect of this, the `runtimeElements` configuration used when one project depends on another now contains exactly the dependencies needed to run the project so you no longer need to reference projects that use the shadow plugin like this: ``` testCompile project(path: ':client:rest-high-level', configuration: 'shadow') ``` You can instead use the much more normal: ``` testCompile "org.elasticsearch.client:elasticsearch-rest-high-level-client:${version}" ```
53 lines
1.9 KiB
Groovy
53 lines
1.9 KiB
Groovy
apply plugin: 'elasticsearch.esplugin'
|
|
|
|
esplugin {
|
|
name 'spi-extension'
|
|
description 'An example spi extension pluing for xpack security'
|
|
classname 'org.elasticsearch.example.SpiExtensionPlugin'
|
|
extendedPlugins = ['x-pack-security']
|
|
}
|
|
|
|
dependencies {
|
|
compileOnly "org.elasticsearch.plugin:x-pack-core:${version}"
|
|
testCompile project(path: xpackProject('transport-client').path, configuration: 'runtime')
|
|
}
|
|
|
|
|
|
integTestRunner {
|
|
systemProperty 'tests.security.manager', 'false'
|
|
}
|
|
|
|
integTestCluster {
|
|
dependsOn buildZip
|
|
setting 'xpack.security.authc.realms.custom.order', '0'
|
|
setting 'xpack.security.authc.realms.custom.type', 'custom'
|
|
setting 'xpack.security.authc.realms.custom.filtered_setting', 'should be filtered'
|
|
setting 'xpack.security.authc.realms.esusers.order', '1'
|
|
setting 'xpack.security.authc.realms.esusers.type', 'file'
|
|
setting 'xpack.security.authc.realms.native.type', 'native'
|
|
setting 'xpack.security.authc.realms.native.order', '2'
|
|
setting 'xpack.security.enabled', 'true'
|
|
setting 'xpack.ml.enabled', 'false'
|
|
setting 'xpack.monitoring.enabled', 'false'
|
|
setting 'xpack.license.self_generated.type', 'trial'
|
|
|
|
// This is important, so that all the modules are available too.
|
|
// There are index templates that use token filters that are in analysis-module and
|
|
// processors are being used that are in ingest-common module.
|
|
distribution = 'zip'
|
|
|
|
setupCommand 'setupDummyUser',
|
|
'bin/elasticsearch-users', 'useradd', 'test_user', '-p', 'x-pack-test-password', '-r', 'superuser'
|
|
waitCondition = { node, ant ->
|
|
File tmpFile = new File(node.cwd, 'wait.success')
|
|
ant.get(src: "http://${node.httpUri()}/_cluster/health?wait_for_nodes=>=${numNodes}&wait_for_status=yellow",
|
|
dest: tmpFile.toString(),
|
|
username: 'test_user',
|
|
password: 'x-pack-test-password',
|
|
ignoreerrors: true,
|
|
retries: 10)
|
|
return tmpFile.exists()
|
|
}
|
|
}
|
|
check.dependsOn integTest
|