Commit Graph

65 Commits

Author SHA1 Message Date
Dev Random
02f4440473 Merge pull request #72 from theuni/git-minimize-upload
git: minimize uploaded git files
2014-11-10 10:37:36 -08:00
Cory Fields
66015b9f14 cache: define variables for cache paths 2014-11-10 01:48:19 -05:00
Cory Fields
dcf28c8b86 git: minimize uploaded git files
Rather than uploading every checked-out file of a repository and the
repository objects themselves, skip the checkout and instruct git to compact
before upload. The result is that only a handful of files are transferred,
rather than hundreds or thousands for large repositories.

The HEAD ref is updated before upload so that a hard reset works as before on
the target. The reflog is also disabled in order to avoid uploading useless log
files.

This change is backwards-compatible, but it will only have an effect on new
repositories.
2014-11-10 01:48:04 -05:00
Cory Fields
00d5b9849c cache: require the enable_cache key to be set to true in order to use cache functionality 2014-09-22 20:10:33 -04:00
Christopher Gurnee
63fe5d1de2 Fix issue #63: use lxc-execute instead of lxc-start 2014-09-04 16:54:05 -04:00
Cory Fields
923ea1055d fix: use don't use methods that require new ruby version
This is a regression from ea24af10. Dir.exists isn't available in ruby 1.8
2014-08-22 19:41:44 -04:00
Dev Random
8e907adcc4 Merge pull request #58 from laanwj/master
Extend gverify comparison
2014-08-21 14:36:52 -07:00
Cory Fields
00114ee98f fix: Separate cache from output files in yml report
Otherwise the output may look non-deterministic if there are stale files in
the cache.
2014-08-12 18:23:10 -04:00
Cory Fields
6a64b48d69 fix: create cache dirs to avoid file copy errors
This fixes builds that don't use caching.
2014-08-12 17:54:35 -04:00
Cory Fields
ea24af1043 Add common cache and per-build cache
Allow each builder to cache some files for re-use in the next build. This
allows for poor-man's dependency chaining.

Additionally, add a common cache pool for all builds. This can be used for
saving (for example) downloaded files to be shared between builds.
2014-08-07 13:01:37 -04:00
Ben Rossi
feef35616b Allow @ in URLs so Gitian-Builder works against source stored on BitBucket. 2014-07-25 11:54:43 -04:00
Giuseppe Mazzotta
25db707b34 Use a clean environment when building VMs 2014-06-11 16:52:41 +02:00
Wladimir J. van der Laan
449bc5b243 Extend gverify comparison
- Allow comparing to a sepcific 'golden' manifest with `--compare-to`
- By default pick the first manifest to compare to, instead of always
  comparing against the previous one, which is confusing
- Show line-by-line difference if `-v` given
2014-06-11 09:37:03 +02:00
gdm85
1504c76f11 Fix issue #56: clean up environment before gbuild'ing
Originally proposed by cfields
2014-06-11 00:00:16 +02:00
Wladimir J. van der Laan
5785dfc3ae Un-hardcode host/guest IP
I was running into trouble using gitian LXC INSIDE a VirtualBox VM, because
the 10.0.2.x IP range overlaps with the range that VirtualBox uses for
its internal NAT network.

This commit makes it possible to override the host and guest IP that
is used during LXC image creation and the build, using environment variables:

- `GITIAN_HOST_IP` (default=10.0.2.2, host IP from the viewpoint of the
   VM, can be used for both LXC and KVM)
- `LXC_GUEST_IP` (default=10.0.2.5, guest IP from the viewpoint of the
   host, effective for LXC only)

When these are not defined the behavior remains the same as before.
2014-04-02 16:24:52 +02:00
Dev Random
c9e62adc21 Merge pull request #50 from simondlr/increase_time
Increase time for checking if a target has started.
2014-04-01 11:14:14 -07:00
Wladimir J. van der Laan
534248d236 Make it possible to override source URL
To make test builds it can be useful to point gitian at an
alternative repository.

This commit makes this possible by adding a `--url PAIRS` command line
option, that allows to optionally specify where to fetch the code, for
example:

    gbuild --url bitcoin=https://github.com/laanwj/bitcoin.git --commit bitcoin=2014_03_...
