You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by GitBox <gi...@apache.org> on 2022/02/15 00:59:47 UTC

[GitHub] [solr] risdenk opened a new pull request #636: SOLR-13989: Create hadoop-auth module

risdenk opened a new pull request #636:
URL: https://github.com/apache/solr/pull/636


   https://issues.apache.org/jira/browse/SOLR-13989


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1040293868


   > I see you change package name, that is good. You may want to consider adding the new package to SolrResourceLoader, so it works with class=solr.Xxxx. Or document the full-name equivalent.
   
   Gah thanks @janhoy! I was wondering how to do that :D


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
sonatype-lift[bot] commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806379240



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       *Critical OSS Vulnerability:*
   ### pkg:maven/org.apache.hadoop/hadoop-auth@3.2.0
   1 Critical, 0 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.hadoop/hadoop-auth@3.2.0</b></summary>
           <ul>
     <details>
       <summary><b>CRITICAL Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-9492] In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10....
   > In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10.0, WebHDFS client might send SPNEGO authorization header to remote URL without proper verification.
   >
   > **CVSS Score:** 8.8
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       *Critical OSS Vulnerability:*
   ### pkg:maven/org.apache.hadoop/hadoop-common@3.2.0
   1 Critical, 0 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.hadoop/hadoop-common@3.2.0</b></summary>
           <ul>
     <details>
       <summary><b>CRITICAL Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-9492] In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10....
   > In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10.0, WebHDFS client might send SPNEGO authorization header to remote URL without proper verification.
   >
   > **CVSS Score:** 8.8
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       *Moderate OSS Vulnerability:*
   ### pkg:maven/com.google.guava/guava@25.1-jre
   0 Critical, 0 Severe, 1 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/com.google.guava/guava@25.1-jre</b></summary>
           <ul>
     <details>
       <summary><b>MODERATE Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-8908] A temp directory creation vulnerability exists in all versions of Guava, allowin...
   > A temp directory creation vulnerability exists in all versions of Guava, allowing an attacker with access to the machine to potentially access data in a temporary directory created by the Guava API com.google.common.io.Files.createTempDir(). By default, on unix-like systems, the created directory is world-readable (readable by an attacker with access to the system). The method in question has been marked @Deprecated in versions 30.0 and later and should not be used. For Android developers, we recommend choosing a temporary directory API provided by Android, such as context.getCacheDir(). For other Java developers, we recommend migrating to the Java 7 API java.nio.file.Files.createTempDirectory() which explicitly configures permissions of 700, or configuring the Java runtime&#39;s java.io.tmpdir system property to point to a location whose permissions are appropriately configured.
   >
   > **CVSS Score:** 3.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       *Severe OSS Vulnerability:*
   ### pkg:maven/org.apache.zookeeper/zookeeper@3.7.0
   0 Critical, 2 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.zookeeper/zookeeper@3.7.0</b></summary>
           <ul>
     <details>
       <summary><b>SEVERE Vulnerabilities (2)</b></summary><br/>
   <ul>
   <details>
               <summary>CVE-2021-28164</summary>
   
   > #### [CVE-2021-28164] In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mo...
   > In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.
   >
   > **CVSS Score:** 5.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
   
   </details>
   <details>
               <summary>CVE-2021-34429</summary>
   
   > #### [CVE-2021-34429] For Eclipse Jetty versions 9.4.37-9.4.42, 10.0.1-10.0.5 & 11.0.1-11.0.5, URIs ca...
   > For Eclipse Jetty versions 9.4.37-9.4.42, 10.0.1-10.0.5 &amp; 11.0.1-11.0.5, URIs can be crafted using some encoded characters to access the content of the WEB-INF directory and/or bypass some security constraints. This is a variation of the vulnerability reported in CVE-2021-28164/GHSA-v7ff-8wcx-gmc5.
   >
   > **CVSS Score:** 5.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
   
   </details>
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806381253



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       @sonatype-lift ignore




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806381283



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       @sonatype-lift ignore

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       @sonatype-lift ignore

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       @sonatype-lift ignore




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] HoustonPutman commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
HoustonPutman commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1040551283


   Hey Kevin, noticed that the `Krb5HttpClientBuilder` was moved to this module, from SolrJ. It doesn't look like it has any of these hadoop dependencies, so it would likely be better to keep it in SolrJ so clients could continue to use it?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] HoustonPutman commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
