Tianon Gravi
04fb217d5a
Ditch the vendor/ directory
...
Go modules are pretty good at finding the right source, so let's just trust them to do so instead of keeping our own local copy.
2020-05-06 11:24:14 -07:00
Tianon Gravi
169d5a8913
Fix the ability to use "bashbrew.sh" from any working directory
2020-04-24 13:53:45 -07:00
Tianon Gravi
61ca39fc4f
Add explicit binary version and resurrect "bashbrew.sh" for helping users compile from source
2020-04-24 13:26:39 -07:00
Tianon Gravi
5425126232
Move Go code to root of the repo
2020-04-24 11:48:08 -07:00
Tianon Gravi
73d98151b5
First attempt to fix Travis (force Go modules "on")
2019-03-28 21:39:21 -07:00
Tianon Gravi
d5559299cf
Port bashbrew to use Go modules instead of GB
...
Something in here also fixes the "missing build output on error" bug we've been seeing on Jenkins (see https://doi-janky.infosiftr.net/job/multiarch/job/arm32v7/job/rabbitmq/184/console for example).
2019-03-28 15:45:12 -07:00
Tianon Gravi
54b895bfb1
Convert "bashbrew" to Go and add a new RFC 2822 manifest file format
...
To satisfy both Windows (https://github.com/docker-library/golang/pull/92 ) building and "non-AUFS" (https://github.com/docker-library/official-images/pull/1612 , https://github.com/docker-library/official-images/pull/1537 ) building ("build machine" constraints, if you will), an update to the manifest file format is necessary.
To this end, we're introducing a new format which uses RFC 2822, allowing much more expressivity (especially for additional metadata like `Constraints`) and readability. The new tool also includes backwards compatibility for the older line-based manifest file format, but its usage is discouraged (and we will be slowly converting at least the `docker-library` repos to use the new format in their `generate-stackbrew-library.sh` scripts).
One of the tangential benefits of this conversion is a massive increase in the speed of the tool (`bashbrew list --all` on a very fast system with an SSD and a flaming hot cache used to take ~5s and now takes ~0.012s).
2016-06-03 10:23:09 -07:00
Tianon Gravi
14f9a93796
Update bashbrew to fail more directly on missing library files
...
This works around the busybox "readlink" implementation being slightly different from GNU's which would cause failures without any error output.
2015-11-11 09:42:33 -08:00
Tianon Gravi
6621da8aac
Add a simple initial "bashbrew" Dockerfile
2015-10-15 16:38:20 -07:00
Tianon Gravi
8e5d85dc7e
Fix "$gitDir" being allowed to be the empty string 👼
2015-04-22 11:41:40 -06:00
Tianon Gravi
fbe0b0e47f
Add "retries" logic for build and push (since sometimes it just needs a little kick and everything works fine)
2015-04-22 11:11:16 -06:00
Tianon Gravi
5aabe0b5be
Fix a few (but not all) too-complex expressions that won't fail properly with just "set -e"
2015-04-21 22:45:30 -06:00
Joe Ferguson
2f0fbee231
Add uniq option to bashbrew
2015-03-27 16:42:00 -07:00
Tianon Gravi
22a64a3e89
Delete empty log files
...
This prevents "bashbrew/logs/latest/list-.....".
2015-03-04 17:09:01 -07:00
Tianon Gravi
24590577c9
Fix some minor issues in bashbrew.sh
...
Double quotes and indented heredocs!
2015-02-13 17:14:12 -07:00
Tianon Gravi
fafcbfa3f5
Move MAINTAINERS to the top-level
...
This also removes the special-case inside bashbrew to ignore `library/MAINTAINERS`.
2015-02-12 16:25:27 -07:00
Tianon Gravi
d2954894e7
Add a trap for Ctrl+C
2015-01-21 11:27:22 -07:00
Peter Salvatore
e959cb42f1
change default --namespaces to '_'
2015-01-16 21:20:28 -05:00
Tianon Gravi
a8719d577b
Merge pull request #395 from infosiftr/fix-push-logs
...
Fix log append in push logic
2015-01-13 15:48:07 -07:00
Tianon Gravi
f44eab6388
Add new "bashbrew list" subcommand
...
This allows us to manipulate/use the repo lists from bashbrew directly in fun ways.
For example, `bashbrew list --namespaces='_' --all | xargs -n1 docker pull`.
2015-01-13 15:35:35 -07:00
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
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
ecdc95f4c9
Change a few minor nits in bashbrew.sh
2014-12-17 12:44: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