2014-04-01 10:36:50 +02:00
Simon de la Rouviere
d8d01f7bad Increase time for checking if a target has started. 2014-02-11 17:18:30 +02:00
Tom Robinson
a6fdc28839 Add VirtualBox support to make-base-vm via Vagrant 2014-02-01 19:23:44 -08:00
devrandom
ac4f77bcd1 Initialize umask to a known value (002) 2013-12-04 14:16:44 -08:00
Matt Corallo
95e09ae608 Increase disk size for things like Firefox that need it. 2013-10-31 21:35:37 -04:00
devrandom
79c1217cb1 make passing env vars work across guest OS suites 2013-09-29 10:58:33 -07:00
Arlo Breault
d9cc3d14b9 Don't warn in if LXC. 2013-06-17 21:57:07 -07:00
Dev Random
5512bb3cec Merge pull request #35 from luke-jr/no_recommends
Don't install package recommends implicitly
2013-05-05 20:42:49 -07:00
Dev Random
41c3545e3b Merge pull request #34 from luke-jr/bugfix_noninteractive
Bugfix: Use noninteractive frontend for apt-get
2013-05-05 20:42:03 -07:00
Luke Dashjr
f43ff49fa7 Don't install package recommends implicitly (require yml to specify them) 2013-04-18 06:35:07 +00:00
Luke Dashjr
ffe46ca40b Bugfix: Use noninteractive frontend for apt-get 2013-04-18 06:34:16 +00:00
Luke Dashjr
46b75df3d3 Bugfix: Pass --update-head-ok to git fetch to avoid problems overwriting checked out branch 2013-04-18 06:31:10 +00:00
Luke Dashjr
9512784622 Bugfix: git fetch directly from the remote URL, rather than only setting a default the first time
- Fixes problem where the gitian URL varies for different branches of the same repository
- Explicitly fetching tags using + allows repository to overwrite existing tags (changed tag)
- Fetching branch heads to local heads correctly makes branch names available for commit option
- Fetching both branches and tags at the same time optimizes things slightly
2013-04-09 07:33:43 +00:00
devrandom
5746af15e0 setarch on guest for LXC
Some packages use uname -m, which is not set to i386 on LXC on a 64 bit
host.

fixes #24
2012-09-12 10:10:27 -07:00
Dev Random
93d443077e Merge pull request #22 from TheBlueMatt/master
Make using an invalid tag/commit an error
2012-09-06 22:02:11 -07:00
Matt Corallo
e27f2a7bce Make using an invalid tag/commit an error 2012-09-06 15:03:41 -04:00
devrandom
9c95b90ca3 Fix git-fetch and brctl doc 2012-08-03 15:02:36 -07:00
devrandom
e82c0b4760 Work around cron issue during make-base-vm 2012-08-03 15:00:26 -07:00
Matt Corallo
46a5199a24 Update for Ruby 1.9 2012-06-26 00:08:25 +02:00
devrandom
9b082abbdb Utility to canonicalize a zip file. 2012-06-15 22:35:46 -07:00
devrandom
74652f1881 Better transport from host to target and resolve commitish on host. 2012-05-08 18:01:32 -07:00
devrandom
8ad9e0dfaf Allow + in urls 2012-05-08 15:42:16 -07:00
devrandom
f9d155c3ac Fix loop device detection 2012-05-04 17:20:18 -07:00
devrandom
ba55f0d896 Use git-reset to ensure that git repo copy is not dirty 2012-05-01 10:42:37 -07:00
devrandom
0bc83c5f44 Use image file for lxc 2012-04-22 11:55:05 -07:00
devrandom
28bb421156 First pass lxc support 2012-04-22 10:26:39 -07:00
devrandom
cff169537c Add "optionals" array to descriptor/assertion YAML files - allow them to be missing on verify 2012-02-21 09:43:13 -08:00
devrandom
5a2986fd17 gitian-updater - remove dep on sha256sum binary 2011-10-10 20:21:00 -07:00
devrandom
10b40d5ad5 improve quietness flag 2011-07-16 18:27:23 -07:00
devrandom
d60397616d add -j and -m flags to control VM processors, make procs and VM memory 2011-07-15 09:41:20 -07:00
Matt Corallo
73d8868c8a Use server kernel for Hardy amd64.
Hardy (and probably others) doesnt have a linux-image-virtual for
amd64, thus we use the server kernel.
2011-07-03 15:31:21 +02:00
devrandom
758e78fc6e allow spaces in assert paths 2011-05-30 14:01:32 -07:00
devrandom
fee4a94e39 check if kvm is available and warn if not 2011-05-30 13:55:38 -07:00
devrandom
34c0c2c86b spurious cp 2011-05-27 18:58:52 -07:00