gebi / ooopy

OOoPy is a library in Python for inspecting, creating or modifying OpenOffice.org documents. It uses the existing ElementTree XML library by for manipulation of the OOo XML.
6 stars 1 forks source link

Mail merge with Docker container #1

Closed WeeSee closed 6 years ago

WeeSee commented 6 years ago

hi, great repo! This is first and only one repo I found which provides scripting for mail merging documents. I tried to get it working but struggled with python (I do not have working python experience). Please provide a Docker container which fully encapsulates the mail merge feature. The Docker container should take a csv and an odt document and produce a merged odt document as result.

gebi commented 6 years ago

@WeeSee hi :)

I added a Dockerfile to the project, have fun! https://github.com/gebi/ooopy/blob/master/Dockerfile

you can build it with: docker build --build-arg "MAINTAINER=Your Name <Your@Email>" -t ooopy .

WeeSee commented 6 years ago

Wow, this was fast. Thanks for Dockerizing. Do have a little hint on how to use the Docker image for mail merging. A sample docker run .... would be perfect. When I get this working on my site I will help extending the documentation.

gebi commented 6 years ago

i've pushed an updated and tuned Dockerfile to the repo, and also added a small usage example ;), sorry for not providing it from the start.

The usage example exports the current directory into /tmp of the container and outputs the resulting odt file from ooo_mailmerge over stdout.

ooo_mailmerge usage example:
   docker run -it --rm --net none -v `pwd`:/tmp:ro ooopy ooo_mailmerge /tmp/in.odt /tmp/in.csv >out.odt
   description:
     The input file folder is mapped read-only into the container to /tmp
     Output file is written to stdout, to remove the hassle of writing files and
     mapping of UIDs.
     The container is started without networking because it is not needed.