82 lines
2.5 KiB
YAML
82 lines
2.5 KiB
YAML
---
|
|
apiVersion: tekton.dev/v1beta1
|
|
kind: Task
|
|
metadata:
|
|
name: build-kernel-pine64-armbian
|
|
spec:
|
|
params:
|
|
- name: pathToContext
|
|
type: string
|
|
description: |
|
|
Path to where we build our kernel, usually /usr/src/...
|
|
default: /usr/src
|
|
resources:
|
|
inputs:
|
|
- name: kernel-configs
|
|
type: git
|
|
steps:
|
|
- name: install-kernel-source
|
|
image: cr.lan/debian-kernel-build-stable
|
|
script: |
|
|
#!/usr/bin/env bash
|
|
echo 'deb-src http://apt-cache.lan/deb.debian.org/debian testing main' > /etc/apt/sources.list.d/src-testing.list
|
|
echo 'deb http://apt-cache.lan/deb.debian.org/debian testing main' > /etc/apt/sources.list.d/testing.list
|
|
apt update -y
|
|
apt install -y linux-source $(apt-cache search linux-source |awk '{print $1}' |tail -1)
|
|
- name: unpack-kernel-source
|
|
image: cr.lan/debian-kernel-build-stable
|
|
script: |
|
|
#!/usr/bin/env bash
|
|
cd /usr/src
|
|
for DSRC in $(ls linux-source*xz |tail -1 |awk -F '.tar' '{print $1}'); do
|
|
D=$(basename ${DSRC})
|
|
if [[ ! -d ${D} ]]; then
|
|
tar -xvf ${DSRC}*.xz
|
|
fi
|
|
done
|
|
- name: build-kernel-pine64-armbian
|
|
image: cr.lan/debian-kernel-build-stable
|
|
script: |
|
|
#!/usr/bin/env bash
|
|
echo "res.input.ke...path: $(resources.inputs.kernel-configs.path)"
|
|
echo $PATH
|
|
cp $(resources.inputs.kernel-configs.path)/pine64-armbian /usr/src/linux-source-5.10/.config
|
|
cd /usr/src/linux-source-5.10
|
|
#distcc config
|
|
echo "localhost/1,cpp,lzo --randomize distcc-0.distcc,cpp,lzo distcc-1.distcc,cpp,lzo distcc-2.distcc,cpp,lzo distcc-3.distcc,cpp,lzo" >/etc/distcc/hosts
|
|
export CC=distcc GCC=distcc CPP=distcc
|
|
echo "ALL DISTCC HOSTS"
|
|
distcc --show-hosts
|
|
echo "/ALL DISTCC HOSTS"
|
|
make -j4 bindeb-pkg LOCALVERSION=-pine1
|
|
- name: cleanup-workspace-post
|
|
image: alpine
|
|
command:
|
|
- rm
|
|
args:
|
|
- -rfv
|
|
- /workspace/kernel-configs*
|
|
workspaces:
|
|
- name: usr-src
|
|
mountPath: /usr/src
|
|
# - name: workspace
|
|
# mountPath: /workspace
|
|
---
|
|
apiVersion: tekton.dev/v1beta1
|
|
kind: TaskRun
|
|
metadata:
|
|
name: build-kernel-pine64-armbian
|
|
spec:
|
|
#serviceAccountName: dockerhub-service
|
|
taskRef:
|
|
name: build-kernel-pine64-armbian
|
|
resources:
|
|
inputs:
|
|
- name: kernel-configs
|
|
resourceRef:
|
|
name: debian-kernel-build-git
|
|
workspaces:
|
|
- name: usr-src
|
|
persistentVolumeClaim:
|
|
claimName: tektoncd-workspaces
|
|
subPath: usr_src |