Skip to content
Snippets Groups Projects
pom.xml 8.87 KiB
Newer Older
  • Learn to ignore specific revisions
  • <?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    
    	<modelVersion>4.0.0</modelVersion>
    	<parent>
    		<groupId>de.ozgcloud.common</groupId>
    		<artifactId>ozgcloud-common-parent</artifactId>
    
    		<version>4.3.2</version>
    
    		<relativePath/>
    
    	</parent>
    	<groupId>de.ozgcloud</groupId>
    	<artifactId>administration</artifactId>
    
    OZGCloud's avatar
    OZGCloud committed
    	<version>1.1.0</version>
    
    	<name>Administration</name>
    
    	<description>Administration Backend Project</description>
    
    		<imageName>docker.ozg-sh.de/administration</imageName>
    
    		<imageTag>build-latest</imageTag>
    
    		<publishImage>false</publishImage>
    
    OZGCloud's avatar
    OZGCloud committed
    		<build.number>SET_BY_JENKINS</build.number>
    
    OZGCloud's avatar
    OZGCloud committed
    		<spring-cloud-config-server.version>4.1.2</spring-cloud-config-server.version>
    
    		<testcontainers-keycloak.version>3.3.1</testcontainers-keycloak.version>
    		<keycloak-admin-client.version>24.0.5</keycloak-admin-client.version>
    
    		<mongock.version>5.4.0</mongock.version>
    
    		<lombok-mapstruct-binding.version>0.2.0</lombok-mapstruct-binding.version>
    
    		<mapstruct-processor.version>${mapstruct.version}</mapstruct-processor.version>
    
    		<zufi-manager.version>1.5.0-SNAPSHOT</zufi-manager.version>
    
    		<shedlock.version>5.16.0</shedlock.version>
    
    		<!-- OZG Cloud API -->
    		<dependency>
    			<groupId>de.ozgcloud.zufi</groupId>
    			<artifactId>zufi-manager-interface</artifactId>
    			<version>${zufi-manager.version}</version>
    		</dependency>
    
    
    		<dependency>
    			<groupId>net.devh</groupId>
    			<artifactId>grpc-client-spring-boot-starter</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>io.grpc</groupId>
    			<artifactId>grpc-inprocess</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-actuator</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-data-mongodb</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-web</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-data-rest</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-hateoas</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.cloud</groupId>
    			<artifactId>spring-cloud-config-server</artifactId>
    
    			<version>${spring-cloud-config-server.version}</version>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-security</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-validation</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-oauth2-resource-server</artifactId>
    		</dependency>
    
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-configuration-processor</artifactId>
    			<optional>true</optional>
    
    		<!-- ShedLock -->
    		<dependency>
    			<groupId>net.javacrumbs.shedlock</groupId>
    			<artifactId>shedlock-spring</artifactId>
    			<version>${shedlock.version}</version>
    		</dependency>
    		<dependency>
    			<groupId>net.javacrumbs.shedlock</groupId>
    			<artifactId>shedlock-provider-mongo</artifactId>
    			<version>${shedlock.version}</version>
    		</dependency>
    
    
    		<!-- Keycloak -->
    		<dependency>
    			<groupId>org.keycloak</groupId>
    			<artifactId>keycloak-admin-client</artifactId>
    
    			<version>${keycloak-admin-client.version}</version>
    
    OZGCloud's avatar
    OZGCloud committed
    		<!-- tools -->
    		<dependency>
    			<groupId>org.mapstruct</groupId>
    			<artifactId>mapstruct</artifactId>
    		</dependency>
    
    		<dependency>
    			<groupId>org.mapstruct</groupId>
    			<artifactId>mapstruct-processor</artifactId>
    			<version>${mapstruct-processor.version}</version>
    		</dependency>
    
    
    		<!-- commons -->
    		<dependency>
    			<groupId>org.apache.commons</groupId>
    			<artifactId>commons-lang3</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>commons-io</groupId>
    			<artifactId>commons-io</artifactId>
    		</dependency>
    		<dependency>
    			<groupId>commons-beanutils</groupId>
    			<artifactId>commons-beanutils</artifactId>
    		</dependency>
    
    
    		<!-- mongock -->
    		<dependency>
    			<groupId>io.mongock</groupId>
    			<artifactId>mongock-springboot-v3</artifactId>
    			<version>${mongock.version}</version>
    		</dependency>
    		<dependency>
    			<groupId>io.mongock</groupId>
    			<artifactId>mongodb-springdata-v4-driver</artifactId>
    			<version>${mongock.version}</version>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-devtools</artifactId>
    			<scope>runtime</scope>
    			<optional>true</optional>
    		</dependency>
    		<dependency>
    			<groupId>org.projectlombok</groupId>
    			<artifactId>lombok</artifactId>
    			<optional>true</optional>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-starter-test</artifactId>
    			<scope>test</scope>
    		</dependency>
    
    		<dependency>
    			<groupId>org.springframework.boot</groupId>
    			<artifactId>spring-boot-testcontainers</artifactId>
    			<scope>test</scope>
    		</dependency>
    		<dependency>
    			<groupId>org.testcontainers</groupId>
    			<artifactId>mongodb</artifactId>
    			<scope>test</scope>
    		</dependency>
    		<dependency>
    			<groupId>org.testcontainers</groupId>
    			<artifactId>junit-jupiter</artifactId>
    			<scope>test</scope>
    		</dependency>
    
    			<groupId>org.springframework.security</groupId>
    			<artifactId>spring-security-test</artifactId>
    			<scope>test</scope>
    
    		<dependency>
    			<groupId>org.testcontainers</groupId>
    			<artifactId>testcontainers</artifactId>
    			<scope>test</scope>
    		</dependency>
    		<dependency>
    			<groupId>com.github.dasniko</groupId>
    			<artifactId>testcontainers-keycloak</artifactId>
    			<version>${testcontainers-keycloak.version}</version>
    			<scope>test</scope>
    		</dependency>
    
    	<profiles>
    		<profile>
    			<id>dev</id>
    			<build>
    				<plugins>
    					<plugin>
    						<groupId>org.springframework.boot</groupId>
    						<artifactId>spring-boot-maven-plugin</artifactId>
    						<configuration>
    
    							<image>
    								<tags>${imageName}:snapshot-latest</tags>
    							</image>
    
    						</configuration>
    					</plugin>
    				</plugins>
    
    		</profile>
    		<profile>
    			<id>release</id>
    			<build>
    				<plugins>
    					<plugin>
    						<groupId>org.springframework.boot</groupId>
    						<artifactId>spring-boot-maven-plugin</artifactId>
    						<configuration>
    
    							<image>
    								<tags>${imageName}:latest</tags>
    							</image>
    
    						</configuration>
    					</plugin>
    				</plugins>
    
    			<plugin>
    				<groupId>org.sonarsource.scanner.maven</groupId>
    				<artifactId>sonar-maven-plugin</artifactId>
    			</plugin>
    
    			<plugin>
    				<groupId>org.jacoco</groupId>
    				<artifactId>jacoco-maven-plugin</artifactId>
    			</plugin>
    
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-failsafe-plugin</artifactId>
    			</plugin>
    
    			<plugin>
    				<groupId>org.springframework.boot</groupId>
    				<artifactId>spring-boot-maven-plugin</artifactId>
    				<configuration>
    
    					<image>
    						<name>${imageName}:${imageTag}</name>
    						<publish>${publishImage}</publish>
    					</image>
    					<docker>
    						<publishRegistry>
    							<username>${docker.publishRegistry.username}</username>
    							<password>${docker.publishRegistry.password}</password>
    						</publishRegistry>
    					</docker>
    					<excludes>
    						<exclude>
    							<groupId>org.projectlombok</groupId>
    							<artifactId>lombok</artifactId>
    						</exclude>
    					</excludes>
    
    				<executions>
    					<execution>
    						<id>build-info</id>
    						<goals>
    							<goal>build-info</goal>
    						</goals>
    						<configuration>
    							<additionalProperties>
    								<number>${build.number}</number>
    							</additionalProperties>
    						</configuration>
    					</execution>
    				</executions>
    
    OZGCloud's avatar
    OZGCloud committed
    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-compiler-plugin</artifactId>
    
    				<configuration>
    					<annotationProcessorPaths>
    						<path>
    							<groupId>org.mapstruct</groupId>
    							<artifactId>mapstruct-processor</artifactId>
    							<version>${mapstruct-processor.version}</version>
    						</path>
    						<path>
    							<groupId>org.projectlombok</groupId>
    							<artifactId>lombok</artifactId>
    							<version>${lombok.version}</version>
    						</path>
    						<path>
    							<groupId>org.projectlombok</groupId>
    							<artifactId>lombok-mapstruct-binding</artifactId>
    							<version>${lombok-mapstruct-binding.version}</version>
    						</path>
    					</annotationProcessorPaths>
    				</configuration>
    
    OZGCloud's avatar
    OZGCloud committed
    			</plugin>