I'm trying to get Heroku CI setup so that, upon code checkin, I can start a server running my app and then run Webdriver tests against it to confirm that the new code change is valid.
Locally, I run my tests using a selenium/standalone-chrome-debug Docker image.
The Heroku docs seem to suggest that it may be possible to use a Docker image during Heroku CI runs, but I'm not sure if this is actually possible.
My current app.json looks like this:
{
"name": "Test",
"environments": {
"test": {
"env": {
},
"scripts": {
"test-setup": "docker run -d --name se-chrome-debug -p 5900:5900 -p 4444:4444 selenium/standalone-chrome-debug",
"test": "npm run test"
},
"image": "selenium/standalone-chrome-debug",
"buildpacks": [
{"url": "heroku/nodejs"},
{"url": "https://github.com/heroku/heroku-buildpack-google-chrome.git"},
{"url": "https://github.com/heroku/heroku-buildpack-chromedriver"}
]
}
} }
During the 'test-setup' phase on Heroku, I see the buildpacks (which I think I probably don't need) being installed, but there's no mention of anything relating to the Docker image.
Then when my 'test-setup' command "docker run ..." runs, it fails because the Docker CLI is not available.
bash: docker: command not found
Is this even a valid approach to using Heroku CI? If so, how can I start the Docker image?