apiVersion: tekton.dev/v1alpha1 kind: PipelineResource metadata: name: openwrt-configs-git spec: type: git params: - name: revision value: master - name: url value: http://git-ui.lan/chaos/openwrt-configs.git --- apiVersion: tekton.dev/v1beta1 kind: Task metadata: name: build-openwrt spec: params: - name: make_flags type: string default: "" - name: config type: string - name: version type: string default: "" resources: inputs: - name: openwrt-configs type: git steps: - name: openwrt-get #image: cr.lan/debian-stable-build-essential image: cr.lan/debian-stable-openwrt-build script: | #!/usr/bin/env bash if [ ! -d /usr/src/openwrt ]; then git clone https://github.com/openwrt/openwrt.git /usr/src/openwrt fi cd /usr/src/openwrt echo "O_VERS: $(params.version)" git branch -l git checkout $(params.version) || exit 1 git pull - name: build-openwrt #image: cr.lan/debian-stable-build-essential image: cr.lan/debian-stable-openwrt-build script: | #!/usr/bin/env bash echo $PATH echo "res.input.ke...path: $(resources.inputs.openwrt-configs.path)" cp -v $(resources.inputs.openwrt-configs.path)/$(params.config) \ /usr/src/openwrt/.config || exit 1 cd /usr/src/openwrt CCACHE_DIR=$(echo staging_dir/target-*)/ccache ccache -s ls -la . export FORCE_UNSAFE_CONFIGURE=1 make -j3 clean ./scripts/feeds update -a ./scripts/feeds install -a # build env does not like to be run as root.... make -j6 download world $(params.make_flags) V=1 - name: upload-assets image: docker.io/minio/mc env: - name: MINIO_HOST valueFrom: secretKeyRef: name: minio-openwrt key: endpoint - name: MINIO_ACCESS_KEY valueFrom: secretKeyRef: name: minio-openwrt key: username - name: MINIO_SECRET_KEY valueFrom: secretKeyRef: name: minio-openwrt key: password script: | #!/usr/bin/env bash cd /usr/src/openwrt/bin #export MINIO_HOST=https://minio.live-infra.svc.cluster.local:9443 #export MINIO_ACCESS_KEY=openwrt #export MINIO_SECRET_KEY=eFVneg8I08MsE3tCeBDPxsMu9M2V2Fvy mc alias set minio-openwrt $MINIO_HOST $MINIO_ACCESS_KEY $MINIO_SECRET_KEY mc mirror --remove --insecure -a . minio-openwrt/openwrt workspaces: - name: usr-src mountPath: /usr/src --- apiVersion: tekton.dev/v1beta1 kind: TaskRun metadata: name: openwrt-dir825 spec: taskRef: name: build-openwrt params: - name: config value: dumont.chaos_openwrt-21.02 - name: version value: openwrt-21.02 resources: inputs: - name: openwrt-configs resourceRef: name: openwrt-configs-git workspaces: - name: usr-src persistentVolumeClaim: claimName: tektoncd-workspaces subPath: usr_src