<?xml version="1.0"?>

<!--
  ~ 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 xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1 http://maven.apache.org/xsd/assembly-1.1.1.xsd">
  <id>anomaly-detection</id>
  <formats>
    <format>dir</format>
    <format>tar.gz</format>
  </formats>

  <fileSets>
    <fileSet>
      <directory>${anomaly-detection.dir}/target/embedded/spark</directory>
      <outputDirectory>anomaly-detection/spark</outputDirectory>
    </fileSet>
    <fileSet>
      <directory>${anomaly-detection.dir}/conf/unix</directory>
      <outputDirectory>anomaly-detection/bin</outputDirectory>
      <includes>
        <include>ambari-metrics-admanager</include>
      </includes>
    </fileSet>
    <fileSet>
      <directory>${anomaly-detection.dir}/conf/unix</directory>
      <outputDirectory>anomaly-detection/conf</outputDirectory>
      <includes>
        <include>config.yaml</include>
        <include>log4j.properties</include>
      </includes>
    </fileSet>
  </fileSets>

  <files>
    <file>
      <fileMode>644</fileMode>
      <source>${anomaly-detection.dir}/target/ambari-metrics-anomaly-detection-service-${project.version}.jar
      </source>
      <outputDirectory>anomaly-detection</outputDirectory>
    </file>
  </files>
</assembly>