aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy
diff options
context:
space:
mode:
authorDaniel Schwarz <daniel.schwarz@sonarsource.com>2017-06-29 14:17:10 +0200
committerDaniel Schwarz <bartfastiel@users.noreply.github.com>2017-08-09 15:09:54 +0200
commitfba6ad10cd608de676bf1672db821651f2913c3d (patch)
treeb42046ff2ab43bbf5ab313978f35f50ecbd57681 /sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy
parentfde5a3c4fd82ad3f5d6185a2023c1bf16a9a173d (diff)
downloadsonarqube-fba6ad10cd608de676bf1672db821651f2913c3d.tar.gz
sonarqube-fba6ad10cd608de676bf1672db821651f2913c3d.zip
SONAR-8798 SearchServer starts external ES 5 process
This includes to package Elasticsearch 5.0.2 in the SonarQube application This change is required, because Elasticsearch versions later 5 do not provide support for running Elasticsearch “embedded” anymore.
Diffstat (limited to 'sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy')
-rw-r--r--sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/groovy-2.4.6-indy.jarbin0 -> 4527730 bytes
-rw-r--r--sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/lang-groovy-5.0.2.jarbin0 -> 18106 bytes
-rw-r--r--sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-descriptor.properties40
-rw-r--r--sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-security.policy59
4 files changed, 99 insertions, 0 deletions
diff --git a/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/groovy-2.4.6-indy.jar b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/groovy-2.4.6-indy.jar
new file mode 100644
index 00000000000..ce3531e0bf3
--- /dev/null
+++ b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/groovy-2.4.6-indy.jar
Binary files differ
diff --git a/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/lang-groovy-5.0.2.jar b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/lang-groovy-5.0.2.jar
new file mode 100644
index 00000000000..f1009e8ccf6
--- /dev/null
+++ b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/lang-groovy-5.0.2.jar
Binary files differ
diff --git a/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-descriptor.properties b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-descriptor.properties
new file mode 100644
index 00000000000..7360511445a
--- /dev/null
+++ b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-descriptor.properties
@@ -0,0 +1,40 @@
+# Elasticsearch plugin descriptor file
+# This file must exist as 'plugin-descriptor.properties' in a folder named `elasticsearch`
+# inside all plugins.
+#
+### example plugin for "foo"
+#
+# foo.zip <-- zip file for the plugin, with this structure:
+#|____elasticsearch/
+#| |____ <arbitrary name1>.jar <-- classes, resources, dependencies
+#| |____ <arbitrary nameN>.jar <-- any number of jars
+#| |____ plugin-descriptor.properties <-- example contents below:
+#
+# classname=foo.bar.BazPlugin
+# description=My cool plugin
+# version=2.0
+# elasticsearch.version=2.0
+# java.version=1.7
+#
+### mandatory elements for all plugins:
+#
+# 'description': simple summary of the plugin
+description=Groovy scripting integration for Elasticsearch
+#
+# 'version': plugin's version
+version=5.0.2
+#
+# 'name': the plugin name
+name=lang-groovy
+#
+# 'classname': the name of the class to load, fully-qualified.
+classname=org.elasticsearch.script.groovy.GroovyPlugin
+#
+# 'java.version' version of java the code is built against
+# use the system property java.specification.version
+# version string must be a sequence of nonnegative decimal integers
+# separated by "."'s and may have leading zeros
+java.version=1.8
+#
+# 'elasticsearch.version' version of elasticsearch compiled against
+elasticsearch.version=5.0.2
diff --git a/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-security.policy b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-security.policy
new file mode 100644
index 00000000000..13d00d6d17c
--- /dev/null
+++ b/sonar-application/src/main/assembly/elasticsearch/modules/lang-groovy/plugin-security.policy
@@ -0,0 +1,59 @@
+/*
+ * 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.
+ */
+
+grant {
+ // needed to generate runtime classes
+ permission java.lang.RuntimePermission "createClassLoader";
+ // needed by IndyInterface
+ permission java.lang.RuntimePermission "getClassLoader";
+ // needed by groovy engine
+ permission java.lang.RuntimePermission "accessDeclaredMembers";
+ permission java.lang.RuntimePermission "accessClassInPackage.sun.reflect";
+ permission java.lang.RuntimePermission "accessClassInPackage.jdk.internal.reflect";
+ // Allow executing groovy scripts with codesource of /untrusted
+ permission groovy.security.GroovyCodeSourcePermission "/untrusted";
+
+ // Standard set of classes
+ permission org.elasticsearch.script.ClassPermission "<<STANDARD>>";
+ // groovy runtime (TODO: clean these up if possible)
+ permission org.elasticsearch.script.ClassPermission "groovy.grape.GrabAnnotationTransformation";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.Binding";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.GroovyObject";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.GString";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.Script";
+ permission org.elasticsearch.script.ClassPermission "groovy.util.GroovyCollections";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.ast.builder.AstBuilderTransformation";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.reflection.ClassInfo";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.GStringImpl";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.powerassert.ValueRecorder";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.powerassert.AssertionRenderer";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.ScriptBytecodeAdapter";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.typehandling.DefaultTypeTransformation";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.vmplugin.v7.IndyInterface";
+ permission org.elasticsearch.script.ClassPermission "sun.reflect.ConstructorAccessorImpl";
+ permission org.elasticsearch.script.ClassPermission "sun.reflect.MethodAccessorImpl";
+ permission org.elasticsearch.script.ClassPermission "jdk.internal.reflect.ConstructorAccessorImpl";
+ permission org.elasticsearch.script.ClassPermission "jdk.internal.reflect.MethodAccessorImpl";
+
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.Closure";
+ permission org.elasticsearch.script.ClassPermission "org.codehaus.groovy.runtime.GeneratedClosure";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.MetaClass";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.Range";
+ permission org.elasticsearch.script.ClassPermission "groovy.lang.Reference";
+};