Commit Graph

54 Commits

Author SHA1 Message Date
Tianon Gravi 760bc6bd72 Fix log append in push logic
`&>` vs `&>>`
2015-01-13 15:32:32 -07:00
Tianon Gravi 166a52934b Adjust bashbrew to fail on dups 2014-12-31 23:21:13 -07:00
Tianon Gravi f69ffa8e4f Update "docker tag" usage to use "-f" 2014-12-24 10:08:37 -07:00
Tianon Gravi 1a0f624c3e Add explicit error handling in more places 2014-12-23 15:59:29 -07:00
yosifkit 2d4e8fea07 Merge pull request #359 from infosiftr/update-travis
Travis Needs Love Too (TNLT)
2014-12-22 15:46:41 -08:00
Tianon Gravi e127893b7f Move subcommand checking down so we can "bashbrew --help" without errors 2014-12-19 16:57:24 -07:00
Tianon Gravi be008eaf77 Use $(basename $0) in usage instead of raw $0 so it's prettier 2014-12-19 16:57:05 -07:00
Tianon Gravi 036c87fee2 Travis Needs Love Too (TNLT) 2014-12-19 16:51:47 -07:00
Tianon Gravi ecdc95f4c9 Change a few minor nits in bashbrew.sh 2014-12-17 12:44:20 -07:00
Tianon Gravi eb530e9b79 Add new deprecated.sh that wraps both build.sh and push.sh with a nice warning 2014-12-16 17:54:20 -07:00
Joe Ferguson c133784c6d Fix usage ordering, logs are now common to build and push 2014-12-16 13:47:38 -08:00
Joe Ferguson d96df73185 Feed /dev/null to Username prompt to fix hang when not logged in 2014-12-16 13:29:08 -08:00
Joe Ferguson 9318c9a41f Finish combining to one script, make nifty helpers 2014-12-16 13:17:06 -08:00
Joe Ferguson 0c8a366888 Combining build.sh with push.sh 2014-12-15 15:50:39 -08:00
Tianon Gravi af7db8287f Fix Travis "bashbrew/" change detection 2014-12-11 14:26:40 -07:00
Tianon Gravi 2e52e156bf Add new Travis stuff so PRs only test the bits that have changed 2014-12-09 14:36:14 -07:00
Tianon Gravi 3aa6712bf5 Add support for "--docker" for custom binary use 2014-10-14 11:59:06 -06:00
Tianon Gravi 9303e7dc52 Clean up the clone/fetch output
This makes it match the other output we've got:

```console
$ ./bashbrew/build.sh --no-build --all
Fetching java (git://github.com/docker-library/java) ...
Fetching node (git://github.com/docker-library/node) ...
Processing buildpack-deps:jessie ...
- deferred; FROM debian:jessie
Processing buildpack-deps:latest ...
- deferred; FROM debian:jessie
Processing buildpack-deps:wheezy ...
- deferred; FROM debian:wheezy
Processing busybox:buildroot-2013.08.1 ...
Processing busybox:buildroot-2014.02 ...
Processing busybox:latest ...
Processing busybox:ubuntu-12.04 ...
Processing busybox:ubuntu-14.04 ...
Processing centos:latest ...
Processing centos:centos7 ...
Processing centos:centos6 ...
Processing centos:centos5 ...
Processing cirros:latest ...
Processing cirros:0.3.0 ...
Processing clojure:latest ...
- deferred; FROM java:7
Processing clojure:lein-2.5.0 ...
- deferred; FROM java:7
Processing clojure:lein-2.4.3 ...
- deferred; FROM java:7
Processing crux:latest ...
Processing crux:3.0 ...
Processing debian:jessie ...
Processing debian:oldstable ...
Processing debian:sid ...
....
```
2014-10-13 15:48:00 -06:00
yosifkit 83e3ea23f1 Merge pull request #237 from infosiftr/readme
Documentation for bashbrew
2014-10-03 15:17:39 -06:00
Joe Ferguson 1d5fd1a653 Documentation for bashbrew (with fixes in script usage) 2014-10-03 15:14:27 -06:00
Tianon Gravi dc633d25ba Fix "git fetch" lines to work in "detached head" state 2014-10-03 11:45:34 -06:00
Tianon Gravi 824cb8004f Use "git show" to get the Dockerfile for deferring based on FROM
This gives roughly a full 2x speedup when doing `./build.sh --no-build --all`.
2014-10-03 10:17:20 -06:00
yosifkit 9756c6a8e0 Merge pull request #234 from infosiftr/minor-script-tweaks
Add a few minor tweaks to bashbrew for consistency
2014-10-02 11:48:56 -06:00
Tianon Gravi 16b9b90fd6 Adjust push.sh to continue on push failure 2014-10-02 09:48:09 -06:00
Tianon Gravi 39de355423 Add a few minor tweaks to bashbrew for consistency
Also, run through a `--no-push` run of `push.sh` in Travis, and give Travis an explicit language so we don't get funny Ruby-related nonsense in our build logs.
2014-10-01 21:39:18 -06:00
Tianon Gravi 15cbbcd21d Update style to match the rest of the script 2014-10-01 18:36:13 -06:00
Joe Ferguson 401cfb2905 Fail in library files that have whitespace after the dir 2014-10-01 17:51:56 -06:00
Tianon Gravi dc380d7a82 Fix bug where lowercase FROM instruction was ignored
I forgot that Dockerfile instructions are case-insensitive, especially because lowercase looks so silly, but this makes "hipache" build when it should be deferred to only build after "ubuntu".

