Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
<?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">
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>
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.springframework.boot</groupId>
Expand All @@ -12,37 +12,69 @@
<relativePath/> <!-- lookup parent from repository -->
</parent>

<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-cloud-test-appconfiguration-config</artifactId>
<version>1.0.0</version> <!-- {x-version-update;com.azure.spring:azure-spring-cloud-test-appconfiguration-config;current} -->
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-cloud-test-appconfiguration-config</artifactId>
<version>1.0.0</version> <!-- {x-version-update;com.azure.spring:azure-spring-cloud-test-appconfiguration-config;current} -->

<dependencies>
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>spring-cloud-starter-azure-appconfiguration-config</artifactId>
<version>1.4.0-beta.1</version> <!-- {x-version-update;com.microsoft.azure:spring-cloud-starter-azure-appconfiguration-config;current} -->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version> <!-- {x-version-update;junit:junit;external_dependency} -->
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<skipSpringITs>true</skipSpringITs>
</properties>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version> <!-- {x-version-update;org.apache.maven.plugins:maven-failsafe-plugin;external_dependency} -->
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-cloud-starter-appconfiguration-config</artifactId>
<version>2.0.0-beta.2</version> <!-- {x-version-update;com.azure.spring:azure-spring-cloud-starter-appconfiguration-config;current} -->
</dependency>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>azure-spring-boot-test-core</artifactId>
<version>1.0.0</version> <!-- {x-version-update;com.azure.spring:azure-spring-boot-test-core;current} -->
</dependency>
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure</artifactId>
<version>1.34.0</version> <!-- {x-version-update;spring_com.microsoft.azure:azure;external_dependency} -->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>2.5.0</version> <!-- {x-version-update;org.springframework.boot:spring-boot-starter-test;external_dependency} -->
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.22.0</version> <!-- {x-version-update;org.apache.maven.plugins:maven-failsafe-plugin;external_dependency} -->
<executions>
<execution>
<id>default</id>
<goals>
<goal>integration-test</goal>
</goals>
<configuration>
<skipITs>${skipSpringITs}</skipITs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.0</version>
<configuration>
<skipTests>${skipSpringITs}</skipTests>
</configuration>
</plugin>
</plugins>
</build>

</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.microsoft.azure.spring.cloud.config;

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.azure.spring.test.AppRunner;
import com.microsoft.azure.spring.cloud.config.app.DummyApp;

public class LoadConfigsTest {

private final Logger log = LoggerFactory.getLogger(LoadConfigsTest.class);

private static final String STORE_NAME = System.getenv("STORE_NAME");


@Test
public void sampleTest() {
try (AppRunner app = new AppRunner(DummyApp.class)) {
app.property("spring.cloud.azure.appconfiguration.stores[0].endpoint", STORE_NAME);
app.start();
assertEquals("Test",app.getProperty("config.message"));
}
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.microsoft.azure.spring.cloud.config.app;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AppConfiguration {

@Bean
public MyCredentials azureCredentials() {
return new MyCredentials();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package com.microsoft.azure.spring.cloud.config.app;

import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DummyApp {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package com.microsoft.azure.spring.cloud.config.app;

import com.azure.core.credential.TokenCredential;
import com.azure.identity.EnvironmentCredentialBuilder;
import com.microsoft.azure.spring.cloud.config.AppConfigurationCredentialProvider;
import com.microsoft.azure.spring.cloud.config.KeyVaultCredentialProvider;

public class MyCredentials implements AppConfigurationCredentialProvider, KeyVaultCredentialProvider{

@Override
public TokenCredential getKeyVaultCredential(String uri) {
return buildCredential();
}

@Override
public TokenCredential getAppConfigCredential(String uri) {
return buildCredential();
}

TokenCredential buildCredential() {
return new EnvironmentCredentialBuilder().build();
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
org.springframework.cloud.bootstrap.BootstrapConfiguration=\
com.microsoft.azure.spring.cloud.config.app.AppConfiguration

Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testApplicationId": {
"type": "string"
},
"testApplicationSecret": {
"type": "String"
},
"tenantId": {
"type": "String"
},
"testApplicationOid": {
"type": "String"
}
},
"variables": {
"configStoreName": "[substring(toLower(concat('appconfig-', uniqueString(resourceGroup().id))), 0, 22)]",
"roleNameGuid": "[guid(resourceGroup().id)]",
"roleDefinitionId": "[subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '5ae67dd6-50cb-40e7-96ff-dc2bfa4b606b')]",
"keyValueName": "~2Fapplication~2Fconfig.message",
"keyValueValue": "Test",
"contentType": "",
"tags": ""
},
"resources": [
{
"location": "[resourceGroup().location]",
"type": "Microsoft.AppConfiguration/configurationStores",
"apiVersion": "2020-07-01-preview",
"name": "[variables('configStoreName')]",
"sku": {
"name": "standard"
}
},
{
"type": "Microsoft.AppConfiguration/configurationStores/keyValues",
"apiVersion": "2020-07-01-preview",
"name": "[concat(variables('configStoreName'), '/', variables('keyValueName'))]",

"dependsOn": [
"[variables('configStoreName')]"
],
"properties": {
"value": "[variables('keyValueValue')]",
"contentType": "[variables('contentType')]",
"tags": "[variables('tags')]"
}
}
],
"outputs": {
"AZURE_TENANT_ID": {
"type": "string",
"value": "[parameters('tenantId')]"
},
"AZURE_CLIENT_ID": {
"type": "string",
"value": "[parameters('testApplicationId')]"
},
"AZURE_CLIENT_SECRET": {
"type": "string",
"value": "[parameters('testApplicationSecret')]"
},
"STORE_NAME": {
"type": "string",
"value": "[concat('https://', variables('configStoreName'), '.azconfig.io')]"
}
}
}
2 changes: 1 addition & 1 deletion sdk/appconfiguration/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,4 @@ extends:
AdditionalModules:
- name: azure-spring-cloud-test-appconfiguration-config
groupId: com.azure.spring
safeName: azurespringcloudtestappconfigurationconfig
safeName: azurespringcloudtestappconfigurationconfig
3 changes: 3 additions & 0 deletions sdk/appconfiguration/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,6 @@ stages:
AZURE_CLIENT_ID: $(aad-azure-sdk-test-client-id)
AZURE_CLIENT_SECRET: $(aad-azure-sdk-test-client-secret)
AZURE_TENANT_ID: $(aad-azure-sdk-test-tenant-id)
TestStepMavenInputs:
options: '-Dmaven.wagon.http.pool=false $(DefaultOptions) -Dmaven.javadoc.skip=true -Drevapi.skip=true -DskipSpringITs=false -pl $(ProjectList)'
goals: "verify"