Skip to content
This repository has been archived by the owner on Jun 23, 2020. It is now read-only.

driver: compose #80

Open
bradrydzewski opened this issue Jul 27, 2019 · 2 comments
Open

driver: compose #80

bradrydzewski opened this issue Jul 27, 2019 · 2 comments

Comments

@bradrydzewski
Copy link
Member

bradrydzewski commented Jul 27, 2019

I've been trying to figure out what a docker-compose runner might look like. So many people try to run docker-compose inside drone using docker-in-docker or mounting the host machine socket and it is always a mess. It would be great to have a runner that natively supports these types of workflows.

I just started jotting some ideas down for what this could look like:

kind: pipeline
type: docker-compose

up:
- docker-compose.yml
- docker-compose-e2e.yml

exec:
- foo ./test_runner_script.sh
- bar ./test_runner_script.sh

push:
- foo/bar

config:
  auths:
    docker.io:
      username: foo
      password: bar

Some outstanding questions:

  • syntax to enable docker push on pull request?
  • syntax to skip commands based on branch, event, etc (similar to when)
  • should this runner support Drone plugins? If so what does that look like?
  • we still need some magic to build images using a unique identifier and then push images using the user-defined name

related articles:

@tboerger
Copy link

  1. you want to be able to inject env variables
  2. some kind of pre script also makes sense for preparing the stack requirements
  3. use by default an array similar to conditions, but optionally allow an object for conditions and things like that

These are my 2 cents

@bradrydzewski
Copy link
Member Author

@tboerger would love to see a mockup of how you think the yaml could look :) I know you use compose for testing so you probably have better ideas than I do.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants