diff --git a/apollo-assembly/pom.xml b/apollo-assembly/pom.xml index a655c61a2e4..24acf30cb11 100644 --- a/apollo-assembly/pom.xml +++ b/apollo-assembly/pom.xml @@ -33,4 +33,15 @@ <scope>test</scope> </dependency> </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + <configuration> + <executable>true</executable> + </configuration> + </plugin> + </plugins> + </build> </project> diff --git a/apollo-assembly/src/main/java/com/ctrip/framework/apollo/assembly/ApolloApplication.java b/apollo-assembly/src/main/java/com/ctrip/framework/apollo/assembly/ApolloApplication.java index 85b6e984a35..3a8a8053ca6 100644 --- a/apollo-assembly/src/main/java/com/ctrip/framework/apollo/assembly/ApolloApplication.java +++ b/apollo-assembly/src/main/java/com/ctrip/framework/apollo/assembly/ApolloApplication.java @@ -10,6 +10,7 @@ import org.springframework.cloud.context.scope.refresh.RefreshScope; import org.springframework.context.ConfigurableApplicationContext; +import com.ctrip.framework.apollo.portal.PortalApplication; import com.ctrip.framework.apollo.adminservice.AdminServiceApplication; import com.ctrip.framework.apollo.configservice.ConfigServiceApplication; @@ -47,6 +48,16 @@ public static void main(String[] args) throws Exception { .sources(RefreshScope.class).run(args); logger.info(adminContext.getId() + " isActive: " + adminContext.isActive()); } + + /** + * Portal + */ + if (commonContext.getEnvironment().containsProperty("portal")) { + ConfigurableApplicationContext portalContext = + new SpringApplicationBuilder(PortalApplication.class).parent(commonContext) + .sources(RefreshScope.class).run(args); + logger.info(portalContext.getId() + " isActive: " + portalContext.isActive()); + } } } diff --git a/apollo-assembly/src/test/java/com/ctrip/framework/apollo/assembly/LocalApolloApplication.java b/apollo-assembly/src/test/java/com/ctrip/framework/apollo/assembly/LocalApolloApplication.java index 31949683aaf..7a9d9554c6a 100644 --- a/apollo-assembly/src/test/java/com/ctrip/framework/apollo/assembly/LocalApolloApplication.java +++ b/apollo-assembly/src/test/java/com/ctrip/framework/apollo/assembly/LocalApolloApplication.java @@ -12,7 +12,7 @@ import com.ctrip.framework.apollo.adminservice.AdminServiceApplication; import com.ctrip.framework.apollo.configservice.ConfigServiceApplication; -import com.ctrip.framework.apollo.PortalApplication; +import com.ctrip.framework.apollo.portal.PortalApplication; @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class}) diff --git a/apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/PortalOpenApiConfig.java b/apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/PortalOpenApiConfig.java new file mode 100644 index 00000000000..505be15c646 --- /dev/null +++ b/apollo-portal/src/main/java/com/ctrip/framework/apollo/openapi/PortalOpenApiConfig.java @@ -0,0 +1,12 @@ +package com.ctrip.framework.apollo.openapi; + +import org.springframework.boot.autoconfigure.EnableAutoConfiguration; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; + +@EnableAutoConfiguration +@Configuration +@ComponentScan(basePackageClasses = PortalOpenApiConfig.class) +public class PortalOpenApiConfig { + +} diff --git a/apollo-portal/src/main/java/com/ctrip/framework/apollo/PortalApplication.java b/apollo-portal/src/main/java/com/ctrip/framework/apollo/portal/PortalApplication.java similarity index 83% rename from apollo-portal/src/main/java/com/ctrip/framework/apollo/PortalApplication.java rename to apollo-portal/src/main/java/com/ctrip/framework/apollo/portal/PortalApplication.java index aa20abe040f..51233c3fd52 100644 --- a/apollo-portal/src/main/java/com/ctrip/framework/apollo/PortalApplication.java +++ b/apollo-portal/src/main/java/com/ctrip/framework/apollo/portal/PortalApplication.java @@ -1,6 +1,7 @@ -package com.ctrip.framework.apollo; +package com.ctrip.framework.apollo.portal; import com.ctrip.framework.apollo.common.ApolloCommonConfig; +import com.ctrip.framework.apollo.openapi.PortalOpenApiConfig; import org.springframework.boot.SpringApplication; import org.springframework.boot.actuate.system.ApplicationPidFileWriter; @@ -16,7 +17,8 @@ @Configuration @EnableAutoConfiguration @EnableTransactionManagement -@ComponentScan(basePackageClasses = {ApolloCommonConfig.class, PortalApplication.class}) +@ComponentScan(basePackageClasses = {ApolloCommonConfig.class, + PortalApplication.class, PortalOpenApiConfig.class}) public class PortalApplication { public static void main(String[] args) throws Exception { diff --git a/apollo-portal/src/test/java/com/ctrip/framework/apollo/portal/AbstractIntegrationTest.java b/apollo-portal/src/test/java/com/ctrip/framework/apollo/portal/AbstractIntegrationTest.java index 7f1da023232..c2d79c596e6 100644 --- a/apollo-portal/src/test/java/com/ctrip/framework/apollo/portal/AbstractIntegrationTest.java +++ b/apollo-portal/src/test/java/com/ctrip/framework/apollo/portal/AbstractIntegrationTest.java @@ -1,8 +1,6 @@ package com.ctrip.framework.apollo.portal; -import com.ctrip.framework.apollo.PortalApplication; - import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.SpringApplicationConfiguration;