
Create the following output files: * $BUILD_HOME/LAST_BUILD_NUMBER * $BUILD_HOME/LAST_BUILD_TIMESTAMP * $PUBLISH_DIR/outputs/BUILD_INFO Story: 2010226 Task: 46362 Signed-off-by: Davlet Panech <davlet.panech@windriver.com> Change-Id: I6bcd2dbc21a11121afaab0aeb855eb3a46df19b5
95 lines
2.6 KiB
Bash
Executable File
95 lines
2.6 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
#
|
|
# Copyright (c) 2022 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
set -e
|
|
source $(dirname "$0")/lib/job_utils.sh
|
|
source $(dirname "$0")/lib/changelog_utils.sh
|
|
|
|
require_job_env BUILD_HOME
|
|
require_job_env FORCE_BUILD
|
|
require_job_env BUILD_DOCKER_IMAGES_DEV
|
|
require_job_env BUILD_DOCKER_IMAGES_STABLE
|
|
|
|
load_build_env
|
|
|
|
find_changelog_files() {
|
|
find "$BUILD_HOME" -mindepth 1 -maxdepth 1 \
|
|
-name 'CHANGELOG*' -o \
|
|
-name 'LAST_COMMITS*' -o \
|
|
-name 'NEED_BUILD' -o \
|
|
-name 'NO_BUILD_REQUIRED'
|
|
}
|
|
|
|
find_changelog_files | xargs -r rm -f
|
|
check_pipe_status
|
|
|
|
(
|
|
set +x
|
|
set -e
|
|
MY_WORKSPACE="$BUILD_HOME"
|
|
MY_REPO_ROOT_DIR="$BUILD_HOME/$REPO_ROOT_SUBDIR"
|
|
DEPLOY_DIR="$BUILD_OUTPUT_ROOT"
|
|
cd "$MY_REPO_ROOT_DIR"
|
|
if need_build ; then
|
|
create_standard_changelogs
|
|
fi
|
|
)
|
|
|
|
if [[ -f "$BUILD_HOME/NEED_BUILD" ]] ; then
|
|
|
|
rm -f SUCCESS FAIL FAILURE
|
|
|
|
# BUILD_OUTPUT_HOME
|
|
mkdir -p "$BUILD_OUTPUT_HOME"
|
|
# repo
|
|
mkdir -p "$BUILD_OUTPUT_HOME/$(dirname "$REPO_ROOT_SUBDIR")"
|
|
ln -sfn "$BUILD_HOME/$REPO_ROOT_SUBDIR" "$BUILD_OUTPUT_HOME/$REPO_ROOT_SUBDIR"
|
|
ln -sfn "$REPO_ROOT_SUBDIR" "$BUILD_OUTPUT_HOME/repo"
|
|
# workspace
|
|
mkdir -p "$BUILD_OUTPUT_HOME/$WORKSPACE_ROOT_SUBDIR"
|
|
ln -sfn "$WORKSPACE_ROOT_SUBDIR" "$BUILD_OUTPUT_HOME/workspace"
|
|
# mirrors
|
|
ln -sfn "$BUILD_HOME/mirrors" "$BUILD_OUTPUT_HOME/mirrors"
|
|
# aptly
|
|
ln -sfn "$BUILD_HOME/aptly" "$BUILD_OUTPUT_HOME/aptly"
|
|
# docker
|
|
ln -sfn "$BUILD_HOME/docker" "$BUILD_OUTPUT_HOME/docker"
|
|
# copy changelog etc files
|
|
find_changelog_files | xargs -r cp -v -t "$BUILD_OUTPUT_HOME"
|
|
check_pipe_status
|
|
|
|
# CONTEXT
|
|
(
|
|
set -e
|
|
cd "$REPO_ROOT"
|
|
(
|
|
set -e
|
|
echo .repo/manifests
|
|
repo forall -c 'echo $REPO_PATH'
|
|
) | while read gitdir ; do
|
|
rev="$(cd "$gitdir" && git rev-parse HEAD)" || exit 1
|
|
echo "(cd "$gitdir" && git checkout -f ${rev})"
|
|
done
|
|
check_pipe_status
|
|
) >"$BUILD_OUTPUT_HOME/CONTEXT"
|
|
check_pipe_status
|
|
|
|
# PUBLISH_DIR
|
|
mkdir -p "$PUBLISH_DIR"
|
|
mkdir -p "$PUBLISH_DIR/outputs"
|
|
cp "$BUILD_OUTPUT_HOME/CHANGELOG" "$PUBLISH_DIR/outputs/CHANGELOG.txt"
|
|
cp "$BUILD_OUTPUT_HOME/CONTEXT" "$PUBLISH_DIR/outputs/CONTEXT.sh"
|
|
cp "$WORKSPACE_ROOT/BUILD" "$PUBLISH_DIR/outputs/BUILD_INFO.txt"
|
|
cp "$WORKSPACE_ROOT/BUILD" "$PUBLISH_DIR/outputs/BUILD_INFO"
|
|
|
|
# LAST_BUILD_*
|
|
( source $WORKSPACE_ROOT/BUILD ; echo "$BUILD_NUMBER" >"$BUILD_HOME/LAST_BUILD_NUMBER" ; )
|
|
( source $WORKSPACE_ROOT/BUILD ; echo "$BUILD_ID" >"$BUILD_HOME/LAST_BUILD_TIMESTAMP" ; )
|
|
|
|
fi
|