Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker version #49

Open
AssafKatz opened this issue Aug 6, 2017 · 6 comments
Open

Docker version #49

AssafKatz opened this issue Aug 6, 2017 · 6 comments

Comments

@AssafKatz
Copy link

Hi,
This seems to be good for CI, but requires manual installation. Is it possible to create Docker image for it?
Thanks,
Assaf

@jeffreyc
Copy link
Contributor

jeffreyc commented Aug 7, 2017

Thank you for your feedback. We don't currently have any plans to create a Docker image, as we install it via Bundler or Ruby's gem command. What's your use case for wanting a Docker image?

@JamesMessinger
Copy link

+1

There are a few unofficial Docker images that have been created by the community, but I'd also love to see an "official" Docker image that's published by Civis.

The use-case is simply having an entirely self-contained version of the CLI that encapsulates all dependencies (Ruby, etc.) without any risk of version conflicts, incompatibility, etc.

@JamesMessinger
Copy link

I went ahead and created a Docker image for myself. Feel free to copy this one and publish it as the "official" image if you want.

@AssafKatz3
Copy link

AssafKatz3 commented Mar 28, 2018

@BigstickCarpet can you open pull request?
Thanks

@JamesMessinger
Copy link

@AssafKatz - There are (at least) four steps that need to be taken. I could submit a PR, but it would only take care of the first step.

Step 1 - Create a Dockerfile
Add this Dockerfile to the project.

Step 2 - Add tests
Write tests to verify that the Docker image works as expected. Basically, test that the console output matches the expected output for compatible & incompatible API definitions.

Unfortunately, I don't know Ruby, and I'm not familiar with Rake or Bundler. So I don't know how to write these tests.

Step 3 - Publish the Docker image to DockerHub
Someone at Civis Analytics will need to create a DockerHub account and publish the swagger-diff image under that account.

Step 4 - Publish new Docker images for each new release
Every time a new version of swagger-diff is released, a new Docker image will need to be published to DockerHub. Ideally, this would be automated as part of the build script or CI/CD script.

@AssafKatz3
Copy link

@BigstickCarpet
The problematic part is step 2, given that currently the project doesn't have tests at all.
I asked you to do pull request for step 1.
Since I opened this issue, I learnt how to do step 3 & 4.

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

No branches or pull requests

4 participants