https://github.com/jonnor/deploymentkit
Deploy to any platform with a single package description format
https://github.com/jonnor/deploymentkit
Last synced: 3 months ago
JSON representation
Deploy to any platform with a single package description format
- Host: GitHub
- URL: https://github.com/jonnor/deploymentkit
- Owner: jonnor
- Created: 2011-08-27T20:24:10.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2012-03-26T22:20:23.000Z (almost 14 years ago)
- Last Synced: 2025-10-04T21:39:02.592Z (3 months ago)
- Language: Python
- Homepage:
- Size: 605 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.txt
Awesome Lists containing this project
README
DeploymentKit - Making it easy to deploy native packages
License: LGPLv2+
Maintainer:
Jon Nordby
Dependencies:
Python (2.7+ at the moment)
pyyaml
Cheetah
Nose (optional, for running tests)
= Purpose & Scope =
Making it easier for software developers to deploy native packages,
by generating package recipes for multiple target platforms
from a single, generic package metadata format.
= Current status =
GNU/Linux-centric prototype / feasibility study
= Usage ==
# Directly from source tree
export PYTHONPATH=./
./bin/dk-generate package.yaml
# Installing and using from install
python ./setup.py install
dk-generate package.yaml
See "dk-generate --help" and "dk-generate --help-input" for more information.
# Running tests (from source tree)
nosetests
= Principle =
DeploymentKit defines a generic package metadata format (1),
and from this generates the target-specific package recipe (2).
The package recipe (2) and the source code (0) is then consumed
by the package builder to produce the binary distributable package
that the user can install.
0.
source code
|
1. 2. | 3.
generic ----------------- target- ---------------------- Binary
package --> | DeploymentKit | --> specific --> | "PackageBuilder" * | --> distributable
metadata ----------------- package ---------------------- package
recipe for target
* The package builder is not provided by DeploymentKit, but
shown here for completeness. A cross-target solutions like
Open Build Service (www.openbuildservice.org) can be used,
or a native toolchain for the given target.
Examples formats for some common targets/toolchains:
Target 2. 3.
--------------------------------------------------
ArchLinux PKGBUILD tar.pkg.xz
Debian/Ubuntu debian/ .deb
Fedora/openSUSE .spec .rpm
Windows NSIS script .exe/.msi
= More documentation =
See TODO.txt and the doc/ directory