summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Dockerfile16
-rw-r--r--opendc-integration-jpa/build.gradle10
-rw-r--r--opendc-integration-jpa/src/main/resources/META-INF/persistence.xml6
3 files changed, 29 insertions, 3 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 00000000..3bc786ee
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,16 @@
+FROM gradle:alpine
+MAINTAINER Fabian Mastenbroek <f.s.mastenbroek@student.tudelft.nl>
+
+# Copy OpenDC simulator
+COPY ./ /simulator
+
+# Fix permissions
+USER root
+RUN chown -R gradle:gradle /simulator
+USER gradle
+
+# Set the working directory to the JPA integration
+WORKDIR /simulator/opendc-integration-jpa
+
+# Run the application
+CMD ["/bin/sh", "-c", "gradle run -Ppersistence.url=$PERSISTENCE_URL -Ppersistence.user=$PERSISTENCE_USER -Ppersistence.password=$PERSISTENCE_PASSWORD"]
diff --git a/opendc-integration-jpa/build.gradle b/opendc-integration-jpa/build.gradle
index 4d0729b7..e5be0f46 100644
--- a/opendc-integration-jpa/build.gradle
+++ b/opendc-integration-jpa/build.gradle
@@ -80,6 +80,16 @@ repositories {
jcenter()
}
+import org.apache.tools.ant.filters.*
+
+processResources {
+ filter ReplaceTokens, tokens: [
+ 'persistence.url': project.findProperty('persistence.url') ?: '',
+ 'persistence.user': project.findProperty('persistence.user') ?: '',
+ 'persistence.password': project.findProperty('persistence.password') ?: '',
+ ]
+}
+
dependencies {
compile project(':opendc-core')
compile project(':opendc-stdlib')
diff --git a/opendc-integration-jpa/src/main/resources/META-INF/persistence.xml b/opendc-integration-jpa/src/main/resources/META-INF/persistence.xml
index ad10286f..5b01b38e 100644
--- a/opendc-integration-jpa/src/main/resources/META-INF/persistence.xml
+++ b/opendc-integration-jpa/src/main/resources/META-INF/persistence.xml
@@ -32,9 +32,9 @@
<mapping-file>jpa/schema.xml</mapping-file>
<properties>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
- <property name="javax.persistence.jdbc.url" value="jdbc:mysql://mariadbt s:3306/opendc" />
- <property name="javax.persistence.jdbc.user" value="opendc" />
- <property name="javax.persistence.jdbc.password" value="opendcpassword" />
+ <property name="javax.persistence.jdbc.url" value="@persistence.url@" />
+ <property name="javax.persistence.jdbc.user" value="@persistence.user@" />
+ <property name="javax.persistence.jdbc.password" value="@persistence.password@" />
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.show_sql" value="false" />