b122190cd8
These changes will use docker's new Dockerfile Arguments to pass the Host User ID to the docker container at build time. This allows the docker container to set it's internal user to match that of the host. When using shared volumes between the host and container, this prevents files created in the container from being owned by root. This will solve our problem of needing a cleanup step after every ubuntu CI run. |
||
---|---|---|
.. | ||
package_files/debian | ||
scripts | ||
setup | ||
templates/debian | ||
test | ||
example_config.json | ||
package_tool | ||
README.md | ||
test.sh |
Debian Packagify
A tool which consumes a directory structure to produce a debian package.
Usage
package_tool [path to input directory] [path to output directory]
Input Directory Spec
package/
$/ (Contents in this directory will be placed absolutely according to their relative path)
usr/lib/somelib.so (ex. This file gets placed at /usr/lib/somelib.so at install)
package_root/ (Contents placed in install root)
samples/ (Contents here will be installed as samples)
docs/ (Contents will be installed as manpages)
debian_config.json (See example below)
docs.json (For manpage generation)
(ex. dotnet-commands-test.sh)
full example debian_config.json
Note: remove all comments before using this
{
"maintainer_name":"Microsoft", // [required]
"maintainer_email": "optimus@service.microsoft.com", // [required]
"package_name": "Packagify_Test", // [required]
"short_description": "This is a test package", // [required] Max. 60 chars
"long_description": "This is a longer description of the test package", // [required]
"homepage": "http://testpackage.com", // (optional no default)
"release":{
"package_version":"0.1", // [required]
"package_revision":"1", // [required]
"urgency" : "low", // (optional default="low") https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Urgency
"changelog_message" : "some stuff here" // [required]
},
"control": { // (optional)
"priority":"standard", // (optional default="standard") https://www.debian.org/doc/debian-policy/ch-archive.html#s-priorities
"section":"devel", // (optional default="misc") https://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections
"architecture":"all" // (optional default="all" )
},
"copyright": "2015 Microsoft", // [required]
"license": { // [required]
"type": "some_license", // [required]
"full_text": "full license text here" // [required]
},
"debian_dependencies" : { // (optional no default)
"package_name": {
"package_version" : "1.0.0" // (optional within package_name no default)
}
},
"symlinks": { // (optional no defaults)
"path_relative_to_package_root/test_exe.sh" : "usr/bin/test_exe.sh"
}
}