<?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>io.quarkiverse</groupId>
        <artifactId>quarkiverse-parent</artifactId>
        <version>18</version>
    </parent>
    
    <groupId>io.quarkiverse.azureservices</groupId>
    <artifactId>quarkus-azure-services-bom</artifactId>
    <name>Quarkus Azure Services :: BOM</name>
    <version>1.0.8</version>
    <packaging>pom</packaging>
    
    <scm>
        <connection>scm:git:git@github.com:quarkiverse/quarkus-azure-services.git</connection>
        <developerConnection>scm:git:git@github.com:quarkiverse/quarkus-azure-services.git</developerConnection>
        <url>https://github.com/quarkiverse/quarkus-azure-services</url>
        <tag>1.0.8</tag>
    </scm>
    
    <properties>
        <azure-sdk-bom.version>1.2.30</azure-sdk-bom.version>
        <!-- @sync com.azure:azure-identity:${azure-identity.version} dep:com.microsoft.azure:msal4j -->
        <msal4j.version>1.17.2</msal4j.version>
        <!-- @sync com.azure:azure-cosmos:${azure-cosmos.version} dep:com.azure:azure-core-http-netty dep:io.projectreactor.netty:reactor-netty-http -->
        <reactor-netty-http.version>1.0.48</reactor-netty-http.version>
        <!-- @sync com.microsoft.azure:msal4j:${msal4j.version} dep:com.nimbusds:oauth2-oidc-sdk dep:net.minidev:json-smart com.microsoft.azure:msal4j:${msal4j.version} dep:net.minidev:json-smart -->
        <json-smart.version>2.5.1</json-smart.version>
        <!-- @sync com.azure:azure-core-http-vertx:${azure.core.http.client.vertx.version} dep:com.azure:azure-core com.azure:azure-sdk-bom:${azure-sdk-bom.version} managedDep:com.azure:azure-core -->
        <azure.core.http.client.vertx.version>1.0.0-beta.24</azure.core.http.client.vertx.version>
        <assertj-core.version>3.27.0</assertj-core.version>
    </properties>
    
    <dependencyManagement>
        <dependencies>
            <!-- Azure sdk dependencies, imported as a BOM -->
            <dependency>
                <groupId>com.azure</groupId>
                <artifactId>azure-sdk-bom</artifactId>
                <version>${azure-sdk-bom.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- MSAL4J -->
            <dependency>
                <groupId>com.microsoft.azure</groupId>
                <artifactId>msal4j</artifactId>
                <version>${msal4j.version}</version>
            </dependency>
            <!-- See https://github.com/quarkusio/quarkus/issues/26879 -->
            <dependency>
                <groupId>com.azure</groupId>
                <artifactId>azure-core-http-vertx</artifactId>
                <version>${azure.core.http.client.vertx.version}</version>
            </dependency>
            <!-- Needed for dependency convergence -->
            <dependency>
                <groupId>net.minidev</groupId>
                <artifactId>json-smart</artifactId>
                <version>${json-smart.version}</version>
            </dependency>
            <dependency>
                <groupId>io.projectreactor.netty</groupId>
                <artifactId>reactor-netty-http</artifactId>
                <version>${reactor-netty-http.version}</version>
            </dependency>
            
            <!-- Utilities for Azure Services Extensions -->
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-core-util</artifactId>
                <version>${project.version}</version>
            </dependency>
            
            <!-- Azure Services Extensions -->
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-identity</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-identity-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-core</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-core-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-http-client-vertx</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-http-client-vertx-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-jackson-dataformat-xml</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-jackson-dataformat-xml-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-app-configuration</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-app-configuration-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-cosmos</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-cosmos-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-eventhubs</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-eventhubs-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-keyvault</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-keyvault-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-storage-blob</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.quarkiverse.azureservices</groupId>
                <artifactId>quarkus-azure-storage-blob-deployment</artifactId>
                <version>${project.version}</version>
            </dependency>
            <!-- Dependencies for testing -->
            <dependency>
                <groupId>org.assertj</groupId>
                <artifactId>assertj-core</artifactId>
                <version>${assertj-core.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>
