Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use a consistent template for Rust component Plans. #1142

Merged
merged 1 commit into from
Aug 11, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 42 additions & 33 deletions components/builder-api/habitat/plan.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,34 @@ pkg_name=hab-builder-api
pkg_origin=core
pkg_version=0.8.0
pkg_maintainer="Jamie Winsor <[email protected]>"
pkg_license=('apachev2')
pkg_license=('Apache-2.0')
pkg_source=nosuchfile.tar.gz
pkg_bin_dirs=(bin)
pkg_deps=(core/glibc core/openssl core/coreutils core/gcc-libs core/zeromq core/libsodium core/libarchive)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly
core/rust core/gcc core/pkg-config core/node core/phantomjs)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly core/rust core/gcc core/pkg-config core/node core/phantomjs)
pkg_expose=(9636)
srv_bin="bldr-api"
pkg_svc_run="bin/$srv_bin start -c ${pkg_svc_path}/config.toml"
bin="bldr-api"
pkg_svc_run="bin/$bin start -c ${pkg_svc_path}/config.toml"

do_build() {
pushd $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version > /dev/null
export HOME=$HAB_CACHE_SRC_PATH
npm install
for b in node_modules/.bin/*; do
echo $b
fix_interpreter $(readlink -f -n $b) core/coreutils bin/env
done
npm run postinstall
npm run dist
popd > /dev/null
do_prepare() {
rm -Rdf $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version
cp -ra $PLAN_CONTEXT/../../builder-web $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version
rm -Rdf $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version/node_modules

# Can be either `--release` or `--debug` to determine cargo build strategy
build_type="--debug"
build_line "Building artifacts with \`${build_type#--}' mode"

export rustc_target="x86_64-unknown-linux-gnu"
build_line "Setting rustc_target=$rustc_target"

# Used by the `build.rs` program to set the version of the binaries
export PLAN_VERSION="${pkg_version}/${pkg_release}"
build_line "Setting PLAN_VERSION=$PLAN_VERSION"

# Used by Cargo to fetch registries/crates/etc.
export SSL_CERT_FILE=$(pkg_path_for cacerts)/ssl/cert.pem
build_line "Setting SSL_CERT_FILE=$SSL_CERT_FILE"

export rustc_target="debug"
build_line "Setting rustc_target=$rustc_target"
# Used by Cargo to use a pristine, isolated directory for all compilation
export CARGO_TARGET_DIR="$HAB_CACHE_SRC_PATH/$pkg_dirname"
build_line "Setting CARGO_TARGET_DIR=$CARGO_TARGET_DIR"

export LIBARCHIVE_LIB_DIR=$(pkg_path_for libarchive)/lib
export LIBARCHIVE_INCLUDE_DIR=$(pkg_path_for libarchive)/include
Expand All @@ -42,20 +38,39 @@ do_build() {
export PROTOBUF_PREFIX=$(pkg_path_for protobuf)
export SODIUM_LIB_DIR=$(pkg_path_for libsodium)/lib
export LIBZMQ_PREFIX=$(pkg_path_for zeromq)
}

do_build() {
pushd $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version > /dev/null
export HOME=$HAB_CACHE_SRC_PATH
npm install
for b in node_modules/.bin/*; do
echo $b
fix_interpreter $(readlink -f -n $b) core/coreutils bin/env
done
npm run postinstall
npm run dist
popd > /dev/null

pushd $PLAN_CONTEXT/.. > /dev/null
cargo clean --target=$rustc_target --verbose
cargo build \
-j $(nproc) \
--verbose
cargo build ${build_type#--debug} --target=$rustc_target --verbose
popd > /dev/null
}

do_install() {
cp -vR $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version/dist $pkg_prefix/static
install -v -D $PLAN_CONTEXT/../../../target/$rustc_target/$srv_bin $pkg_prefix/bin/$srv_bin

install -v -D $CARGO_TARGET_DIR/$rustc_target/${build_type#--}/$bin \
$pkg_prefix/bin/$bin
}

do_strip() {
if [[ "$build_type" != "--debug" ]]; then
do_default_strip
fi
}

# Turn the remaining default phases into no-ops
do_download() {
return 0
}
Expand All @@ -67,9 +82,3 @@ do_verify() {
do_unpack() {
return 0
}

do_prepare() {
rm -Rdf $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version
cp -ra $PLAN_CONTEXT/../../builder-web $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version
rm -Rdf $HAB_CACHE_SRC_PATH/ui-$pkg_name-$pkg_version/node_modules
}
48 changes: 27 additions & 21 deletions components/builder-jobsrv/habitat/plan.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,30 @@ pkg_name=hab-builder-jobsrv
pkg_origin=core
pkg_version=0.8.0
pkg_maintainer="Jamie Winsor <[email protected]>"
pkg_license=('apachev2')
pkg_license=('Apache-2.0')
pkg_source=nosuchfile.tar.gz
pkg_bin_dirs=(bin)
pkg_deps=(core/glibc core/openssl core/gcc-libs core/zeromq core/libsodium core/libarchive)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly
core/rust core/gcc core/pkg-config)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly core/rust core/gcc core/pkg-config)
pkg_expose=(5566 5567)
srv_bin="bldr-job-srv"
pkg_svc_run="bin/$srv_bin start -c ${pkg_svc_path}/config.toml"
bin="bldr-job-srv"
pkg_svc_run="bin/$bin start -c ${pkg_svc_path}/config.toml"

do_prepare() {
# Can be either `--release` or `--debug` to determine cargo build strategy
build_type="--debug"
build_line "Building artifacts with \`${build_type#--}' mode"

export rustc_target="x86_64-unknown-linux-gnu"
build_line "Setting rustc_target=$rustc_target"

do_build() {
# Used by the `build.rs` program to set the version of the binaries
export PLAN_VERSION="${pkg_version}/${pkg_release}"
build_line "Setting PLAN_VERSION=$PLAN_VERSION"

# Used by Cargo to fetch registries/crates/etc.
export SSL_CERT_FILE=$(pkg_path_for cacerts)/ssl/cert.pem
build_line "Setting SSL_CERT_FILE=$SSL_CERT_FILE"

export rustc_target="debug"
build_line "Setting rustc_target=$rustc_target"
# Used by Cargo to use a pristine, isolated directory for all compilation
export CARGO_TARGET_DIR="$HAB_CACHE_SRC_PATH/$pkg_dirname"
build_line "Setting CARGO_TARGET_DIR=$CARGO_TARGET_DIR"

export LIBARCHIVE_LIB_DIR=$(pkg_path_for libarchive)/lib
export LIBARCHIVE_INCLUDE_DIR=$(pkg_path_for libarchive)/include
Expand All @@ -31,19 +34,26 @@ do_build() {
export PROTOBUF_PREFIX=$(pkg_path_for protobuf)
export SODIUM_LIB_DIR=$(pkg_path_for libsodium)/lib
export LIBZMQ_PREFIX=$(pkg_path_for zeromq)
}

do_build() {
pushd $PLAN_CONTEXT/.. > /dev/null
cargo clean --target=$rustc_target --verbose
cargo build \
-j $(nproc) \
--verbose
cargo build ${build_type#--debug} --target=$rustc_target --verbose
popd > /dev/null
}

do_install() {
install -v -D $PLAN_CONTEXT/../../../target/$rustc_target/$srv_bin $pkg_prefix/bin/$srv_bin
install -v -D $CARGO_TARGET_DIR/$rustc_target/${build_type#--}/$bin \
$pkg_prefix/bin/$bin
}

do_strip() {
if [[ "$build_type" != "--debug" ]]; then
do_default_strip
fi
}

# Turn the remaining default phases into no-ops
do_download() {
return 0
}
Expand All @@ -55,7 +65,3 @@ do_verify() {
do_unpack() {
return 0
}

do_prepare() {
return 0
}
48 changes: 27 additions & 21 deletions components/builder-router/habitat/plan.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,30 @@ pkg_name=hab-builder-router
pkg_origin=core
pkg_version=0.8.0
pkg_maintainer="Jamie Winsor <[email protected]>"
pkg_license=('apachev2')
pkg_license=('Apache-2.0')
pkg_source=nosuchfile.tar.gz
pkg_bin_dirs=(bin)
pkg_deps=(core/glibc core/openssl core/gcc-libs core/zeromq core/libsodium core/libarchive)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly
core/rust core/gcc core/pkg-config)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly core/rust core/gcc core/pkg-config)
pkg_expose=(5562 5563)
srv_bin="bldr-router"
pkg_svc_run="bin/$srv_bin start -c ${pkg_svc_path}/config.toml"
bin="bldr-router"
pkg_svc_run="bin/$bin start -c ${pkg_svc_path}/config.toml"

do_prepare() {
# Can be either `--release` or `--debug` to determine cargo build strategy
build_type="--debug"
build_line "Building artifacts with \`${build_type#--}' mode"

export rustc_target="x86_64-unknown-linux-gnu"
build_line "Setting rustc_target=$rustc_target"

do_build() {
# Used by the `build.rs` program to set the version of the binaries
export PLAN_VERSION="${pkg_version}/${pkg_release}"
build_line "Setting PLAN_VERSION=$PLAN_VERSION"

# Used by Cargo to fetch registries/crates/etc.
export SSL_CERT_FILE=$(pkg_path_for cacerts)/ssl/cert.pem
build_line "Setting SSL_CERT_FILE=$SSL_CERT_FILE"

export rustc_target="debug"
build_line "Setting rustc_target=$rustc_target"
# Used by Cargo to use a pristine, isolated directory for all compilation
export CARGO_TARGET_DIR="$HAB_CACHE_SRC_PATH/$pkg_dirname"
build_line "Setting CARGO_TARGET_DIR=$CARGO_TARGET_DIR"

export LIBARCHIVE_LIB_DIR=$(pkg_path_for libarchive)/lib
export LIBARCHIVE_INCLUDE_DIR=$(pkg_path_for libarchive)/include
Expand All @@ -31,19 +34,26 @@ do_build() {
export PROTOBUF_PREFIX=$(pkg_path_for protobuf)
export SODIUM_LIB_DIR=$(pkg_path_for libsodium)/lib
export LIBZMQ_PREFIX=$(pkg_path_for zeromq)
}

do_build() {
pushd $PLAN_CONTEXT/.. > /dev/null
cargo clean --target=$rustc_target --verbose
cargo build \
-j $(nproc) \
--verbose
cargo build ${build_type#--debug} --target=$rustc_target --verbose
popd > /dev/null
}

do_install() {
install -v -D $PLAN_CONTEXT/../../../target/$rustc_target/$srv_bin $pkg_prefix/bin/$srv_bin
install -v -D $CARGO_TARGET_DIR/$rustc_target/${build_type#--}/$bin \
$pkg_prefix/bin/$bin
}

do_strip() {
if [[ "$build_type" != "--debug" ]]; then
do_default_strip
fi
}

# Turn the remaining default phases into no-ops
do_download() {
return 0
}
Expand All @@ -55,7 +65,3 @@ do_verify() {
do_unpack() {
return 0
}

do_prepare() {
return 0
}
48 changes: 27 additions & 21 deletions components/builder-sessionsrv/habitat/plan.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,29 @@ pkg_name=hab-builder-sessionsrv
pkg_origin=core
pkg_version=0.8.0
pkg_maintainer="Jamie Winsor <[email protected]>"
pkg_license=('apachev2')
pkg_license=('Apache-2.0')
pkg_source=nosuchfile.tar.gz
pkg_bin_dirs=(bin)
pkg_deps=(core/glibc core/openssl core/gcc-libs core/zeromq core/libsodium core/libarchive)
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly
core/rust core/gcc core/pkg-config)
srv_bin="bldr-session-srv"
pkg_svc_run="bin/$srv_bin start -c ${pkg_svc_path}/config.toml"
pkg_build_deps=(core/protobuf core/protobuf-rust core/coreutils core/cacerts core/cargo-nightly core/rust core/gcc core/pkg-config)
bin="bldr-session-srv"
pkg_svc_run="bin/$bin start -c ${pkg_svc_path}/config.toml"

do_prepare() {
# Can be either `--release` or `--debug` to determine cargo build strategy
build_type="--debug"
build_line "Building artifacts with \`${build_type#--}' mode"

export rustc_target="x86_64-unknown-linux-gnu"
build_line "Setting rustc_target=$rustc_target"

do_build() {
# Used by the `build.rs` program to set the version of the binaries
export PLAN_VERSION="${pkg_version}/${pkg_release}"
build_line "Setting PLAN_VERSION=$PLAN_VERSION"

# Used by Cargo to fetch registries/crates/etc.
export SSL_CERT_FILE=$(pkg_path_for cacerts)/ssl/cert.pem
build_line "Setting SSL_CERT_FILE=$SSL_CERT_FILE"

export rustc_target="debug"
build_line "Setting rustc_target=$rustc_target"
# Used by Cargo to use a pristine, isolated directory for all compilation
export CARGO_TARGET_DIR="$HAB_CACHE_SRC_PATH/$pkg_dirname"
build_line "Setting CARGO_TARGET_DIR=$CARGO_TARGET_DIR"

export LIBARCHIVE_LIB_DIR=$(pkg_path_for libarchive)/lib
export LIBARCHIVE_INCLUDE_DIR=$(pkg_path_for libarchive)/include
Expand All @@ -30,19 +33,26 @@ do_build() {
export PROTOBUF_PREFIX=$(pkg_path_for protobuf)
export SODIUM_LIB_DIR=$(pkg_path_for libsodium)/lib
export LIBZMQ_PREFIX=$(pkg_path_for zeromq)
}

do_build() {
pushd $PLAN_CONTEXT/.. > /dev/null
cargo clean --target=$rustc_target --verbose
cargo build \
-j $(nproc) \
--verbose
cargo build ${build_type#--debug} --target=$rustc_target --verbose
popd > /dev/null
}

do_install() {
install -v -D $PLAN_CONTEXT/../../../target/$rustc_target/$srv_bin $pkg_prefix/bin/$srv_bin
install -v -D $CARGO_TARGET_DIR/$rustc_target/${build_type#--}/$bin \
$pkg_prefix/bin/$bin
}

do_strip() {
if [[ "$build_type" != "--debug" ]]; then
do_default_strip
fi
}

# Turn the remaining default phases into no-ops
do_download() {
return 0
}
Expand All @@ -54,7 +64,3 @@ do_verify() {
do_unpack() {
return 0
}

do_prepare() {
return 0
}
Loading