-
-
Notifications
You must be signed in to change notification settings - Fork 44
Release official Docker image + pixel exact image tests #222
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
Conversation
|
Thanks for working on this @antoinerg, this is going to be really helpful! I'd like to see if we can work through how Python/R/Julia users could take advantage of orca as a docker image without each library needing to include docker related logic. Would it be possible to distribute a shell script, if if The R and Julia libraries use the What do you think? |
I'm glad to see lots of people are excited about this one!
That is certainly one of the goal here. Making an
As far as I know, it cannot. It would have to be a manual step. |
|
Sounds like a great idea to me! Minor request: if you're adding a tool that users are expected to run, it should not have a Also note that we have a company-wide bash style guide (mostly incorporates Progrium's). |
9a68805 to
ac00cfd
Compare
It forwards a call to Orca in Docker in a seamless fashion by: - binding the container to the host's networking stack - bind-mounting the current folder into the container at the same path - setting the current directory to the current path
|
@jonmmease I wrote a little shell script in commit 94bb0a4 to call Orca in Docker. Please see the commit message for details. Also, can you test it out on MacOS and adapt it if it doesn't work. Anyway, let me know what you think! |
|
Any comments for this PR? @etpinard @jonmmease @plotly/devops Thank you all! |
|
💃 from me |
e29de4b to
c2ec25f
Compare
Closes #187
@scjody suggested we reuse our existing
Dockerfileto publish our official Docker images. In order to do so, I had to adapt itsENTRYPOINTto support CLI invocation (see #187 (comment) for details). If the first argument is either--version,--helporgraphwe assume Orca is used as a CLI. If the first argument isserveor anything else, we launch the server as we used to do.plotly/orcaimage tests
The inclusion of image tests in this PR eliminates the risk of missing dependencies in the final Docker image. By using software rendering, we get reproducible images that we can compare pixel per pixel with a set of baselines in an exact manner. By visually testing all image formats (
pdf,eps,svg,png,emf), we catch missing system dependencies such as Poppler, Inkscape, Mathjax or missing fonts. Hopefully, this will catch regressions whenever we perform system upgrades.@plotly/devops please have a look at the new entrypoint.