HoustonPutman commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1040551283


   Hey Kevin, noticed that the `Krb5HttpClientBuilder` was moved to this module, from SolrJ. It doesn't look like it has any of these hadoop dependencies, so it would likely be better to keep it in SolrJ so clients could continue to use it?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r809406423



##########
File path: solr/core/src/java/org/apache/solr/core/snapshots/SolrSnapshotsTool.java
##########
@@ -227,12 +227,12 @@ public void describeSnapshot(String collectionName, String snapshotName) {
       String indexDirPath = coreSnap.getIndexDirPath();
       if (pathPrefix != null) {
         // If the path prefix is specified, rebuild the path to the index directory.
-        indexDirPath = new Path(pathPrefix, coreSnap.getIndexDirPath()).toString();
+        indexDirPath = Path.of(pathPrefix, coreSnap.getIndexDirPath()).toString();
       }
 
       List<String> paths = new ArrayList<>();
       for (String fileName : coreSnap.getFiles()) {
-        Path p = new Path(indexDirPath, fileName);
+        Path p = Path.of(indexDirPath, fileName);

Review comment:
       I looked at this closer and think I'm going to move `SolrSnapshotsTool` to the hdfs module. This change neuters the hdfs part which is pretty core to this tool. The move will at least keep it around and working - since all the other HDFS implementation is in the hdfs module.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r809410699



##########
File path: solr/modules/hadoop-auth/README.md
##########
@@ -0,0 +1,29 @@
+Apache Solr Hadoop Authentication Module
+===============================
+
+Introduction
+------------
+This module implements the support for Hadoop Authentication in Apache Solr. 
+
+Building
+--------
+The Hadoop Authentication module uses the same Gradle build as the core Solr components. 
+
+To build the module, you can use
+
+```
+./gradlew :solr:modules:hadoop-auth:assemble
+```
+
+The resulting module will be placed to the libs directory, for example:
+`solr/modules/hdfs/build/libs/solr-hadoop-auth-9.0.0-SNAPSHOT.jar`
+
+To execute the module tests:
+
+```
+./gradlew :solr:modules:hadoop-auth:test
+```
+
+Usage
+-----
+Please refer to the 'Running Solr on HDFS' section of the reference guide: https://solr.apache.org/guide/running-solr-on-hdfs.html

Review comment:
       Addressed in 0ab392294094da79cea43dd77895683dee7b5b08




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1044606328


   @janhoy @HoustonPutman @madrob any other comments on this? Thanks!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] janhoy commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
janhoy commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806655171



##########
File path: solr/modules/hadoop-auth/README.md
##########
@@ -0,0 +1,29 @@
+Apache Solr Hadoop Authentication Module
+===============================
+
+Introduction
+------------
+This module implements the support for Hadoop Authentication in Apache Solr. 
+
+Building
+--------
+The Hadoop Authentication module uses the same Gradle build as the core Solr components. 
+
+To build the module, you can use
+
+```
+./gradlew :solr:modules:hadoop-auth:assemble
+```
+
+The resulting module will be placed to the libs directory, for example:
+`solr/modules/hdfs/build/libs/solr-hadoop-auth-9.0.0-SNAPSHOT.jar`
+
+To execute the module tests:
+
+```
+./gradlew :solr:modules:hadoop-auth:test
+```
+
+Usage
+-----
+Please refer to the 'Running Solr on HDFS' section of the reference guide: https://solr.apache.org/guide/running-solr-on-hdfs.html

Review comment:
       Figure out the final 9.0 ref-guide URL to put here.
   I think it will be https://solr.apache.org/guide/solr/latest/deployment-guide/solr-on-hdfs.html
   See nightly 10.0 guide: https://nightlies.apache.org/solr/draft-guides/solr-reference-guide-antora/solr/10_0/deployment-guide/solr-on-hdfs.html




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
sonatype-lift[bot] commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806381267



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       I've recorded this as ignored for this pull request. If you change your mind, just comment `@sonatype-lift unignore`.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk merged pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk merged pull request #636:
URL: https://github.com/apache/solr/pull/636


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] janhoy commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
janhoy commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1044730856


   No futher comments, but I have not and will not walk through it all. I trust that if all tests pass after the move, and that it survives a few days of Jenkins massage on main branch, then it is good to go for 9.0.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] sonatype-lift[bot] commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
