<?xml version="1.0" encoding="UTF-8"?>
<!-- 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. -->
<assembly>

	<id>kafka-plugin</id>
	<formats>
		<format>tar.gz</format>
	</formats>
	<baseDirectory>${project.parent.name}-${project.version}-kafka-plugin
	</baseDirectory>
	<includeBaseDirectory>true</includeBaseDirectory>
	<moduleSets>
		<moduleSet>
			<useAllReactorProjects>true</useAllReactorProjects>
			<includes>
				<include>org.apache.ranger:ranger-kafka-plugin-shim</include>
				<include>org.apache.ranger:ranger-plugin-classloader</include>
			</includes>
			<binaries>
				<outputDirectory>lib</outputDirectory>
				<includeDependencies>false</includeDependencies>
				<unpack>false</unpack>
				<directoryMode>755</directoryMode>
				<fileMode>644</fileMode>
			</binaries>
		</moduleSet>

		<moduleSet>
			<useAllReactorProjects>true</useAllReactorProjects>
			<includes>
				<include>org.apache.ranger:ranger-kafka-plugin</include>
				<include>org.apache.ranger:ranger-plugins-audit</include>
				<include>org.apache.ranger:ranger-plugins-cred</include>
				<include>org.apache.ranger:ranger-plugins-common</include>
			</includes>
			<binaries>
				<outputDirectory>lib/ranger-kafka-plugin-impl</outputDirectory>
				<includeDependencies>true</includeDependencies>
				<unpack>false</unpack>
				<directoryMode>755</directoryMode>
				<fileMode>644</fileMode>
				<includes>
					<include>org.apache.commons:commons-configuration2:jar:${commons.configuration.version}</include>
					<include>org.apache.hadoop:hadoop-common:jar:${hadoop.version}</include>
					<include>org.apache.hadoop:hadoop-common-plus:jar:${hadoop.version}</include>
					<include>org.apache.hadoop:hadoop-auth:jar:${hadoop.version}</include>
					<include>org.apache.hadoop:hadoop-hdfs:jar:${hadoop.version}</include>
					<include>com.google.code.gson:gson</include>
					<include>org.eclipse.persistence:eclipselink</include>
					<include>org.eclipse.persistence:javax.persistence</include>
					<include>commons-collections:commons-collections</include>
					<include>com.sun.jersey:jersey-bundle</include>
					<include>commons-logging:commons-logging:jar:${commons.logging.version}</include>
					<include>commons-lang:commons-lang</include>
					<include>commons-io:commons-io</include>
					<include>org.apache.httpcomponents:httpclient:jar:${httpcomponents.httpclient.version}</include>
					<include>org.apache.httpcomponents:httpcore:jar:${httpcomponents.httpcore.version}</include>
					<include>org.apache.httpcomponents:httpmime:jar:${httpcomponents.httpmime.version}</include>
					<include>com.google.guava:guava:jar:${google.guava.version}</include>
					<include>com.google.protobuf:protobuf-java:jar:${protobuf-java.version}</include>
					<include>org.noggit:noggit:jar:${noggit.version}</include>
					<include>org.codehaus.jackson:jackson-core-asl</include>
					<include>org.codehaus.jackson:jackson-jaxrs</include>
					<include>org.codehaus.jackson:jackson-mapper-asl</include>
					<include>org.codehaus.jackson:jackson-xc</include>
					<include>org.apache.solr:solr-solrj:jar:${solr.version}</include>
					<include>commons-codec:commons-codec</include>
					<include>org.codehaus.woodstox:stax2-api</include>
					<include>com.fasterxml.woodstox:woodstox-core</include>
					<include>org.apache.htrace:htrace-core4</include>
					<include>com.kstruct:gethostname4j:jar:${kstruct.gethostname4j.version}</include>
					<include>net.java.dev.jna:jna:jar:${jna.version}</include>
					<include>net.java.dev.jna:jna-platform:jar:${jna-platform.version}</include>
					<include>org.elasticsearch:elasticsearch</include>
					<include>org.elasticsearch:elasticsearch-core</include>
					<include>org.elasticsearch:elasticsearch-x-content</include>
					<include>org.elasticsearch.client:elasticsearch-rest-client</include>
					<include>org.elasticsearch.client:elasticsearch-rest-high-level-client</include>
					<include>org.elasticsearch.plugin:rank-eval-client</include>
					<include>org.elasticsearch.plugin:lang-mustache-client</include>
					<include>org.apache.httpcomponents:httpcore-nio:jar:${httpcomponents.httpcore.version}</include>
					<include>org.apache.httpcomponents:httpasyncclient:jar:${httpcomponents.httpasyncclient.version}</include>
					<include>org.apache.lucene:lucene-core</include>
					<include>joda-time:joda-time</include>
					<include>com.carrotsearch:hppc</include>
				</includes>
			</binaries>
		</moduleSet>

		<moduleSet>
			<useAllReactorProjects>true</useAllReactorProjects>
			<includes>
				<include>org.apache.ranger:ranger-kafka-plugin</include>
				<include>org.apache.ranger:ranger-plugins-audit</include>
				<include>org.apache.ranger:ranger-plugins-cred</include>
				<include>org.apache.ranger:ranger-plugins-common</include>
			</includes>
			<binaries>
				<outputDirectory>install/lib</outputDirectory>
				<includeDependencies>true</includeDependencies>
				<unpack>false</unpack>
				<directoryMode>755</directoryMode>
				<fileMode>644</fileMode>
				<includes>
					<include>commons-cli:commons-cli</include>
					<include>commons-collections:commons-collections</include>
					<include>org.apache.commons:commons-configuration2:jar:${commons.configuration.version}</include>
					<include>commons-io:commons-io:jar:${commons.io.version}</include>
					<include>commons-lang:commons-lang:jar:${commons.lang.version}</include>
					<include>commons-logging:commons-logging</include>
					<include>com.google.guava:guava:jar:${google.guava.version}</include>
					<include>org.slf4j:slf4j-api:jar:${slf4j-api.version}</include>
					<include>org.apache.hadoop:hadoop-common:jar:${hadoop.version}</include>
					<include>org.apache.hadoop:hadoop-auth:jar:${hadoop.version}</include>
					<include>org.apache.ranger:ranger-plugins-cred</include>
					<include>org.apache.ranger:credentialbuilder</include>
					<include>org.codehaus.woodstox:stax2-api</include>
					<include>com.fasterxml.woodstox:woodstox-core</include>
					<include>org.apache.htrace:htrace-core4</include>
				</includes>
			</binaries>
		</moduleSet>

		<moduleSet>
			<useAllReactorProjects>true</useAllReactorProjects>
			<includes>
				<include>org.apache.ranger:ranger-plugins-installer</include>
				<include>org.apache.ranger:credentialbuilder</include>
			</includes>
			<binaries>
				<outputDirectory>install/lib</outputDirectory>
				<includeDependencies>false</includeDependencies>
				<unpack>false</unpack>
			</binaries>
		</moduleSet>
	</moduleSets>

	<fileSets>
		<!-- conf.templates for enable -->
		<fileSet>
			<outputDirectory>install/conf.templates/enable</outputDirectory>
			<directory>../plugin-kafka/conf</directory>
			<fileMode>700</fileMode>
		</fileSet>
		<fileSet>
			<outputDirectory>install/conf.templates/disable</outputDirectory>
			<directory>../plugin-kafka/disable-conf</directory>
			<fileMode>700</fileMode>
		</fileSet>
		<fileSet>
			<outputDirectory>install/conf.templates/default</outputDirectory>
			<directory>../plugin-kafka/template</directory>
			<fileMode>700</fileMode>
		</fileSet>
		<!-- version file -->
		<fileSet>
			<outputDirectory></outputDirectory>
			<directory>${project.build.outputDirectory}</directory>
			<includes>
				<include>version</include>
			</includes>
			<fileMode>444</fileMode>
		</fileSet>
	</fileSets>

	<!-- enable/disable script for Plugin -->
	<files>
		<file>
			<source>${project.parent.basedir}/agents-common/scripts/enable-agent.sh</source>
			<outputDirectory></outputDirectory>
			<destName>enable-kafka-plugin.sh</destName>
			<fileMode>755</fileMode>
		</file>
		<file>
			<source>${project.parent.basedir}/agents-common/scripts/enable-agent.sh</source>
			<outputDirectory></outputDirectory>
			<destName>disable-kafka-plugin.sh</destName>
			<fileMode>755</fileMode>
		</file>
		<file>
			<source>${project.parent.basedir}/security-admin/scripts/ranger_credential_helper.py</source>
			<outputDirectory></outputDirectory>
			<fileMode>755</fileMode>
		</file>
		<file>
			<source>${project.parent.basedir}/security-admin/scripts/ranger_credential_helper.py</source>
			<outputDirectory></outputDirectory>
			<fileMode>755</fileMode>
		</file>
		<file>
			<source>${project.parent.basedir}/plugin-kafka/scripts/install.properties</source>
			<outputDirectory></outputDirectory>
			<destName>install.properties</destName>
			<fileMode>755</fileMode>
		</file>
	</files>
</assembly>
