Am Wed, 08 Oct 2014 15:06:04 -0700 hat Vagrant Cascadian vagrant@debian.org geschrieben:
Hi,
thanks for your feedback :) I've added your patches to the script and also included Nikolaus suggestion to include the branch as well.
I've also pushed it onto the pyra-os git, so you can directly work on it as well :)
http://dev.pyra-handheld.com/index.php/p/pyraos-build/source/tree/master/
On 2014-10-07, Michael Mrozek wrote:
based on the help Vagrant gave me, I tried to create a script to automatically build our packages (if need be) and put them into the repository.
What the script does is:
- Read out GITs from a file (packages.txt, example included)
- Clones the GIT if it doesn't exist
- Updates the GIT if it already exists
- Reads out the package name and builds the package if the GIT had
been updated 5. Included the built package into the repository
Could you all have a quick look at the script and let me know if you find anything that could cause issues?
Found a few minor issues:
- Handle other compression types (dpkg source v3) and diff.gz (dpkg source v1). Maybe this will never come up, but easy to fix.
- Quoting variable in a comparison
- The debuild step should be unnecessary- sbuild can take care of that too.
Also might want to consider running each build in it's own build directory as a subdir of "$builddir" with a timestamp/randomized name just in case it gets called multiple times... maybe that's overly cautious, but it's also fairly straightforward to implement.
--- pyra-build 2014-10-08 15:02:20.499636855 -0700 +++ pyra-build-package 2014-10-08 15:02:39.519363060 -0700 @@ -19,7 +19,8 @@ rm "$builddir/*.changes" rm "$builddir/*.dsc" rm "$builddir/*.deb"
- rm "$builddir/*.tar.gz"
rm "$builddir/*.diff.gz"
rm "$builddir/*.tar.*" build=false
# Read the GIT URL
@@ -48,22 +49,18 @@
# Build if Package is updated
- if [ $build == true ]; then
if [ "$build" == true ]; then
# Get package name package="$(head -1 "${builddir}/${gitdir}/debian/control" | awk
'{print $NF}')"
- # Run debuild
- # Build the source and binary packages! cd "$builddir/$gitdir"
- debuild -us -uc -S
- # Build the package!
- cd "$builddir" sbuild -d jessie-pyra -c jessie-armhf --arch=armhf --arch-all
--source # Put it into the repository
- cd "$builddir" name="$(ls *.changes)" reprepro -V -b "$repodir" include jessie-pyra $name
live well, vagrant