Skip to content

Commit

Permalink
update some of the commands described in the README (#63)
Browse files Browse the repository at this point in the history
  • Loading branch information
cosmicexplorer authored and Stu Hood committed Apr 2, 2018
1 parent 2cdd795 commit b5d4fa6
Showing 1 changed file with 12 additions and 14 deletions.
26 changes: 12 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,9 @@ workflow
The general workflow for publishing new binaries is:

1. Create a script that will build the binary tool as reproducibly as possible, and place
it in a relevant directory under `build-support`. For example, for `thrift` `0.10.0` for `osx`,
you'd create the script at `build-support/bin/thrift/mac/10.13/0.10.0/build.sh`.
2. Symlink the script directory into all other relevant versions for both platforms. For OSX, this
will generally include "all modern OSX versions": ie,
`build-support/bin/thrift/mac/{10.13,10.12,10.11,10.10,etc}`.
the script in a relevant directory under `build-support`. For example, for `thrift` `0.10.0` for `mac`,
you'd create the script at `build-support/bin/thrift/mac/10.13/0.10.0/build.sh`. The script should place the built binary in the current directory upon success so that the reviewer doesn't have to find and move it after running the build script.
2. Symlink the script directory into all other relevant versions for both platforms (see [supported platforms](#supported-platforms)). Currently this only needs to be done for OSX. If `10.13` is the current OSX version, from within e.g. `build-support/bin/thrift/mac`, run `ln -s 10.13 10.12`, and so forth (e.g. `ln -s 10.13 10.11`) for all supported previous OSX versions.
3. Get the script and links reviewed. During review, the reviewer should confirm that the script
successfully produces a binary on their machine(s).
4. The script should then be merged _without_ the produced binaries.
Expand All @@ -37,21 +35,21 @@ building
linux
-----
Requires [docker](https://www.docker.com/)
*Requires [docker](https://www.docker.com/).*
1. Change directories to the root of this repository.
1. Change directories to the root of this repository, and run:
```
docker run -v "$(pwd):/pantsbuild-binaries" --rm -it --entrypoint /bin/bash pantsbuild/centos6:latest && cd /pantsbuild-binaries
docker run -v "$(pwd):/pantsbuild-binaries" -w '/pantsbuild-binaries' --rm -it pantsbuild/centos6:latest /bin/bash
```
...to pop yourself in a controlled image back at this repo's root
2. Run the build-\*.sh script corresponding to the binary you wish to build
3. Manually move the binary from the build tree to its home in build-support/...
...to pop yourself in a controlled image back at this repo's root.
2. Change into the directory containing the `build-*.sh` script corresponding to the binary you wish to build.
3. Run the `build-*.sh` script -- the binary should be location in the script's directory upon success.
osx
---
We have no controlled build environment solution like we do for linux, so you'll need to get your hands on an OSX machine. With that in hand:
1. Run the build-\*.sh script corresponding to the binary you wish to build
2. manually move the binary from the build tree to its home in build-support/...
1. Change into the directory containing the `build-*.sh` script corresponding to the binary you wish to build.
2. Run the `build-*.sh` script -- the binary should be location in the script's directory upon success.

0 comments on commit b5d4fa6

Please sign in to comment.