forked from espos/liveiso
refactor: enhance cleanup process in Jenkinsfile and build-liveiso.sh
This commit is contained in:
Vendored
+30
@@ -3,14 +3,32 @@ pipeline {
|
|||||||
|
|
||||||
environment {
|
environment {
|
||||||
ROOTFS_JOB = "espos-rootfs"
|
ROOTFS_JOB = "espos-rootfs"
|
||||||
|
WORKDIR = "${WORKSPACE}/work"
|
||||||
}
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
|
stage('Cleanup Previous Mounts') {
|
||||||
|
steps {
|
||||||
|
sh '''
|
||||||
|
sudo umount -R "$WORKDIR/rootfs" 2>/dev/null || true
|
||||||
|
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev/pts" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev/shm" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/proc" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/sys" 2>/dev/null || true
|
||||||
|
|
||||||
|
sudo rm -rf "$WORKDIR" || true
|
||||||
|
'''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
stage("Checkout") {
|
stage("Checkout") {
|
||||||
steps {
|
steps {
|
||||||
checkout scm
|
checkout scm
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
stage('Download RootFS') {
|
stage('Download RootFS') {
|
||||||
steps {
|
steps {
|
||||||
copyArtifacts(
|
copyArtifacts(
|
||||||
@@ -31,6 +49,18 @@ pipeline {
|
|||||||
}
|
}
|
||||||
|
|
||||||
post {
|
post {
|
||||||
|
always {
|
||||||
|
sh '''
|
||||||
|
sudo umount -R "$WORKDIR/rootfs" 2>/dev/null || true
|
||||||
|
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev/pts" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev/shm" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/dev" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/proc" 2>/dev/null || true
|
||||||
|
sudo umount -lf "$WORKDIR/rootfs/sys" 2>/dev/null || true
|
||||||
|
'''
|
||||||
|
}
|
||||||
|
|
||||||
success {
|
success {
|
||||||
archiveArtifacts(
|
archiveArtifacts(
|
||||||
artifacts: '*.iso',
|
artifacts: '*.iso',
|
||||||
|
|||||||
@@ -10,7 +10,17 @@ rm -rf "$WORKDIR"
|
|||||||
|
|
||||||
mkdir -p "$ROOTFS"
|
mkdir -p "$ROOTFS"
|
||||||
mkdir -p "$ISO/live"
|
mkdir -p "$ISO/live"
|
||||||
|
cleanup() {
|
||||||
|
umount -R "$ROOTFS" 2>/dev/null || true
|
||||||
|
|
||||||
|
umount -lf "$ROOTFS/dev/pts" 2>/dev/null || true
|
||||||
|
umount -lf "$ROOTFS/dev/shm" 2>/dev/null || true
|
||||||
|
umount -lf "$ROOTFS/dev" 2>/dev/null || true
|
||||||
|
umount -lf "$ROOTFS/proc" 2>/dev/null || true
|
||||||
|
umount -lf "$ROOTFS/sys" 2>/dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup EXIT
|
||||||
echo "=== Extracting RootFS ==="
|
echo "=== Extracting RootFS ==="
|
||||||
|
|
||||||
tar --zstd -xf espos-openrc-rootfs.tar.zst -C "$ROOTFS"
|
tar --zstd -xf espos-openrc-rootfs.tar.zst -C "$ROOTFS"
|
||||||
|
|||||||
Reference in New Issue
Block a user