Skip to content

Commit 844c598

Browse files
committed
add instructions for creating bottles
1 parent 6f0dbdc commit 844c598

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

BOTTLES.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Bottles
2+
3+
General instructions for writing formula: https://docs.brew.sh/Formula-Cookbook
4+
5+
## GitHub
6+
7+
GitHub allows attaching up to 2GB to a release, so we can use this as the host
8+
for the bottles.
9+
10+
Example for llvm-10 release
11+
12+
* Commit llvm-10.rb and add a new tag v10.0.0
13+
14+
* brew install --build-bottle [--debug --verbose] ./Formula/llvm-10.rb
15+
16+
* brew bottle --json --force-core-tap --root-url https://github.com/llvm-hs/homebrew-llvm/releases/download/v10.0.0 ./Formula/llvm-10.rb
17+
18+
* edit llvm-10.rb to add the bottle information and commit
19+
20+
* The bottle likely has an incorrect name; if it contains a double-dash it
21+
should be changed to a single dash:
22+
llvm-10--10.0.0.mojave.bottle.tar.gz ➜ llvm-10-10.0.0.mojave.bottle.tar.gz
23+
24+
* Go to https://github.com/llvm-hs/homebrew-llvm/releases and edit tag v10.0.0.
25+
Attach the binary .bottle
26+
27+
28+
## Bintray
29+
30+
Bintray is the default host used by Homebrew, but limits binary files to 250MB,
31+
which is not large enough for us.
32+
33+
https://jonathanchang.org/blog/maintain-your-own-homebrew-repository-with-binary-bottles/
34+
35+
Set environment variables `HOMEBREW_BINTRAY_USER` and `HOMEBREW_BINTRAY_KEY`
36+
(from bintray.com -> Edit Profile -> API Key)
37+
38+
> brew test-bot --root-url=https://bintray.com/tmcdonell/bottles-llvm --bintray-org=BINTRAY_USER --tap=llvm-hs/llvm llvm-hs/homebrew-llvm/llvm-9
39+
> brew test-bot --ci-upload --git-name=USERNAME --git-email=EMAIL --bintray-org=BINTRAY_USER --root-url=https://bintray.com/tmcdonell/bottles-llvm
40+
41+
Go to the package on bintray.com and hit "Publish".
42+

0 commit comments

Comments
 (0)