Skip to content

Commit af0d7d4

Browse files
authored
Merge pull request #14 from peterrsongg/springboot
Authentication added + api_gateway removed
2 parents 3fcf559 + 23c3421 commit af0d7d4

File tree

22 files changed

+333
-30
lines changed

22 files changed

+333
-30
lines changed

MtdrSpring/backend/MyTodoList.iml

Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3+
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_11">
4+
<output url="file://$MODULE_DIR$/target/classes" />
5+
<output-test url="file://$MODULE_DIR$/target/test-classes" />
6+
<content url="file://$MODULE_DIR$">
7+
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
8+
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
9+
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
10+
<excludeFolder url="file://$MODULE_DIR$/target" />
11+
</content>
12+
<orderEntry type="inheritedJdk" />
13+
<orderEntry type="sourceFolder" forTests="false" />
14+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.6.4" level="project" />
15+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.6.4" level="project" />
16+
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.7" level="project" />
17+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.6.4" level="project" />
18+
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:4.0.3" level="project" />
19+
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.16" level="project" />
20+
<orderEntry type="library" name="Maven: jakarta.transaction:jakarta.transaction-api:1.3.3" level="project" />
21+
<orderEntry type="library" name="Maven: jakarta.persistence:jakarta.persistence-api:2.2.3" level="project" />
22+
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.6.5.Final" level="project" />
23+
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.3.Final" level="project" />
24+
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.11.22" level="project" />
25+
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
26+
<orderEntry type="library" name="Maven: org.jboss:jandex:2.4.2.Final" level="project" />
27+
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.1.2.Final" level="project" />
28+
<orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.6" level="project" />
29+
<orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.6" level="project" />
30+
<orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.12" level="project" />
31+
<orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.activation:jakarta.activation:1.2.2" level="project" />
32+
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.6.2" level="project" />
33+
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.6.2" level="project" />
34+
<orderEntry type="library" name="Maven: org.springframework:spring-orm:5.3.16" level="project" />
35+
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.16" level="project" />
36+
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.16" level="project" />
37+
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.16" level="project" />
38+
<orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.3.16" level="project" />
39+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.6.4" level="project" />
40+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.6.4" level="project" />
41+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.6.4" level="project" />
42+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.6.4" level="project" />
43+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.6.4" level="project" />
44+
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.10" level="project" />
45+
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.10" level="project" />
46+
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.17.1" level="project" />
47+
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.17.1" level="project" />
48+
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.36" level="project" />
49+
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
50+
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.29" level="project" />
51+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.6.4" level="project" />
52+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.13.1" level="project" />
53+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.13.1" level="project" />
54+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.13.1" level="project" />
55+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.13.1" level="project" />
56+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.13.1" level="project" />
57+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.6.4" level="project" />
58+
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.58" level="project" />
59+
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.58" level="project" />
60+
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.58" level="project" />
61+
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.16" level="project" />
62+
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.16" level="project" />
63+
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.16" level="project" />
64+
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.6.1" level="project" />
65+
<orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.10" level="project" />
66+
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.10" level="project" />
67+
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.13.1" level="project" />
68+
<orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.6.1" level="project" />
69+
<orderEntry type="library" name="Maven: io.springfox:springfox-core:2.6.1" level="project" />
70+
<orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.6.1" level="project" />
71+
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.6.1" level="project" />
72+
<orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.6.1" level="project" />
73+
<orderEntry type="library" name="Maven: com.google.guava:guava:18.0" level="project" />
74+
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
75+
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.36" level="project" />
76+
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
77+
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
78+
<orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.0.0.Final" level="project" />
79+
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.6.1" level="project" />
80+
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpclient:4.5.13" level="project" />
81+
<orderEntry type="library" scope="TEST" name="Maven: org.apache.httpcomponents:httpcore:4.4.15" level="project" />
82+
<orderEntry type="library" scope="TEST" name="Maven: commons-codec:commons-codec:1.15" level="project" />
83+
<orderEntry type="library" name="Maven: com.oracle.database.jdbc:ojdbc11:21.3.0.0" level="project" />
84+
<orderEntry type="library" name="Maven: com.oracle.database.jdbc:ucp11:21.3.0.0" level="project" />
85+
<orderEntry type="library" name="Maven: com.oracle.database.jdbc:rsi:21.3.0.0" level="project" />
86+
<orderEntry type="library" name="Maven: com.oracle.database.security:oraclepki:21.3.0.0" level="project" />
87+
<orderEntry type="library" name="Maven: com.oracle.database.security:osdt_core:21.3.0.0" level="project" />
88+
<orderEntry type="library" name="Maven: com.oracle.database.security:osdt_cert:21.3.0.0" level="project" />
89+
<orderEntry type="library" name="Maven: com.oracle.database.ha:ons:21.3.0.0" level="project" />
90+
<orderEntry type="library" name="Maven: com.oracle.database.nls:orai18n:21.3.0.0" level="project" />
91+
<orderEntry type="library" name="Maven: com.oracle.database.xml:xdb:21.3.0.0" level="project" />
92+
<orderEntry type="library" name="Maven: com.oracle.database.xml:xmlparserv2:21.3.0.0" level="project" />
93+
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.6.4" level="project" />
94+
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.6.4" level="project" />
95+
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.6.4" level="project" />
96+
<orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.6.0" level="project" />
97+
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.4.8" level="project" />
98+
<orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:2.4.8" level="project" />
99+
<orderEntry type="library" scope="TEST" name="Maven: org.ow2.asm:asm:9.1" level="project" />
100+
<orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
101+
<orderEntry type="library" name="Maven: jakarta.activation:jakarta.activation-api:1.2.2" level="project" />
102+
<orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.21.0" level="project" />
103+
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest:2.2" level="project" />
104+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter:5.8.2" level="project" />
105+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.2" level="project" />
106+
<orderEntry type="library" scope="TEST" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" />
107+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.8.2" level="project" />
108+
<orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.2" level="project" />
109+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-params:5.8.2" level="project" />
110+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.2" level="project" />
111+
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.8.2" level="project" />
112+
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-core:4.0.0" level="project" />
113+
<orderEntry type="library" scope="TEST" name="Maven: net.bytebuddy:byte-buddy-agent:1.11.22" level="project" />
114+
<orderEntry type="library" scope="TEST" name="Maven: org.objenesis:objenesis:3.2" level="project" />
115+
<orderEntry type="library" scope="TEST" name="Maven: org.mockito:mockito-junit-jupiter:4.0.0" level="project" />
116+
<orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
117+
<orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
118+
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.16" level="project" />
119+
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.16" level="project" />
120+
<orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.3.16" level="project" />
121+
<orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.8.4" level="project" />
122+
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-security:2.6.4" level="project" />
123+
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.16" level="project" />
124+
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-config:5.6.2" level="project" />
125+
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-web:5.6.2" level="project" />
126+
<orderEntry type="library" scope="TEST" name="Maven: org.springframework.security:spring-security-test:5.6.2" level="project" />
127+
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-core:5.6.2" level="project" />
128+
<orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.6.2" level="project" />
129+
</component>
130+
</module>

