From 62fe8eb562f2a1223d4f833dd8fb629798e09123 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 4 Jan 2021 12:52:22 +0100
Subject: [PATCH 1/3] Publish image with javaagent
Signed-off-by: Pavol Loffay
---
.circleci/config.yml | 1 +
build.gradle.kts | 1 +
javaagent/Dockerfile | 18 ++++++++++++++++++
javaagent/build.gradle.kts | 1 +
4 files changed, 21 insertions(+)
create mode 100644 javaagent/Dockerfile
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 9686852c1..f41643776 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -70,6 +70,7 @@ jobs:
- setup_build_environment
- run: echo "Releasing version" && ./gradlew printVersion
- run: ./gradlew publish
+ - run: ./gradlew dockerBuildImages
- run:
name: "Copy artifacts to workspace"
command: |
diff --git a/build.gradle.kts b/build.gradle.kts
index b7fb73ebb..cfe6a3c9d 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -3,6 +3,7 @@ plugins {
id("com.diffplug.spotless") version "5.2.0" apply false
id("org.hypertrace.publish-plugin") version "0.3.3" apply false
id("org.hypertrace.ci-utils-plugin") version "0.1.4"
+ id("org.hypertrace.docker-publish-plugin") version "0.8.0" apply false
}
allprojects {
diff --git a/javaagent/Dockerfile b/javaagent/Dockerfile
new file mode 100644
index 000000000..255136796
--- /dev/null
+++ b/javaagent/Dockerfile
@@ -0,0 +1,18 @@
+# This is a dockerfile that contains the Hypertrace javaagent.
+# This image can be used to get the javaagent into app images or
+# as Kubernetes init container to copy the javaagent into the volume mounted into the
+# application container.
+
+FROM hypertrace/java:11
+
+LABEL maintainer="Hypertrace 'https://www.hypertrace.org/'"
+
+ENV JAVAAGENT=/opt/hypertrace/hypertrace-agent-all.jar
+COPY build/libs/hypertrace-agent-*-all.jar ${JAVAAGENT}
+
+# The following binaries are used by sidecar injector
+# This statement tests if they exists in the image
+RUN which base64
+
+# env vars are not interpreted
+CMD ["/opt/hypertrace/hypertrace-agent-all.jar"]
diff --git a/javaagent/build.gradle.kts b/javaagent/build.gradle.kts
index fd3339a61..e2b9706c5 100644
--- a/javaagent/build.gradle.kts
+++ b/javaagent/build.gradle.kts
@@ -2,6 +2,7 @@ plugins {
`java-library`
id("com.github.johnrengelman.shadow") version "6.0.0"
id("org.hypertrace.publish-plugin")
+ id("org.hypertrace.docker-publish-plugin")
}
val versions: Map by extra
From 639f99bd9dffd5ec0c70c7d37811a5f3324c74d7 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 4 Jan 2021 13:25:19 +0100
Subject: [PATCH 2/3] Use make
Signed-off-by: Pavol Loffay
---
.circleci/config.yml | 2 +-
Makefile | 14 ++++++++++++++
build.gradle.kts | 1 -
javaagent/build.gradle.kts | 1 -
4 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/.circleci/config.yml b/.circleci/config.yml
index f41643776..53d06c79d 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -70,7 +70,7 @@ jobs:
- setup_build_environment
- run: echo "Releasing version" && ./gradlew printVersion
- run: ./gradlew publish
- - run: ./gradlew dockerBuildImages
+ - run: DOCKER_TAG=${CIRCLE_TAG} make docker docker-push
- run:
name: "Copy artifacts to workspace"
command: |
diff --git a/Makefile b/Makefile
index d73ba7ccd..c6dccb478 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,9 @@
+DOCKER_IMAGE ?= hypertrace/javaagent
+DOCKER_TAG ?= latest
+
+.PHONY: assemble
+assemble:
+ ./gradlew assemble --stacktrace
.PHONY: build
build:
@@ -13,6 +19,14 @@ muzzle:
# for injecting helper classes from the same packages as instrumentations
./gradlew muzzle --no-daemon
+.PHONY: docker
+docker: assemble
+ docker build -f javaagent/Dockerfile javaagent/ -t ${DOCKER_IMAGE}:${DOCKER_TAG}
+
+.PHONY: docker-push
+docker-push: assemble
+ docker push ${DOCKER_IMAGE}:${DOCKER_TAG}
+
.PHONY: test
test:
./gradlew check
diff --git a/build.gradle.kts b/build.gradle.kts
index cfe6a3c9d..b7fb73ebb 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -3,7 +3,6 @@ plugins {
id("com.diffplug.spotless") version "5.2.0" apply false
id("org.hypertrace.publish-plugin") version "0.3.3" apply false
id("org.hypertrace.ci-utils-plugin") version "0.1.4"
- id("org.hypertrace.docker-publish-plugin") version "0.8.0" apply false
}
allprojects {
diff --git a/javaagent/build.gradle.kts b/javaagent/build.gradle.kts
index e2b9706c5..fd3339a61 100644
--- a/javaagent/build.gradle.kts
+++ b/javaagent/build.gradle.kts
@@ -2,7 +2,6 @@ plugins {
`java-library`
id("com.github.johnrengelman.shadow") version "6.0.0"
id("org.hypertrace.publish-plugin")
- id("org.hypertrace.docker-publish-plugin")
}
val versions: Map by extra
From 49fe66b9f918fb33d941c274e2587bdd31a22626 Mon Sep 17 00:00:00 2001
From: Pavol Loffay
Date: Mon, 4 Jan 2021 13:28:09 +0100
Subject: [PATCH 3/3] fix make
Signed-off-by: Pavol Loffay
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index c6dccb478..641f46b06 100644
--- a/Makefile
+++ b/Makefile
@@ -24,7 +24,7 @@ docker: assemble
docker build -f javaagent/Dockerfile javaagent/ -t ${DOCKER_IMAGE}:${DOCKER_TAG}
.PHONY: docker-push
-docker-push: assemble
+docker-push:
docker push ${DOCKER_IMAGE}:${DOCKER_TAG}
.PHONY: test