Test enviroments in drone
All checks were successful
continuous-integration/drone/tag Build is passing

This commit is contained in:
Maksim Zavitaev
2026-03-30 02:30:08 +03:00
parent 8032870129
commit e4d1486760

View File

@@ -1,14 +1,10 @@
kind: pipeline kind: pipeline
type: docker type: docker
name: awg-openwrt-24-10-2-rockchip-armv8 name: test-env
trigger:
event:
- tag
steps: steps:
- name: build - name: debug
image: node:20-bookworm image: alpine
environment: environment:
OPENWRT_TAG: "24.10.2" OPENWRT_TAG: "24.10.2"
OPENWRT_PKGARCH: "aarch64_generic" OPENWRT_PKGARCH: "aarch64_generic"
@@ -16,61 +12,10 @@ steps:
OPENWRT_SUBTARGET: "armv8" OPENWRT_SUBTARGET: "armv8"
OPENWRT_VERMAGIC: "0d90324e4fb76fa1183dcb1f1b600b7a-r1" OPENWRT_VERMAGIC: "0d90324e4fb76fa1183dcb1f1b600b7a-r1"
commands: commands:
- 'apt-get update' - echo "EVENT=$DRONE_BUILD_EVENT"
- 'DEBIAN_FRONTEND=noninteractive apt-get install -y ca-certificates curl wget jq git rsync unzip xz-utils zstd gawk file python3-pyelftools build-essential libncurses5-dev libncursesw5-dev libelf-dev gettext xsltproc cpio flex bison tar' - echo "DRONE_TAG=$DRONE_TAG"
- 'node --version' - echo "OPENWRT_TAG=$OPENWRT_TAG"
- 'npm --version' - echo "OPENWRT_PKGARCH=$OPENWRT_PKGARCH"
- 'python3 --version' - echo "OPENWRT_TARGET=$OPENWRT_TARGET"
- 'echo "Build for OpenWrt ${OPENWRT_TAG} ${OPENWRT_TARGET}/${OPENWRT_SUBTARGET} ${OPENWRT_PKGARCH}"' - echo "OPENWRT_SUBTARGET=$OPENWRT_SUBTARGET"
- 'echo "Expected vermagic: ${OPENWRT_VERMAGIC}"' - echo "OPENWRT_VERMAGIC=$OPENWRT_VERMAGIC"
- 'npm install'
- 'SDK_FILE=$(curl -fsSL "https://downloads.openwrt.org/releases/${OPENWRT_TAG}/targets/${OPENWRT_TARGET}/${OPENWRT_SUBTARGET}/" | grep -o "openwrt-sdk-${OPENWRT_TAG}-${OPENWRT_TARGET}-${OPENWRT_SUBTARGET}_gcc-[^\"]*_musl[^\"]*\.Linux-x86_64\.tar\.\(xz\|zst\)" | head -n1)'
- 'test -n "${SDK_FILE}"'
- 'SDK_URL="https://downloads.openwrt.org/releases/${OPENWRT_TAG}/targets/${OPENWRT_TARGET}/${OPENWRT_SUBTARGET}/${SDK_FILE}"'
- 'echo "SDK_URL=${SDK_URL}"'
- 'wget -O "${SDK_FILE}" "${SDK_URL}"'
- 'case "${SDK_FILE}" in *.tar.zst) tar --zstd -xf "${SDK_FILE}" ;; *.tar.xz) tar -xf "${SDK_FILE}" ;; *) echo "Unknown SDK archive format: ${SDK_FILE}"; exit 1 ;; esac'
- 'rm -f "${SDK_FILE}"'
- 'SDK_DIR="$(find . -maxdepth 1 -type d -name "openwrt-sdk-*" | head -n1)"'
- 'test -n "${SDK_DIR}"'
- 'echo "SDK_DIR=${SDK_DIR}"'
- 'cd "${SDK_DIR}" && ./scripts/feeds update -a'
- 'cd "${SDK_DIR}" && ./scripts/feeds install -a'
- 'cp -r "${DRONE_WORKSPACE}/kmod-amneziawg" "${DRONE_WORKSPACE}/${SDK_DIR}/package/"'
- 'cp -r "${DRONE_WORKSPACE}/amneziawg-tools" "${DRONE_WORKSPACE}/${SDK_DIR}/package/"'
- 'cp -r "${DRONE_WORKSPACE}/luci-proto-amneziawg" "${DRONE_WORKSPACE}/${SDK_DIR}/package/"'
- 'cd "${SDK_DIR}" && printf "%s\n" "CONFIG_PACKAGE_kmod-amneziawg=m" > .config'
- 'cd "${SDK_DIR}" && printf "%s\n" "CONFIG_PACKAGE_amneziawg-tools=y" >> .config'
- 'cd "${SDK_DIR}" && printf "%s\n" "CONFIG_PACKAGE_luci-proto-amneziawg=y" >> .config'
- 'cd "${SDK_DIR}" && printf "%s\n" "CONFIG_PACKAGE_luci-i18n-amneziawg-ru=y" >> .config'
- 'cd "${SDK_DIR}" && make defconfig'
- 'cd "${SDK_DIR}" && make package/kmod-amneziawg/download V=s || true'
- 'cd "${SDK_DIR}" && make package/kmod-amneziawg/prepare V=s || true'
- 'cd "${SDK_DIR}" && make package/kmod-amneziawg/compile V=s'
- 'cd "${SDK_DIR}" && make package/luci-proto-amneziawg/download V=s'
- 'cd "${SDK_DIR}" && make package/luci-proto-amneziawg/prepare V=s'
- 'cd "${SDK_DIR}" && make package/luci-proto-amneziawg/compile V=s'
- 'cd "${SDK_DIR}" && make package/amneziawg-tools/download V=s'
- 'cd "${SDK_DIR}" && make package/amneziawg-tools/prepare V=s'
- 'cd "${SDK_DIR}" && make package/amneziawg-tools/compile V=s'
- 'mkdir -p awgrelease'
- 'POSTFIX="v${OPENWRT_TAG}_${OPENWRT_PKGARCH}_${OPENWRT_TARGET}_${OPENWRT_SUBTARGET}"'
- 'KMOD_POSTFIX="v${OPENWRT_TAG}_${OPENWRT_PKGARCH}_${OPENWRT_TARGET}_${OPENWRT_SUBTARGET}_${OPENWRT_VERMAGIC}"'
- 'find "${SDK_DIR}/bin/packages" -type f -name "amneziawg-tools*.ipk" -exec sh -c ''f="$1"; ext="${f##*.}"; cp "$f" "awgrelease/amneziawg-tools_${POSTFIX}.${ext}"'' _ {} \;'
- 'find "${SDK_DIR}/bin/packages" -type f -name "luci-proto-amneziawg*.ipk" -exec sh -c ''f="$1"; ext="${f##*.}"; cp "$f" "awgrelease/luci-proto-amneziawg_${POSTFIX}.${ext}"'' _ {} \;'
- 'find "${SDK_DIR}/bin/packages" -type f -name "luci-i18n-amneziawg-ru*.ipk" -exec sh -c ''f="$1"; ext="${f##*.}"; cp "$f" "awgrelease/luci-i18n-amneziawg-ru_${POSTFIX}.${ext}"'' _ {} \;'
- 'find "${SDK_DIR}/bin/targets" -type f -name "kmod-amneziawg*.ipk" -exec sh -c ''f="$1"; ext="${f##*.}"; cp "$f" "awgrelease/kmod-amneziawg_${KMOD_POSTFIX}.${ext}"'' _ {} \;'
- 'ls -lah awgrelease'
- 'test -n "$(find awgrelease -type f -name "*.ipk" | head -n1)"'
- name: publish-release
image: plugins/gitea-release
settings:
base_url: https://git.mzavitaev.ru
api_key:
from_secret: gitea_token
files:
- awgrelease/*.ipk
checksum: sha256
file_exists: overwrite
title: AWG for OpenWrt 24.10.2