sonatype-lift[bot] commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806379240



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       *Critical OSS Vulnerability:*
   ### pkg:maven/org.apache.hadoop/hadoop-auth@3.2.0
   1 Critical, 0 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.hadoop/hadoop-auth@3.2.0</b></summary>
           <ul>
     <details>
       <summary><b>CRITICAL Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-9492] In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10....
   > In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10.0, WebHDFS client might send SPNEGO authorization header to remote URL without proper verification.
   >
   > **CVSS Score:** 8.8
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       *Critical OSS Vulnerability:*
   ### pkg:maven/org.apache.hadoop/hadoop-common@3.2.0
   1 Critical, 0 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.hadoop/hadoop-common@3.2.0</b></summary>
           <ul>
     <details>
       <summary><b>CRITICAL Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-9492] In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10....
   > In Apache Hadoop 3.2.0 to 3.2.1, 3.0.0-alpha1 to 3.1.3, and 2.0.0-alpha to 2.10.0, WebHDFS client might send SPNEGO authorization header to remote URL without proper verification.
   >
   > **CVSS Score:** 8.8
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       *Moderate OSS Vulnerability:*
   ### pkg:maven/com.google.guava/guava@25.1-jre
   0 Critical, 0 Severe, 1 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/com.google.guava/guava@25.1-jre</b></summary>
           <ul>
     <details>
       <summary><b>MODERATE Vulnerabilities (1)</b></summary><br/>
   <ul>
   
   > #### [CVE-2020-8908] A temp directory creation vulnerability exists in all versions of Guava, allowin...
   > A temp directory creation vulnerability exists in all versions of Guava, allowing an attacker with access to the machine to potentially access data in a temporary directory created by the Guava API com.google.common.io.Files.createTempDir(). By default, on unix-like systems, the created directory is world-readable (readable by an attacker with access to the system). The method in question has been marked @Deprecated in versions 30.0 and later and should not be used. For Android developers, we recommend choosing a temporary directory API provided by Android, such as context.getCacheDir(). For other Java developers, we recommend migrating to the Java 7 API java.nio.file.Files.createTempDirectory() which explicitly configures permissions of 700, or configuring the Java runtime&#39;s java.io.tmpdir system property to point to a location whose permissions are appropriately configured.
   >
   > **CVSS Score:** 3.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
   
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       *Severe OSS Vulnerability:*
   ### pkg:maven/org.apache.zookeeper/zookeeper@3.7.0
   0 Critical, 2 Severe, 0 Moderate, 0 Unknown vulnerabilities have been found across 1 dependencies
   
   <details>
     <summary><b>Components</b></summary><br/>
     <ul>
         <details>
           <summary><b>pkg:maven/org.apache.zookeeper/zookeeper@3.7.0</b></summary>
           <ul>
     <details>
       <summary><b>SEVERE Vulnerabilities (2)</b></summary><br/>
   <ul>
   <details>
               <summary>CVE-2021-28164</summary>
   
   > #### [CVE-2021-28164] In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mo...
   > In Eclipse Jetty 9.4.37.v20210219 to 9.4.38.v20210224, the default compliance mode allows requests with URIs that contain %2e or %2e%2e segments to access protected resources within the WEB-INF directory. For example a request to /context/%2e/WEB-INF/web.xml can retrieve the web.xml file. This can reveal sensitive information regarding the implementation of a web application.
   >
   > **CVSS Score:** 5.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
   
   </details>
   <details>
               <summary>CVE-2021-34429</summary>
   
   > #### [CVE-2021-34429] For Eclipse Jetty versions 9.4.37-9.4.42, 10.0.1-10.0.5 & 11.0.1-11.0.5, URIs ca...
   > For Eclipse Jetty versions 9.4.37-9.4.42, 10.0.1-10.0.5 &amp; 11.0.1-11.0.5, URIs can be crafted using some encoded characters to access the content of the WEB-INF directory and/or bypass some security constraints. This is a variation of the vulnerability reported in CVE-2021-28164/GHSA-v7ff-8wcx-gmc5.
   >
   > **CVSS Score:** 5.3
   >
   > **CVSS Vector:** CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
   
   </details>
   </ul>
       </details>
           </ul>
         </details>
     </ul>
   </details>
   (at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with `help` or `ignore`)




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] madrob commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
madrob commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r808282969



