deluge to new format

This commit is contained in:
Hyatt 2022-01-27 08:43:52 -06:00
parent b7bed15755
commit 7254291e24

View File

@ -1,51 +1,9 @@
def nodeLabel = "${UUID.randomUUID().toString()}"
#!groovy
def repository = "registry.c.test-chamber-13.lan"
def kanikoImage = "${repository}/library/kaniko:latest"
def repositoryCreds = "harbor-repository-creds"
podTemplate(
name: "pipelineContainer",
label: nodeLabel,
yaml: """---
apiVersion: v1
kind: Pod
metadata:
name: kaniko
spec:
containers:
- name: kaniko
image: ${kanikoImage}
imagePullPolicy: Always
tty: true
command:
- /busybox/cat
""") {
node (nodeLabel) {
stage ("Prepare Kaniko") {
container ("kaniko") {
withCredentials([usernameColonPassword(
credentialsId: repositoryCreds,
variable: "dCreds",
)]) {
def dockerJSON = """{
"auths": {
"${repository}": {
"auth": "${dcreds.bytes.encodeBase64().toString()}"
}
}
}"""
sh """
set +x
echo '${dockerJSON}' > /kaniko/.docker/config.json
"""
}
}
}
stage('Build Container') {
container('kaniko') {
def connectivity_test = """
#! /usr/bin/env bash
def connectivity_test = """#! /usr/bin/env bash
curl --silent --fail --insecure http://localhost:8112 > /dev/null
if [[ "\${?}" != "0" ]]; then
printf '%s\\n' "Deluge not running."
@ -81,20 +39,39 @@ if [[ "\${?}" != "0" ]]; then
fi
"""
def dockerfile = """FROM ${repository}/dockerhub/linuxserver/deluge:amd64-version-2.0.3-2201906121747ubuntu18.04.1
COPY connectivity_test.sh /root
def dockerFile = """FROM ${repository}/dockerhub/linuxserver/deluge:amd64-latest
#FROM ${repository}/dockerhub/linuxserver/deluge:amd64-version-2.0.3-2201906121747ubuntu18.04.1
COPY connectivity_test.sh /root/connectivity_test.sh
RUN apt-get update && \\
apt-get install -y openvpn iputils-ping dnsutils && \\
apt-get clean && \\
rm -rf /tmp/* /var/lib/apt/lists/* /var/tmp/*
rm -rf /tmp/* /var/lib/apt/lists/* /var/tmp/* && \\
chmod +x /root/connectivity_test.sh
"""
writeFile file: workspace + '/Dockerfile', text: dockerfile
writeFile file: workspace + '/connectivity_test.sh', text: connectivity_test
sh "chmod +x \"${workspace}/connectivity_test.sh\""
sh "/kaniko/executor --context \"${workspace}\" -f \"${workspace}/Dockerfile\" --destination \"${repository}/library/deluge:latest\""
}
}
}
def label = "kubernetes-${UUID.randomUUID().toString()}"
def templateName = "pipeline-worker"
podTemplate(
label: label,
name: templateName,
yaml: functions.podYaml(
repo: repository,
templateName: templateName,
kaniko: true
)
) {
node (label) {
def workspace = pwd()
writeFile(file: workspace + "/connectivity_test.sh", text: connectivity_test)
functions.buildContainer(
repository: repository,
imageDest: "${repository}/library/deluge:latest",
dockerFile: dockerFile,
repoCreds: repositoryCreds,
)
}
}