This is an automated email from the ASF dual-hosted git repository.
nicknezis pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-heron.git
The following commit(s) were added to refs/heads/master by this push:
new 98a084a Add documents for setting up a docker based development
environment (#3475)
98a084a is described below
commit 98a084a03653634636f55e2d102b8dda64614aa3
Author: Ning Wang <[email protected]>
AuthorDate: Mon Mar 2 17:51:26 2020 -0800
Add documents for setting up a docker based development environment (#3475)
---
website2/docs/compiling-docker.md | 37 ++++++++++++++++++++--
website2/docs/compiling-linux.md | 8 ++---
website2/docs/compiling-overview.md | 2 +-
.../compiling-overview.md | 9 +++---
4 files changed, 45 insertions(+), 11 deletions(-)
diff --git a/website2/docs/compiling-docker.md
b/website2/docs/compiling-docker.md
index c33bacd..f47ab7d 100644
--- a/website2/docs/compiling-docker.md
+++ b/website2/docs/compiling-docker.md
@@ -24,7 +24,7 @@ For developing Heron, you will need to compile it for the
environment that you
want to use it in. If you'd like to use Docker to create that build
environment,
Heron provides a convenient script to make that process easier.
-Currently, only Ubuntu 14.04, Ubuntu 15.10, and CentOS 7 are supported, but if
you
+Currently, only Ubuntu 14.04, Ubuntu 18.04, and CentOS 7 are supported, but if
you
need another platform there are instructions for adding new ones
[below](#contributing-new-environments).
@@ -60,7 +60,7 @@ Running the script by itself will display usage information:
```
Usage: docker/build-artifacts.sh <platform> <version_string> [source-tarball]
<output-directory>
-Platforms Supported: darwin, ubuntu14.04, ubuntu15.10, centos7
+Platforms Supported: darwin, ubuntu14.04, ubuntu18.04, centos7
Example:
./build-artifacts.sh ubuntu14.04 0.12.0 .
@@ -113,6 +113,39 @@ heron-layer-0.12.0-ubuntu14.04.tar
heron-tools-0.12.0-ubuntu14.04.tar.gz
```
+## Set Up A Docker Based Development Environment
+
+In case you want to have a development environment instead of making a full
build,
+Heron provides two helper scripts for you. It could be convenient if you don't
want
+to set up all the libraries and tools on your machine directly.
+
+The following commands are to create a new docker image with a development
environment
+and start the container based on it:
+```bash
+$ cd /path/to/heron/repo
+$ docker/scripts/dev-env-create.sh heron-dev
+```
+
+After the commands, a new docker container is started with all the libraries
and tools
+installed. The operation system is Ubuntu 18.04 by default. Now you can build
Heron
+like:
+```bash
+\# bazel build --config=ubuntu scripts/packages:binpkgs
+\# bazel build --config=ubuntu scripts/packages:tarpkgs
+```
+
+The current folder is mapped to the '/heron' directory in the container and
any changes
+you make on the host machine will be reflected in the container. Note that
when you exit
+the container and re-run the script, a new container will be started with a
fresh new
+environment.
+
+When a development environment container is running, you can use the follow
script
+to start a new terminal in the container.
+```bash
+$ cd /path/to/heron/repo
+$ docker/scripts/dev-env-run.sh heron-dev
+```
+
## Contributing New Environments
You'll notice that there are multiple
diff --git a/website2/docs/compiling-linux.md b/website2/docs/compiling-linux.md
index e40cb03..31dc5b5 100644
--- a/website2/docs/compiling-linux.md
+++ b/website2/docs/compiling-linux.md
@@ -22,10 +22,10 @@ sidebar_label: Compiling on Linux
Heron can currently be built on the following Linux platforms:
-* [Ubuntu 14.04](#building-on-ubuntu-18.04)
+* [Ubuntu 18.04](#building-on-ubuntu-18.04)
* [CentOS 7](#building-on-centos-7)
-## Building on Ubuntu 14.04
+## Building on Ubuntu 18.04
To build Heron on a fresh Ubuntu 18.04 installation:
@@ -96,13 +96,13 @@ $ ./bazel_configure.py
### Step 10 --- Build the project
```bash
-$ bazel build --config=ubuntu heron/...
+$ bazel build --config=ubuntu heron/...
```
### Step 11 --- Build the packages
```bash
-$ bazel build --config=ubuntu scripts/packages:binpkgs
+$ bazel build --config=ubuntu scripts/packages:binpkgs
$ bazel build --config=ubuntu scripts/packages:tarpkgs
```
diff --git a/website2/docs/compiling-overview.md
b/website2/docs/compiling-overview.md
index 9445c75..cafaef6 100644
--- a/website2/docs/compiling-overview.md
+++ b/website2/docs/compiling-overview.md
@@ -27,7 +27,7 @@ Heron build system. For step-by-step build instructions for a
specific platform,
the following guides are available:
* [Building on Linux Platforms](compiling-linux)
-* [Building on Mac OS X](compiling-mac)
+* [Building on Mac OS X](compiling-osx)
Heron can be built either [in its entirety](#building-all-components), as
[individual components](#building-specific-components).
diff --git
a/website2/website/versioned_docs/version-0.20.0-incubating/compiling-overview.md
b/website2/website/versioned_docs/version-0.20.0-incubating/compiling-overview.md
index 9a47079..4115ea6 100644
---
a/website2/website/versioned_docs/version-0.20.0-incubating/compiling-overview.md
+++
b/website2/website/versioned_docs/version-0.20.0-incubating/compiling-overview.md
@@ -22,13 +22,14 @@ original_id: compiling-overview
-->
Heron is currently available for [Mac OS X 10.14](compiling-osx),
-[Ubuntu 14.04](compiling-linux), and [CentOS
+[Ubuntu 18.04](compiling-linux), and [CentOS
7](compiling-linux#building-on-centos-7). This guide describes the basics of
the
Heron build system. For step-by-step build instructions for a specific
platform,
the following guides are available:
* [Building on Linux Platforms](compiling-linux)
-* [Building on Mac OS X](compiling-mac)
+* [Building on Mac OS X](compiling-osx)
+* [Building in Docker Container](compiling-docker)
Heron can be built either [in its entirety](#building-all-components), as
[individual components](#building-specific-components).
@@ -93,8 +94,8 @@ OS-specific configuration using the `--config` flag. The
following OS values
are supported:
* `darwin` (Mac OS X)
-* `ubuntu` (Ubuntu 14.04)
-* `centos5` (CentOS 5)
+* `ubuntu` (Ubuntu)
+* `centos` (CentOS)
For example, on Mac OS X (`darwin`), the following command will build all
packages: