1 package cn.home1.cloud.netflix.eureka;
2
3 import lombok.extern.slf4j.Slf4j;
4
5 import org.springframework.beans.factory.annotation.Autowired;
6 import org.springframework.boot.SpringApplication;
7 import org.springframework.boot.autoconfigure.SpringBootApplication;
8 import org.springframework.boot.autoconfigure.security.SecurityProperties;
9 import org.springframework.cloud.netflix.sidecar.EnableSidecar;
10 import org.springframework.context.ConfigurableApplicationContext;
11 import org.springframework.core.env.Environment;
12 import org.springframework.security.core.userdetails.UserDetails;
13 import org.springframework.util.StringUtils;
14
15
16
17
18 @EnableSidecar
19 @SpringBootApplication
20 @Slf4j
21 public class EurekaSidecarApplication {
22
23 @Autowired
24 private Environment environment;
25
26 @Autowired
27 private SecurityProperties securityProperties;
28
29 public static void main(final String... args) {
30 final ConfigurableApplicationContext context = SpringApplication.run(EurekaSidecarApplication.class, args);
31
32 final EurekaSidecarApplication application = context.getBean(EurekaSidecarApplication.class);
33 application.printInfo();
34 }
35
36
37
38
39 public void printInfo() {
40
41 log.info("server.servlet.context-path (server.context-path deprecated since spring-boot 2.x): {}",
42 this.environment.getProperty("server.servlet.context-path"));
43
44 log.info("management.endpoints.web.base-path (management.context-path deprecated since spring-boot 2.x): {}",
45 this.environment.getProperty("management.endpoints.web.base-path"));
46
47 final String passwordFromSystemEnv = System.getenv("SPRING_SECURITY_USER_PASSWORD");
48 if (StringUtils.isEmpty(passwordFromSystemEnv)) {
49 final String username = this.securityProperties.getUser().getName();
50 final String password = this.securityProperties.getUser().getPassword();
51
52 log.info("username: {}, randomly generated password: {}", username, password);
53 }
54 }
55 }