Also, awk's default is to split on any number of whitespace-chars, so no need for the explicit "-F" there.
2014-10-01 16:12:42 -06:00
Tianon Gravi ad38f3333a Add support for direct building of a URL
This allows for things like: (to build test a PR branch directly)
```console
$ ./build.sh https://raw.githubusercontent.com/infosiftr/stackbrew/redis/library/redis
```

Or: (to build test just one tag of a PR branch)
```console
$ ./build.sh https://raw.githubusercontent.com/infosiftr/stackbrew/redis/library/redis:2.6
```
2014-10-01 11:29:30 -06:00
Tianon Gravi ea51941ed4 Use a more resilient "checkout ref" one-liner 2014-09-30 16:39:12 -06:00
Tianon Gravi 0ae24dd7e2 Update "failure" language to be easier to Ctrl+F for in the Travis logs 2014-09-30 16:39:12 -06:00
Tianon Gravi 7a7c6adf20 Add better issue handling so we can track and capture exceptional circumstances 2014-09-30 16:39:12 -06:00
Tianon Gravi 64cede0941 Update verbiage to be more consistent and note when builds fail instead of just stopping 2014-09-30 16:39:12 -06:00
Tianon Gravi 36a62ca339 Update git-set-mtimes script to also set directory timestamps and to use the "author date" instead of the "committer date" since that's what's shown in a bare "git log" (so it ends up being less surprising)
This obviously deprecates any need for the old "git-set-dir-times" script, so it's also removed here.
2014-09-30 16:39:12 -06:00
Tianon Gravi 5a905c2eba Replace the complicated `git-set-file-times` from the Git wiki with a much simpler and more correct bash script 2014-09-30 16:39:12 -06:00
Tianon Gravi a723e48011 Add more shiny logging 2014-09-30 16:39:12 -06:00
Joe Ferguson a1a99f9ee2 migrate the extra options from build.sh 2014-09-30 16:39:12 -06:00
Tianon Gravi 6440dd6fae Disable "gc.auto" for all our cloned repos to help ensure dangling commits don't get reclaimed (since we might need them later) 2014-09-30 16:39:12 -06:00
Tianon Gravi 845488129d Tweak build/clone logic to always do a checkout, and to bail gracefully when a commit doesn't exist (skipping the relevant repoTag build) 2014-09-30 16:39:12 -06:00
Tianon Gravi 4b6f49153d Add magic support for direct operation on files
Things that work now: (in any combinations)
- `./build.sh debian`
- `./build.sh debian:sid`
- `./build.sh ../library/debian`
- `./build.sh ../library/debian:sid`
2014-09-30 16:39:12 -06:00
Tianon Gravi 143ac14d2a Update "git fetch" with intelligence about when to go fetch (ie, if we don't have the ref specified) 2014-09-30 16:39:12 -06:00
Tianon Gravi 9a4bbd34b2 Use magic extglob bash syntax instead of explicitly ignoring MAINTAINERS in our loop 2014-09-30 16:39:12 -06:00
Tianon Gravi 2f9fd1c571 Parameterize library, src, logs, and namespaces 2014-09-30 16:39:12 -06:00
Joe Ferguson 02592be363 getopt added for much beauty 2014-09-30 16:39:12 -06:00
Tianon Gravi 3b563a5ffc Update "git-set-dir-times" to use "--no-dereference" so my fun mkimage.sh symlink in my Debian repo doesn't break on not-my-machine :D 2014-09-30 16:39:12 -06:00
Tianon Gravi 1cd92b1d66 Add "git-set-dir-times" and "git-set-file-times" (whoops) 2014-09-30 16:39:12 -06:00
Joe Ferguson 540129c13e script for pushing library images 2014-09-30 16:39:12 -06:00
Joe Ferguson 511aefe622 warn users about unknown 'repo:tag' combinations 2014-09-30 16:39:12 -06:00
Joe Ferguson d472fdbef5 add usage, only build all with `--all` argument 2014-09-30 16:39:12 -06:00
Tianon Gravi e3227f3866 Add actual building and some handy logging 2014-09-30 16:39:12 -06:00