jenkins-pipelines/scripts/publish-docker-images.sh

46 lines
1.0 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
require_job_env BUILD_HOME
require_job_env BUILD_STREAM
require_job_env TIMESTAMP
load_build_env
src_dir="$STX_BUILD_HOME/workspace/std/build-images"
dst_dir="$PUBLISH_DIR/outputs/docker-images"
if [[ ! -d "$src_dir" ]] ; then
bail "$src_dir doesn't exist, exiting"
fi
mkdir -p "$dst_dir"
declare -a find_args
or=
for os in $(echo $DOCKER_OS_LIST | sed 's/,/ /g') ; do
find_args+=(
$or
"-name" "images-$os-$BUILD_STREAM-versioned.lst" -o
"-name" "images-$os-$BUILD_STREAM-latest.lst"
)
or="-or"
done
if [[ ${#find_args[@]} -gt 0 ]] && [[ -d "$src_dir" ]] ; then
notice "publishing $DOCKER_BASE_OS $BUILD_STREAM docker image lists"
for src in $(find "$src_dir" -maxdepth 1 -type f \( "${find_args[@]}" \) ) ; do
if $DRY_RUN ; then
info "$src => $dst_dir/"
else
cp -v "$src" "$dst_dir/"
fi
done
fi