<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.geowebcache</groupId>
    <artifactId>geowebcache</artifactId>
    <version>1.26.4-C321</version>
    <!-- GWC VERSION -->
  </parent>

  <groupId>org.geowebcache</groupId>
  <artifactId>gwc-azure-blob</artifactId>

  <properties>
    <!-- Same sdk version as imageio-ext's cog-ragengereader-azure for GeoSever compatibility -->
    <azure.version>12.27.1</azure.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <!--
            Use the same netty version as imageio-ext's cog-ragengereader-s3 and cog-rangereader-azure
            See https://github.com/geosolutions-it/imageio-ext/pull/312
        -->
        <groupId>io.netty</groupId>
        <artifactId>netty-bom</artifactId>
        <version>4.1.113.Final</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.geowebcache</groupId>
      <artifactId>gwc-core</artifactId>
      <version>${project.version}</version>
    </dependency>

    <dependency>
      <groupId>com.azure</groupId>
      <artifactId>azure-storage-blob</artifactId>
      <version>${azure.version}</version>
    </dependency>

    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
    </dependency>

    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymock</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.geowebcache</groupId>
      <artifactId>gwc-core</artifactId>
      <classifier>tests</classifier>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.testcontainers</groupId>
      <artifactId>testcontainers</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.awaitility</groupId>
      <artifactId>awaitility</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <profiles>
    <profile>
      <id>online</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <configuration>
              <forkCount>1</forkCount>
              <reuseForks>false</reuseForks>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <!-- skips the integration tests against a real Azure account, used to split up the CI builds-->
      <id>excludeAzureOnlineTests</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <configuration>
              <forkCount>1</forkCount>
              <reuseForks>false</reuseForks>
              <excludes>
                <exclude>org.geowebcache.azure.tests.online.*IT</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <!-- skips the integration tests against the Azurite test container, used to split up the CI builds-->
      <id>excludeDockerTests</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-failsafe-plugin</artifactId>
            <configuration>
              <forkCount>1</forkCount>
              <reuseForks>false</reuseForks>
              <excludes>
                <exclude>org.geowebcache.azure.tests.container.*IT</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