##########
File path: solr/core/src/java/org/apache/solr/core/snapshots/SolrSnapshotsTool.java
##########
@@ -227,12 +227,12 @@ public void describeSnapshot(String collectionName, String snapshotName) {
       String indexDirPath = coreSnap.getIndexDirPath();
       if (pathPrefix != null) {
         // If the path prefix is specified, rebuild the path to the index directory.
-        indexDirPath = new Path(pathPrefix, coreSnap.getIndexDirPath()).toString();
+        indexDirPath = Path.of(pathPrefix, coreSnap.getIndexDirPath()).toString();
       }
 
       List<String> paths = new ArrayList<>();
       for (String fileName : coreSnap.getFiles()) {
-        Path p = new Path(indexDirPath, fileName);
+        Path p = Path.of(indexDirPath, fileName);

Review comment:
       If we're doing this, leave indexDirPath as a Path and call `resolve()` here.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1040293868






-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r809410853



##########
File path: solr/core/src/java/org/apache/solr/core/snapshots/SolrSnapshotsTool.java
##########
@@ -227,12 +227,12 @@ public void describeSnapshot(String collectionName, String snapshotName) {
       String indexDirPath = coreSnap.getIndexDirPath();
       if (pathPrefix != null) {
         // If the path prefix is specified, rebuild the path to the index directory.
-        indexDirPath = new Path(pathPrefix, coreSnap.getIndexDirPath()).toString();
+        indexDirPath = Path.of(pathPrefix, coreSnap.getIndexDirPath()).toString();
       }
 
       List<String> paths = new ArrayList<>();
       for (String fileName : coreSnap.getFiles()) {
-        Path p = new Path(indexDirPath, fileName);
+        Path p = Path.of(indexDirPath, fileName);

Review comment:
       Addressed in 68e28ef1384070771b650329a5262dad5ac770af




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on pull request #636:
URL: https://github.com/apache/solr/pull/636#issuecomment-1040582962


   Chatted w/ @HoustonPutman on Slack about this and there is a bit of confusion.
   
   > noticed that the Krb5HttpClientBuilder was moved to this module, from SolrJ. It doesn't look like it has any of these hadoop dependencies, so it would likely be better to keep it in SolrJ so clients could continue to use it?
   
   `Krb5HttpClientBuilder` was NOT moved. `Krb5HttpClientUtils` WAS moved. The naming is super confusing.
   
   Some additional info regarding `Krb5HttpClientUtils`:
   * it is only used by the `hadoop-auth` stuff. specifically `TestRuleBasedAuthorizationWithKerberos`.
   * I can't leave `Krb5HttpClientUtils` in `solrj` since Gradle doesn't export the test classes to be used in other projects.
   * `Krb5HttpClientUtils` uses `Http2SolrClient#getHttpClient()` so it needs to be in that package to be accessible. :(
   * so I think where `Krb5HttpClientUtils` now lives in the PR is correct and `Krb5HttpClientBuilder` should not be moved.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] janhoy commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
janhoy commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806655171



##########
File path: solr/modules/hadoop-auth/README.md
##########
@@ -0,0 +1,29 @@
+Apache Solr Hadoop Authentication Module
+===============================
+
+Introduction
+------------
+This module implements the support for Hadoop Authentication in Apache Solr. 
+
+Building
+--------
+The Hadoop Authentication module uses the same Gradle build as the core Solr components. 
+
+To build the module, you can use
+
+```
+./gradlew :solr:modules:hadoop-auth:assemble
+```
+
+The resulting module will be placed to the libs directory, for example:
+`solr/modules/hdfs/build/libs/solr-hadoop-auth-9.0.0-SNAPSHOT.jar`
+
+To execute the module tests:
+
+```
+./gradlew :solr:modules:hadoop-auth:test
+```
+
+Usage
+-----
+Please refer to the 'Running Solr on HDFS' section of the reference guide: https://solr.apache.org/guide/running-solr-on-hdfs.html

Review comment:
       Figure out the final 9.0 ref-guide URL to put here.
   I think it will be https://solr.apache.org/guide/solr/latest/deployment-guide/solr-on-hdfs.html
   See nightly 10.0 guide: https://nightlies.apache.org/solr/draft-guides/solr-reference-guide-antora/solr/10_0/deployment-guide/solr-on-hdfs.html




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org


[GitHub] [solr] risdenk commented on a change in pull request #636: SOLR-13989: Create hadoop-auth module

Posted by GitBox <gi...@apache.org>.
risdenk commented on a change in pull request #636:
URL: https://github.com/apache/solr/pull/636#discussion_r806381253



##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
+  // transitive of hadoop-common; used by Kerberos auth
+  runtimeOnly 'commons-collections:commons-collections'
+  runtimeOnly 'com.google.re2j:re2j'
+  runtimeOnly 'org.apache.commons:commons-configuration2'
+  runtimeOnly 'org.apache.htrace:htrace-core4' // note: removed in Hadoop 3.3.2
+  runtimeOnly 'org.apache.kerby:kerb-core'
+  runtimeOnly 'org.apache.kerby:kerb-util'
+
+  testImplementation project(':solr:test-framework')
+  testImplementation 'org.apache.lucene:lucene-test-framework'
+  testImplementation 'com.carrotsearch.randomizedtesting:randomizedtesting-runner'
+  testImplementation 'junit:junit'
+  testImplementation 'org.hamcrest:hamcrest'
+
+  testImplementation('org.mockito:mockito-core', {
+    exclude group: "net.bytebuddy", module: "byte-buddy-agent"
+  })
+
+  testImplementation 'commons-io:commons-io'
+
+  testImplementation 'org.apache.lucene:lucene-core'
+
+  // classes like solr.ICUCollationField, used by TestSolrCloudWithSecureImpersonation for example.
+  testRuntimeOnly project(':solr:modules:analysis-extras')
+
+  // Hadoop MiniKdc Dependencies (for Kerberos auth tests)
+  testImplementation ('org.apache.hadoop:hadoop-minikdc', {
+    exclude group:'org.apache.kerby', module:'kerby-xdr'
+    exclude group:'org.apache.kerby', module:'token-provider'
+  })
+
+  // Zookeeper dependency - some tests like HdfsCloudBackupRestore need this
+  testImplementation 'org.apache.zookeeper:zookeeper'

Review comment:
       @sonatype-lift ignore

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'

Review comment:
       @sonatype-lift ignore

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
+  implementation ('org.apache.hadoop:hadoop-common') { transitive = false }

Review comment:
       @sonatype-lift ignore

##########
File path: solr/modules/hadoop-auth/build.gradle
##########
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF 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.
+ */
+
+apply plugin: 'java-library'
+
+description = 'Hadoop Authentication Module'
+
+dependencies {
+  // Spotbugs Annotations are only needed for old findbugs
+  // annotation usage like in Zookeeper during compilation time.
+  // It is not included in the release so exclude from checks.
+  testCompileOnly 'com.github.spotbugs:spotbugs-annotations'
+  permitUnusedDeclared 'com.github.spotbugs:spotbugs-annotations'
+  // Exclude these from jar validation and license checks.
+  configurations.jarValidation {
+    exclude group: "com.github.spotbugs", module: "spotbugs-annotations"
+  }
+
+  implementation project(':solr:core')
+  implementation project(':solr:solrj')
+
+  implementation 'org.slf4j:slf4j-api'
+
+  implementation 'javax.servlet:javax.servlet-api'
+
+  implementation 'com.fasterxml.jackson.core:jackson-core'
+  implementation 'com.google.guava:guava'
+  implementation 'io.dropwizard.metrics:metrics-core'
+  implementation 'org.apache.httpcomponents:httpclient'
+  implementation 'org.apache.httpcomponents:httpcore'
+
+  implementation 'org.eclipse.jetty:jetty-client'
+
+  // ZooKeeper & Curator
+  implementation('org.apache.zookeeper:zookeeper', {
+    exclude group: "org.apache.yetus", module: "audience-annotations"
+    exclude group: "log4j", module: "log4j"
+    exclude group: "org.slf4j", module: "slf4j-log4j12"
+  })
+  implementation ('org.apache.zookeeper:zookeeper-jute') {
+    exclude group: 'org.apache.yetus', module: 'audience-annotations'
+  }
+  // required for instantiating a Zookeeper server (for embedding ZK or running tests)
+  runtimeOnly 'org.xerial.snappy:snappy-java'
+  implementation 'org.apache.curator:curator-client'
+  implementation 'org.apache.curator:curator-framework'
+  runtimeOnly 'org.apache.curator:curator-recipes'
+
+  // Hadoop auth framework
+  implementation 'org.apache.hadoop:hadoop-annotations'
+  permitUnusedDeclared 'org.apache.hadoop:hadoop-annotations'
+  implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }

Review comment:
       @sonatype-lift ignore




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org