We want to give it a try to setup CI/CD with Jenkins for our project. The project itself has Elasticsearch and PostgreSQL as runtime dependencies and Webdriver for acceptance testing. In dev environment, everything is set up within one `docker-compose.yml` file and we have `acceptance.sh` script to run acceptance tests.
After digging documentation I found that it's potentially possible to build CI with following steps: 1. dockerize project 2. pull project from git repo 3. somehow pull `docker-compose.yml` and project `Dockerfile` - either: * put it in the project repo * put it in separate repo (this is how it's done now) * put somewhere on a server and jut copy it over 4. execute `docker-compose up` 5. project's Dockerfile will have `ONBUILT` section to run tests. Unit tests are run through `mix tests` and acceptance through `scripts/acceptance.sh`. It'll be cool to run them in parallel. 6. shutdown `docker-compose`, clean up containers Because this is my first experience with Jenkins a series of questions arise: - Is this a viable strategy? - How to connect tests output with Jenkins? - How to run and shut down docker-compose? - Do we need/want to write a pipeline for that? Will we need/want pipeline when we will get to the CD on the next stage? Thanks -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/833935ed-8a76-4510-bca9-36a9883a1f82%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
