diff options
| author | 2026-08-29 20:31:53 +0700 | |
|---|---|---|
| committer | 2026-08-29 20:38:03 +0700 | |
| commit | 2b3b2bf962824e803269bcf77a9531aba2d88e5c (patch) | |
| tree | d79ab24f97e3faaea61dce975f303c4db22ce8f2 | |
| parent | b86fc6487ce3d879c7eb31142a008521ff9048aa (diff) | |
| download | kiwi-descriptions-2b3b2bf962824e803269bcf77a9531aba2d88e5c.tar.gz kiwi-descriptions-2b3b2bf962824e803269bcf77a9531aba2d88e5c.zip | |
feat: generate arm64 image in ci
| -rw-r--r-- | Jenkinsfile | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..29626bd --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,73 @@ +pipeline { + agent none + + options { + timestamps() + } + + environment { + KIWI_FILE = 'Fedora.kiwi' + IMAGE_TYPE = 'iso' + IMAGE_PROFILE = 'Workstation-Live' + OUTPUT_DIR = 'outdir' + } + + stages { + stage('Build Fedora Workstation (ARM64)') { + agent { + kubernetes { + defaultContainer 'kiwi' + yaml """ +apiVersion: v1 +kind: Pod +metadata: + namespace: jenkins +spec: + nodeSelector: + kubernetes.io/arch: arm64 + containers: + - name: kiwi + image: fedora:44 + imagePullPolicy: Always + command: [ 'sleep' ] + args: [ 'infinity' ] + tty: true + resources: + requests: + cpu: "2" + memory: 4Gi + ephemeral-storage: 20Gi + limits: + memory: 12Gi + ephemeral-storage: 50Gi +""" + } + } + steps { + checkout scm + container('kiwi') { + script { + try { + sh ''' + dnf --assumeyes install kiwi kiwi-systemdeps distribution-gpg-keys + git submodule update --init --recursive + + ./kiwi-build \\ + --kiwi-file="${KIWI_FILE}" \\ + --image-type="${IMAGE_TYPE}" \\ + --image-profile="${IMAGE_PROFILE}" \\ + --output-dir "${OUTPUT_DIR}" + + ls -lh "${OUTPUT_DIR}-build" + ''' + } catch (Exception e) { + echo "Caught exception: ${e.getMessage()}" + currentBuild.result = 'FAILURE' + throw e + } + } + } + } + } + } +} |