butterknife-provisioning-image/.drone.yml

70 lines
1.8 KiB
YAML

---
kind: pipeline
type: kubernetes
name: default
steps:
- name: build
image: ubuntu
volumes:
- name: ramdisk
path: /build
settings:
mtu: 1300
environment:
# TODO: Do not run as root
FORCE_UNSAFE_CONFIGURE: 1
commands:
- apt-get update
- apt-get install -yq wget build-essential file cpio rsync bc unzip python3
- cd /build
- wget https://github.com/buildroot/buildroot/archive/2022.02.tar.gz
- tar xf *.gz
- rm -fv *.gz
- cd buildroot-*/
- cp /drone/src/config-seed .config
- make olddefconfig
- nice ionice make -j `nproc` -s
- ls -lash output/images
- cp output/images/bzImage /drone/src/butterknife-amd64.bin
- cp output/images/rootfs.iso9660 /drone/src/butterknife-amd64.iso
- name: deliver-pxe
image: drillster/drone-email
settings:
from: jenkins@k-space.ee
subject: Butterknife provisioning image (PXE)
body: This is kernel with bundled initramfs suitable for PXE booting
host: mail.k-space.ee
port: 465
username: jenkins
password:
from_secret: email_password
attachments: butterknife-amd64.bin
- name: deliver-iso
image: drillster/drone-email
settings:
from: jenkins@k-space.ee
subject: Butterknife provisioning image (ISO)
body: This is ISO file suitable for writing to USB keys directly with dd
host: mail.k-space.ee
port: 465
username: jenkins
password:
from_secret: email_password
attachments: butterknife-amd64.iso
volumes:
- name: ramdisk
temp:
medium: memory
- name: test
image: ubuntu
commands:
- apt-get update
- apt-get install -yq qemu-system-x86
- qemu-system-x86_64 \
-kernel /drone/src/provisioning-image-amd64 \
-serial stdio \
-nographic \
-monitor none \
-append "console=ttyS0 bk_action=poweroff"