Python ZipApp Packager
Project description
Introduction
Support for executing python zip files was added in Python2.6, and in Python3.6, emphasis was added through the zipapp module.
This module contains a buildout recipe and a command line utility to help package Python applications into a zipapp, complete with its setup.py dependencies.
One of the use-case for this module is for building complex Hadoop MapReduce job in Python that relies in many dependencies. The zipapp can be distributed easily to Hadoop nodes for execution, or packaged as a script for Hive’s TRANSFORM function
Command Line Tool
Installation
pip install koslab.recipe.zipapp
Usage
The following example packages Spotify’s Luigi daemon as a zipapp.
# Creates luigi zipapp as luigi.egg zipapp build luigi -m luigi.cmdline:luigid -o luigi.egg # Run luigid python luigi.egg
Buildout Recipe
Configuration
This recipe depends on collective.recipe.omelette from Plone.
buildout.cfg:
[buildout] parts = omelette zipapp [omelette] recipe = collective.recipe.omelette eggs = # Eggs to be included into the zipapp MyApp [zipapp] recipe = koslab.recipe.zipapp omelette-part = omelette main-function = MyApp.main:main output-file = MyApp.pyz
Output file will be created everytime buildout is run
Contributors
- Note: place names and roles of the people who contribute to this package
in this file, one to a line, like so:
Joe Schmoe, Original Author
Bob Slob, contributed monkey patches
Jane Main, wrote flibberty module
Changelog
1.0 (2015-08-04)
Package created using templer [izhar]
Initial functioning recipe [izhar]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.