typesafehub / sbt-conductr

Typesafe ConductR plugin for sbt
Other
29 stars 22 forks source link

Bundle verification #89

Closed huntc closed 7 years ago

huntc commented 9 years ago

If we can move to a situation where sbt-conductr may kick off a built-in, single node version of ConductR then it'd be great to be able to provide a task that allows the developer to verify their services. Here's a draft requirement for this:

As a Developer I wish to be able to verify the endpoints that I have configured so that I can be assured they are valid before handing over to ops.

I'm imagining an sbt sub-task as an extension of our existing conduct task such as per the following usage:

> conduct verify http://:8080
200 OK
> conduct verify http://:9999/customers
200 OK
> conduct verify http://conductr.typesafe.com
200 OK
> conduct verify tcp://:2552
Port 2552 is listening

The verify command would use the sbt-core-next project to manage a Docker based instance of ConductR (single-node flavour only) configured with HAProxy and possibly even our bundling of Elastic Search, rsyslog etc. On the latter point you may then even use the events and logs commands that we're going to implement to diagnose startup issues etc.

viktorklang commented 9 years ago

This, to me, sounds like integration tests. Isn't this something we instead ought to build into a pipeline from dev to ops via integration?

huntc commented 9 years ago

I agree that we should provide a nice hook for integration testing also. That's distinct from the use case here though. This is to support a developers dynamic workflow. Unfortunately developers tend not to be test driven always .

viktorklang commented 9 years ago

I think it would be preferable if the verification was not manual. If we know what enpoints are exposed it should be possible to have autoverification.

huntc commented 7 years ago

Closing - wont' fix.