mirror of
https://github.com/rancher/os.git
synced 2025-06-21 12:37:04 +00:00
47 lines
1.4 KiB
Bash
Executable File
47 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
set -ex
|
|
|
|
cd $(dirname $0)/..
|
|
|
|
source scripts/build-common
|
|
source scripts/version
|
|
ARTIFACTS=${ARTIFACTS:?"ARTIFACTS not set"}
|
|
VERSION=${VERSION:?"VERSION not set"}
|
|
BUILD=${BUILD:?"BUILD not set"}
|
|
DIST=${DIST:?"DIST not set"}
|
|
|
|
if [ -x "$(which wrapdocker)" ] && ! docker info >/dev/null 2>&1; then
|
|
wrapdocker
|
|
fi
|
|
|
|
CONTAINER_INITRDBASE=$(docker create rancher/os-initrdbase:${VERSION})
|
|
cleanup_initrdbase() {
|
|
docker rm -v ${CONTAINER_INITRDBASE}
|
|
}
|
|
trap cleanup_initrdbase EXIT
|
|
docker cp ${CONTAINER_INITRDBASE}:/initrd ${BUILD} # copies files to ${BUILD}/initrd
|
|
|
|
INITRD_DIR=${BUILD}/initrd
|
|
|
|
|
|
mkdir -p ${DIST}/artifacts
|
|
|
|
CONTAINER_KERNEL=$(docker create rancher/os-kernel:${VERSION})
|
|
cleanup_kernel() {
|
|
docker rm -v ${CONTAINER_KERNEL}
|
|
}
|
|
trap cleanup_kernel EXIT
|
|
docker cp ${CONTAINER_KERNEL}:/kernel ${BUILD} # copies files to ${BUILD}/kernel
|
|
mv ${BUILD}/kernel/vmlinuz ${DIST}/artifacts/ #kernel
|
|
|
|
|
|
cp -f ${ARTIFACTS}/docker* ${INITRD_DIR}/docker #initrd2-docker: /docker
|
|
chmod +x ${INITRD_DIR}/docker #initrd2-docker: /docker
|
|
|
|
ln -sf bin/rancheros ./ros
|
|
|
|
for i in $(./ros c images -i os-config.yml) rancher/os-autoformat:${VERSION}; do
|
|
docker pull ${i}
|
|
done
|
|
docker save $(./ros c images -i os-config.yml) rancher/os-autoformat:${VERSION} > ${INITRD_DIR}/images.tar #initrd2-images: /images.tar
|