Closed fsat closed 7 years ago
Manual test for the change is completed successfully.
Setup
Publish ConductR Lib locally using sbt publishLocal
.
Modify SBT ConductR to depend on this ConductR Lib, and publish locally as well.
Felixs-MBP-2:sbt-conductr felixsatyaputra$ git diff
diff --git a/src/main/scala/com/lightbend/conductr/sbt/package.scala b/src/main/scala/com/lightbend/conductr/sbt/package.scala
index 631b8dc..5bd058e 100644
--- a/src/main/scala/com/lightbend/conductr/sbt/package.scala
+++ b/src/main/scala/com/lightbend/conductr/sbt/package.scala
@@ -76,7 +76,7 @@ package object sbt {
}
object Version {
- val conductrBundleLib = "1.4.13"
+ val conductrBundleLib = "1.4.14-SNAPSHOT"
}
/**
Modify ConductR to depend on the locally published ConductR Lib and SBT ConductR.
diff --git a/project/Dependencies.scala b/project/Dependencies.scala
index fd5fed4..57dfb73 100644
--- a/project/Dependencies.scala
+++ b/project/Dependencies.scala
@@ -16,7 +16,7 @@ object Version {
val contrail = "3.4.3"
val commonsCompress = "1.11"
val commonsIO = "2.5"
- val conductrLib = "1.4.13"
+ val conductrLib = "1.4.14-SNAPSHOT"
val constructr = "0.15.0"
val constructrZookeeper = "0.3.0"
val d3js = "3.4.11"
diff --git a/project/plugins.sbt b/project/plugins.sbt
index 86da9c5..38106a1 100644
--- a/project/plugins.sbt
+++ b/project/plugins.sbt
@@ -19,7 +19,7 @@ resolvers ++= Seq(
// OSS
addSbtPlugin("com.github.gseitz" % "sbt-protobuf" % "0.5.2")
addSbtPlugin("com.lightbend.lagom" % "lagom-sbt-plugin" % "1.1.0")
-addSbtPlugin("com.lightbend.conductr" % "sbt-conductr" % "2.1.17")
+addSbtPlugin("com.lightbend.conductr" % "sbt-conductr" % "2.1.20-SNAPSHOT")
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.9")
addSbtPlugin("com.typesafe.sbt" % "sbt-bintray-bundle" % "1.1.1")
addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.4")
Build local docker image using sbt conductr/docker:publishLocal
Run the local sandbox using sandbox run 0.1.0 -n 3
Deploy the following bundles:
eslite
from bintray.reactive-maps-backend-summary
with test configFelixs-MBP-2:conductr felixsatyaputra$ conduct info
Loading custom settings /Users/felixsatyaputra/.conductr/settings.conf
ID NAME #REP #STR #RUN
14e8ede eslite 3 0 1
abf6045-a53237c reactive-maps-backend-summary 3 0 3
ba46da0-4b25490 continuous-delivery 3 0 1
Test Result
CD can be completed successfully.
This asserts the following functionality.
Felixs-MBP-2:tmp felixsatyaputra$ sh cd-deploy.sh
+ HOST_PORT=192.168.99.100:9005
+ WEBHOOK=GnNDrC0VQ0CN1qbWFgnvLw==
+ curl -v -H 'X-Bintray-WebHook-Hmac: GnNDrC0VQ0CN1qbWFgnvLw==' -H 'Content-Type: application/json' -X POST -d '{"package":"reactive-maps-backend-summary","version":"v1-d073991ab918ee22c7426af8a62a48c5ebec737f53cfc4bccb0a4f712d76dd6a"}' http://192.168.99.100:9005/deployments/typesafe/bundle/typesafe
* Trying 192.168.99.100...
* Connected to 192.168.99.100 (192.168.99.100) port 9005 (#0)
> POST /deployments/typesafe/bundle/typesafe HTTP/1.1
> Host: 192.168.99.100:9005
> User-Agent: curl/7.43.0
> Accept: */*
> X-Bintray-WebHook-Hmac: GnNDrC0VQ0CN1qbWFgnvLw==
> Content-Type: application/json
> Content-Length: 123
>
* upload completely sent off: 123 out of 123 bytes
< HTTP/1.1 200 OK
< Date: Thu, 01 Dec 2016 22:09:32 GMT
< Server: akka-http/10.0.0
< Content-Type: text/plain; charset=UTF-8
< Content-Length: 36
<
* Connection #0 to host 192.168.99.100 left intact
04638fdc-b510-4046-bfec-9a363ba384d6+ curl -v http://192.168.99.100:9005/deployments/events
* Trying 192.168.99.100...
* Connected to 192.168.99.100 (192.168.99.100) port 9005 (#0)
> GET /deployments/events HTTP/1.1
> Host: 192.168.99.100:9005
> User-Agent: curl/7.43.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Thu, 01 Dec 2016 22:09:32 GMT
< Server: akka-http/10.0.0
< Transfer-Encoding: chunked
< Content-Type: text/event-stream
<
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: bundleDownload
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: configDownload
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: load
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: deploy
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: deploy
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: deploy
data: 04638fdc-b510-4046-bfec-9a363ba384d6
event: deploymentSuccess
Felixs-MBP-2:tmp felixsatyaputra$ conduct info
Loading custom settings /Users/felixsatyaputra/.conductr/settings.conf
ID NAME #REP #STR #RUN
14e8ede eslite 3 0 1
abf6045-a53237c reactive-maps-backend-summary 3 0 0
ba46da0-4b25490 continuous-delivery 3 0 1
d073991-a53237c reactive-maps-backend-summary 3 0 3
Also revert back to Play 2.5.4
This is because Lagom 1.2.0 depends on Play 2.5.4 which has dependency on Async HTTP Client 2.0.2.
https://github.com/lagom/lagom/blob/1.2.0/build.sbt#L16
Moving to latest Play (2.5.10 at the time of the commit) will bring in AHC 2.0.11 that drops CleanupChannelGroup which is a public API, causing NoClassDefFoundError when used with Lagom.
https://github.com/AsyncHttpClient/async-http-client/commit/03ac5e18006b6c48984a7ca1d4b159b6b20cc44a