Coder Social home page Coder Social logo

Comments (9)

fommil avatar fommil commented on September 27, 2024 1

ok, reading 27 it sounds like you haven't discovered http://www.scala-sbt.org/0.13/docs/Howto-Dynamic-Task.html

I have also been guilty of using Command to "get it done" but almost everything is better as a Task.

from sbt-docker-compose.

fommil avatar fommil commented on September 27, 2024 1

that's because I don't think dockerComposeTest is a good way to do it. We use dockerComposeUp to bring up the docker compose fleet and then run integration and functional tests against those containers.

from sbt-docker-compose.

fommil avatar fommil commented on September 27, 2024

btw, another limitation of Command over Task is that there is only one docker-compose per Project. If it was a Task you could have a different composition for Compile vs Test vs IntegrationTest vs custom test phases (e.g. functional or performance tests).

from sbt-docker-compose.

kurtkopchik avatar kurtkopchik commented on September 27, 2024

Hi @fommil - Thanks for opening this issue. I would like to ultimately use Tasks as well but hit some limitations when I originally took this approach. This is detailed in issue #27.

from sbt-docker-compose.

fommil avatar fommil commented on September 27, 2024

ah, also pointed out here #27 (comment)

from sbt-docker-compose.

fommil avatar fommil commented on September 27, 2024

omg, the sbt docs are truly awful for dynamic tasks. I can explain a little clearer if you'd like to go that route.

from sbt-docker-compose.

ches avatar ches commented on September 27, 2024

Agree this would be a nice improvement, for many good reasons discussed in #27 and @fommil's points.

Another is that, if you're able to hook naturally into the test in Test (or IntegrationTest) task then you can make use of testOptions in Test += Tests.Setup(/* ... */) and Tests.Cleanup, which can be pretty handy for system testing. A practical case I have is creating a keyspace (DB) on a stock Cassandra container, which can (and should) be done once per entire test run, not per suite like ScalaTest BeforeAndAfterAll would do. Multiple ways to skin this cat, but the sbt feature is an intuitive one that a user might expect to able to use.

from sbt-docker-compose.

fommil avatar fommil commented on September 27, 2024

Btw we ended up writing our own, see CakeDockerComposePlugin in sbt-cake and feel free to copy/paste into your project dir.

from sbt-docker-compose.

insano10 avatar insano10 commented on September 27, 2024

I would like to do test suite setup in sbt as mentioned by @ches so this would be a really nice thing to have.

from sbt-docker-compose.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.