mozilla-services / Dockerflow

Cloud Services Dockerflow specification
Apache License 2.0
195 stars 28 forks source link

List supported CI tools in README #38

Closed ameihm0912 closed 4 years ago

ameihm0912 commented 6 years ago

In the README it says that any CI tool that meets certain requirements can be used for Dockerflow, but apparently builds from Travis CI are not supported (e.g., only Taskcluster and Circle?)

Might be good to include the supported list in the README, and maybe how support for others can be contributed?

mostlygeek commented 6 years ago

I haven't looked at travis-ci for a while. When I wrote the original spec it didn't support building Docker containers very well. Not sure if this is still the case.

Basically any CI that can do at least these things is acceptable:

  1. Able to trigger a build from a code change like a pull request or a merge.
  2. Able to run tests on the code and the application in the container.
  3. Able to manually trigger a previous build and test.
  4. Able to publish container to Docker Hub.
  5. Able to provide a build and test log.
  6. Secure and keeps secrets from being exposed.

As a practice we (mozilla) are really only using TaskCluster and CircleCI for building and shipping containers. For the most part they've been good enough. AFAIK that's still true. :)

We also have ops tooling for verifying container integrity when we deploy them into production. Supporting additional CIs also means expanding features downstream. So supporting additional CI tools would have to be worth it.

jvehent commented 6 years ago

TravisCI has been building docker containers for Autograph for a couple years now. It works fine. That said, no value add compared to CircleCI, and possibly spreads out the ecosystem.

sciurus commented 4 years ago

I see that Autograph has switched to CircleCI.

Effectively we only support CircleCI and Taskcluster due to our image verification process, so explicitly stating that makes sense to me.