MtdrSpring/backend/build.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ if [ -z "$DOCKER_REGISTRY" ]; then
1313
echo "Error: DOCKER_REGISTRY env variable needs to be set!"
1414
exit 1
1515
fi
16-
17-
1816
export IMAGE=${DOCKER_REGISTRY}/${IMAGE_NAME}:${IMAGE_VERSION}
1917

2018
mvn clean package spring-boot:repackage

MtdrSpring/backend/deploy.sh

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,17 @@ if [ -z "$OCI_REGION" ]; then
1616
echo "Error: OCI_REGION env variable needs to be set!"
1717
exit 1
1818
fi
19+
20+
if [ -z "$UI_USERNAME" ]; then
21+
echo "UI_USERNAME not set. Will get it with state_get"
22+
export UI_USERNAME=$(state_get UI_USERNAME)
23+
fi
24+
25+
if [ -z "$UI_USERNAME" ]; then
26+
echo "Error: UI_USERNAME env variable needs to be set!"
27+
exit 1
28+
fi
29+
1930
echo "Creating springboot deplyoment and service"
2031
export CURRENTTIME=$( date '+%F_%H:%M:%S' )
2132
echo CURRENTTIME is $CURRENTTIME ...this will be appended to generated deployment yaml
@@ -29,7 +40,8 @@ sed -e "s|%TODO_PDB_NAME%|${TODO_PDB_NAME}|g" todolistapp-springboot-${CURRENTTI
2940
mv -- /tmp/todolistapp-springboot-$CURRENTTIME.yaml todolistapp-springboot-$CURRENTTIME.yaml
3041
sed -e "s|%OCI_REGION%|${OCI_REGION}|g" todolistapp-springboot-${CURRENTTIME}.yaml > /tmp/todolistapp-springboot-$CURRENTTIME.yaml
3142
mv -- /tmp/todolistapp-springboot-$CURRENTTIME.yaml todolistapp-springboot-$CURRENTTIME.yaml
32-
43+
sed -e "s|%UI_USERNAME%|${UI_USERNAME}|g" todolistapp-springboot-${CURRENTTIME}.yaml > /tmp/todolistapp-springboot-$CURRENTTIME.yaml
44+
mv -- /tmp/todolistapp-springboot-$CURRENTTIME.yaml todolistapp-springboot-$CURRENTTIME.yaml
3345
if [ -z "$1" ]; then
3446
kubectl apply -f $SCRIPT_DIR/todolistapp-springboot-$CURRENTTIME.yaml -n mtdrworkshop
3547
else

MtdrSpring/backend/pom.xml

Lines changed: 48 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@
1616
<properties>
1717
<java.version>11</java.version>
1818
<version.lib.ojdbc>21.1.0.0</version.lib.ojdbc>
19+
<frontend-src-dir>${project.basedir}/src/main/frontend</frontend-src-dir>
20+
<node.version>v16.13.2</node.version>
21+
<npm.version>8.1.2</npm.version>
1922
</properties>
2023
<dependencies>
2124
<dependency>
@@ -58,33 +61,71 @@
5861
<artifactId>spring-boot-starter-test</artifactId>
5962
<scope>test</scope>
6063
</dependency>
64+
<dependency>
65+
<groupId>org.springframework.boot</groupId>
66+
<artifactId>spring-boot-starter-security</artifactId>
67+
</dependency>
68+
<dependency>
69+
<groupId>org.springframework.security</groupId>
70+
<artifactId>spring-security-test</artifactId>
71+
<scope>test</scope>
72+
</dependency>
6173
</dependencies>
6274
<build>
6375
<plugins>
6476
<!-- Keeps frontend and backend separate. -->
6577
<plugin>
6678
<groupId>com.github.eirslett</groupId>
6779
<artifactId>frontend-maven-plugin</artifactId>
68-
<!-- Use the latest released version:
69-
https://repo1.maven.org/maven2/com/github/eirslett/frontend-maven-plugin/ -->
7080
<version>1.9.1</version>
81+
<configuration>
82+
<nodeVersion>${node.version}</nodeVersion>
83+
<npmVersion>${npm.version}</npmVersion>
84+
<workingDirectory>${frontend-src-dir}</workingDirectory>
85+
<installDirectory>${project.build.directory}</installDirectory>
86+
<downloadRoot></downloadRoot>
87+
</configuration>
88+
<executions>
89+
<execution>
90+
<id>install-frontend-tools</id>
91+
<goals>
92+
<goal>install-node-and-npm</goal>
93+
</goals>
94+
</execution>
95+
<execution>
96+
<id>npm install</id>
97+
<goals>
98+
<goal>npm</goal>
99+
</goals>
100+
</execution>
101+
<execution>
102+
<id>npm run build</id>
103+
<goals>
104+
<goal>npm</goal>
105+
</goals>
106+
<configuration>
107+
<arguments>run build</arguments>
108+
</configuration>
109+
</execution>
110+
</executions>
71111
</plugin>
72112
<plugin>
73113
<groupId>org.apache.maven.plugins</groupId>
74114
<artifactId>maven-resources-plugin</artifactId>
115+
<version>3.2.0</version>
75116
<executions>
76117
<execution>
77-
<id>copy-resources</id>
78-
<phase>process-resources</phase>
118+
<id>position-react-build</id>
79119
<goals>
80120
<goal>copy-resources</goal>
81121
</goals>
122+
<phase>prepare-package</phase>
82123
<configuration>
83-
<outputDirectory>${project.build.directory}</outputDirectory>
124+
<outputDirectory>${project.build.outputDirectory}/static</outputDirectory>
84125
<resources>
85126
<resource>
86-
<directory>.</directory>
87-
<filtering>true</filtering>
127+
<directory>${frontend-src-dir}/build</directory>
128+
<filtering>false</filtering>
88129
</resource>
89130
</resources>
90131
</configuration>
File renamed without changes.
File renamed without changes.
File renamed without changes.

MtdrSpring/frontend/public/swagger_APIs_definition.json renamed to MtdrSpring/backend/src/main/frontend/public/swagger_APIs_definition.json

File renamed without changes.

MtdrSpring/frontend/public/swagger_APIs_definition.yaml renamed to MtdrSpring/backend/src/main/frontend/public/swagger_APIs_definition.yaml

File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)