Commit 4d510d3c authored by Andy Wilkinson's avatar Andy Wilkinson

Merge pull request #25829 from jdubois

* gh-25829:
  Polish "Add detection of Azure App Service to CloudPlatform"
  Add detection of Azure App Service to CloudPlatform

Closes gh-25829
parents 660dc5fc 4d311821
/*
* Copyright 2012-2020 the original author or authors.
* Copyright 2012-2021 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -130,6 +130,23 @@ public enum CloudPlatform {
return false;
}
},
/**
* Azure App Service platform.
*/
AZURE_APP_SERVICE {
private static final String WEBSITE_SITE_NAME = "WEBSITE_SITE_NAME";
private static final String WEBSITES_ENABLE_APP_SERVICE_STORAGE = "WEBSITES_ENABLE_APP_SERVICE_STORAGE";
@Override
public boolean isDetected(Environment environment) {
return environment.containsProperty(WEBSITE_SITE_NAME)
&& environment.containsProperty(WEBSITES_ENABLE_APP_SERVICE_STORAGE);
}
};
private static final String PROPERTY_NAME = "spring.main.cloud-platform";
......
/*
* Copyright 2012-2020 the original author or authors.
* Copyright 2012-2021 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -50,7 +50,6 @@ class CloudPlatformTests {
Environment environment = new MockEnvironment();
CloudPlatform platform = CloudPlatform.getActive(environment);
assertThat(platform).isNull();
}
@Test
......@@ -131,6 +130,32 @@ class CloudPlatformTests {
assertThat(platform).isNull();
}
@Test
void getActiveWhenHasWebsiteSiteNameAndWebsitesEnableAppServiceStorageShouldReturnAzureAppService() {
Map<String, Object> envVars = new HashMap<>();
envVars.put("WEBSITE_SITE_NAME", "---");
envVars.put("WEBSITES_ENABLE_APP_SERVICE_STORAGE", "false");
Environment environment = getEnvironmentWithEnvVariables(envVars);
CloudPlatform platform = CloudPlatform.getActive(environment);
assertThat(platform).isEqualTo(CloudPlatform.AZURE_APP_SERVICE);
assertThat(platform.isActive(environment)).isTrue();
}
@Test
void getActiveWhenHasWebsiteSiteNameAndNoWebsitesEnableAppServiceStorageShouldNotReturnAzureAppService() {
Environment environment = getEnvironmentWithEnvVariables(Collections.singletonMap("WEBSITE_SITE_NAME", "---"));
CloudPlatform platform = CloudPlatform.getActive(environment);
assertThat(platform).isNull();
}
@Test
void getActiveWhenHasWebsitesEnableAppServiceStorageAndNoWebsiteNameShouldNotReturnAzureAppService() {
Environment environment = getEnvironmentWithEnvVariables(
Collections.singletonMap("WEBSITES_ENABLE_APP_SERVICE_STORAGE", "---"));
CloudPlatform platform = CloudPlatform.getActive(environment);
assertThat(platform).isNull();
}
@Test
void getActiveWhenHasEnforcedCloudPlatform() {
Environment environment = getEnvironmentWithEnvVariables(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment