Tôi đã buộc phải thay đổi máy chủ jenkins từ máy chủ này sang máy chủ khác hai lần. Lần đầu tiên, tôi chuyển nó từ máy chủ Ubuntu 20.04 sang Ubuntu 21 mà không gặp vấn đề gì; bản dựng (đường ống đa nhánh) hoạt động tốt.
Nhưng bây giờ tôi đã buộc phải thay đổi lại jenkins thành một máy chủ khác chạy Debian 10 và bây giờ đường dẫn bỏ qua tất cả các bước ngoại trừ thanh toán và đăng (gửi email).
Đây là tệp Jenkins:
đường ống {
đại lý bất kỳ
môi trường {
GIT_BRANCH = "xuất xứ/${BRANCH_NAME}"
BRANCH_NAME = "${BRANCH_NAME}"
REGISTRY_CREDENTIALS = thông tin đăng nhập ('DỮ LIỆU BỊ GIẤU')
ĐĂNG KÝ= "my.remote.regsitry"
}
giai đoạn {
giai đoạn ('Thanh toán') {
bước {
kiểm tra scm
}
}
giai đoạn ('Xây dựng') {
bước {
sh '''#!/bin/bash
đĩa cd
tiếng vang "BRANCH_NAME=$BRANCH_NAME"
tiếng vang "GIT_BRANCH=$GIT_BRANCH"
./build.sh my.remote.registry
'''
}
}
giai đoạn ('Đẩy') {
bước {
sh '''#!/bin/bash
đĩa cd
echo "Đăng nhập sổ đăng ký $REGISTRY với tên $REGISTRY_CREDENTIALS_USR..."
nếu ( ! đăng nhập docker -p "$REGISTRY_CREDENTIALS_PSW" -u "$REGISTRY_CREDENTIALS_USR" "$REGISTRY" ); sau đó
echo "Không thể đăng nhập vào ${REGISTRY}. Đang hủy..."
trả lại 1;
fi
./push.sh dockdev.epiclabs.io
nếu [ -e alias.sh ] ; sau đó
. ./gitinfo.sh
./alias.sh "$TAG" "$BRANCH" my.remote.registry
./push.sh --tag "$BRANCH" my.remote.registry
fi
'''
}
}
giai đoạn ('Triển khai') {
bước {
sh '''#!/bin/bash
đĩa cd
./deploy.sh "192.168.10.254/cid" my.remote.registry
'''
}
}
}
bưu kiện {
luôn {
emailext attachmentLog: true,
body: "${currentBuild.currentResult}: Công việc ${env.JOB_NAME} bản dựng ${env.BUILD_NUMBER}\n",
chủ đề: "Bản dựng CID ${currentBuild.currentResult}: Công việc ${env.JOB_NAME}",
đến: 'BẢO MẬT'
}
}
}
Đường ống hoạt động tốt trong hai máy chủ đầu tiên (triển khai nó bị lỗi, đó không phải là vấn đề tôi đang nói đến :)):
Nhưng bây giờ nó đang bỏ qua các bước:
Không có nhật ký nào phản ánh bất kỳ lỗi nào. Tôi không biết nơi nào khác để tìm.