Compare commits

...

9 Commits

Author SHA1 Message Date
Maksim Zavitaev
6210c73b30 Fix Drone file
All checks were successful
continuous-integration/drone/tag Build is passing
2026-03-30 03:19:18 +03:00
Maksim Zavitaev
ded94df0c1 Fix Drone file
Some checks failed
continuous-integration/drone/tag Build is failing
2026-03-30 02:51:50 +03:00
Maksim Zavitaev
e6a3cbc9e8 Fix drone file
Some checks failed
continuous-integration/drone/tag Build is failing
2026-03-30 02:41:09 +03:00
Maksim Zavitaev
d9d002aab3 Fix droid file
Some checks failed
continuous-integration/drone/tag Build is failing
2026-03-30 02:33:40 +03:00
Maksim Zavitaev
e4d1486760 Test enviroments in drone
All checks were successful
continuous-integration/drone/tag Build is passing
2026-03-30 02:30:08 +03:00
Maksim Zavitaev
8032870129 Fix .drone.yml
Some checks failed
continuous-integration/drone/tag Build is failing
2026-03-30 02:16:48 +03:00
Maksim Zavitaev
2b72867ef1 Add .drone.yml
Some checks failed
continuous-integration/drone/tag Build encountered an error
2026-03-30 02:13:00 +03:00
Slava-Shchipunov
7d68c0754d docs: update README with AWG-2.0 version 25.12.2
Added new version 25.12.2 to the list of AWG-2.0 releases in the README.
2026-03-28 03:05:06 +07:00
Slava-Shchipunov
2b90e70f4e docs: update AWG-2.0 version links in README.md 2026-03-20 11:34:26 +07:00
2 changed files with 138 additions and 5 deletions

130
.drone.yml Normal file
View File

@@ -0,0 +1,130 @@
kind: pipeline
type: docker
name: awg-openwrt-build-publish
trigger:
event:
- tag
volumes:
- name: drone_cache
host:
path: /cache
steps:
- name: build
image: node:20-bookworm
volumes:
- name: drone_cache
path: /cache
environment:
OPENWRT_TAG: "24.10.2"
OPENWRT_PKGARCH: "aarch64_generic"
OPENWRT_TARGET: "rockchip"
OPENWRT_SUBTARGET: "armv8"
OPENWRT_VERMAGIC: "0d90324e4fb76fa1183dcb1f1b600b7a-r1"
commands:
- apt-get update
- |
DEBIAN_FRONTEND=noninteractive apt-get install -y \
ca-certificates \
curl \
wget \
jq \
git \
rsync \
unzip \
zip \
xz-utils \
zstd \
gawk \
file \
patch \
perl \
python3 \
python3-dev \
python3-pyelftools \
python3-setuptools \
python3-distutils \
swig \
build-essential \
clang \
libncurses5-dev \
libncursesw5-dev \
libelf-dev \
gettext \
xsltproc \
cpio \
flex \
bison \
tar
- npm install
- mkdir -p "/cache/awg-openwrt/$DRONE_TAG"
- rm -rf "/cache/awg-openwrt/$DRONE_TAG/"*
- mkdir -p "$DRONE_WORKSPACE/awgrelease"
- SDK_FILE=$(curl -fsSL "https://downloads.openwrt.org/releases/$OPENWRT_TAG/targets/$OPENWRT_TARGET/$OPENWRT_SUBTARGET/" | grep -o 'openwrt-sdk-[^"]*\.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"
- 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_ROOT=$(find "$DRONE_WORKSPACE" -maxdepth 1 -type d -name 'openwrt-sdk-*' | head -n1)
- test -n "$SDK_ROOT"
- cd "$SDK_ROOT" && ./scripts/feeds update -a
- cd "$SDK_ROOT" && ./scripts/feeds install -a
- cp -r "$DRONE_WORKSPACE/kmod-amneziawg" "$SDK_ROOT/package/"
- cp -r "$DRONE_WORKSPACE/amneziawg-tools" "$SDK_ROOT/package/"
- cp -r "$DRONE_WORKSPACE/luci-proto-amneziawg" "$SDK_ROOT/package/"
- cd "$SDK_ROOT" && printf '%s\n' 'CONFIG_PACKAGE_kmod-amneziawg=m' > .config
- cd "$SDK_ROOT" && printf '%s\n' 'CONFIG_PACKAGE_amneziawg-tools=y' >> .config
- cd "$SDK_ROOT" && printf '%s\n' 'CONFIG_PACKAGE_luci-proto-amneziawg=y' >> .config
- cd "$SDK_ROOT" && printf '%s\n' 'CONFIG_PACKAGE_luci-i18n-amneziawg-ru=y' >> .config
- cd "$SDK_ROOT" && make defconfig
- cd "$SDK_ROOT" && make package/kmod-amneziawg/download V=s || true
- cd "$SDK_ROOT" && make package/kmod-amneziawg/prepare V=s || true
- cd "$SDK_ROOT" && make package/kmod-amneziawg/compile V=s
- cd "$SDK_ROOT" && make package/luci-proto-amneziawg/download V=s
- cd "$SDK_ROOT" && make package/luci-proto-amneziawg/prepare V=s
- cd "$SDK_ROOT" && make package/luci-proto-amneziawg/compile V=s
- cd "$SDK_ROOT" && make package/amneziawg-tools/download V=s
- cd "$SDK_ROOT" && make package/amneziawg-tools/prepare V=s
- cd "$SDK_ROOT" && make package/amneziawg-tools/compile V=s
- find "$SDK_ROOT/bin/packages" -type f -name 'amneziawg-tools*.ipk' -exec cp {} "$DRONE_WORKSPACE/awgrelease/" \;
- find "$SDK_ROOT/bin/packages" -type f -name 'luci-proto-amneziawg*.ipk' -exec cp {} "$DRONE_WORKSPACE/awgrelease/" \;
- find "$SDK_ROOT/bin/packages" -type f -name 'luci-i18n-amneziawg-ru*.ipk' -exec cp {} "$DRONE_WORKSPACE/awgrelease/" \;
- find "$SDK_ROOT/bin/targets" -type f -name 'kmod-amneziawg*.ipk' -exec cp {} "$DRONE_WORKSPACE/awgrelease/" \;
- test -n "$(find "$DRONE_WORKSPACE/awgrelease" -type f -name '*.ipk' | head -n1)"
- cp -a "$DRONE_WORKSPACE/awgrelease/." "/cache/awg-openwrt/$DRONE_TAG/"
- ls -lah "/cache/awg-openwrt/$DRONE_TAG/"
- name: publish-release
image: plugins/gitea-release
volumes:
- name: drone_cache
path: /cache
settings:
base_url: https://git.mzavitaev.ru
api_key:
from_secret: gitea_token
files:
- /cache/awg-openwrt/${DRONE_TAG}/*.ipk
checksum: sha256
file_exists: overwrite
title: AWG for OpenWrt 24.10.2

View File

@@ -29,7 +29,10 @@ sh <(wget -O - https://raw.githubusercontent.com/Slava-Shchipunov/awg-openwrt/re
11) AWG-2.0 [24.10.3](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.3)
12) AWG-2.0 [24.10.4](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.4)
13) AWG-2.0 [24.10.5](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.5)
14) AWG-2.0 [25.12.0](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.0)
14) AWG-2.0 [24.10.6](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.6)
15) AWG-2.0 [25.12.0](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.0)
16) AWG-2.0 [25.12.1](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.1)
17) AWG-2.0 [25.12.2](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.2)
Также запускал сборку для версии [22.03.7](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v22.03.7), но там для двух платформ сборка завершилась ошибкой. Так как это достаточно старая версия OpenWRT, я не стал разбираться, в чем проблема.
@@ -96,13 +99,13 @@ At the moment I have collected packages for all devices for OpenWRT versions:
11) AWG-2.0 [24.10.3](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.3)
12) AWG-2.0 [24.10.4](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.4)
13) AWG-2.0 [24.10.5](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.5)
14) AWG-2.0 [25.12.0](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.0)
14) AWG-2.0 [24.10.6](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v24.10.6)
15) AWG-2.0 [25.12.0](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.0)
16) AWG-2.0 [25.12.1](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.1)
17) AWG-2.0 [25.12.2](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v25.12.2)
I also ran the build for version [22.03.7](https://github.com/Slava-Shchipunov/awg-openwrt/releases/tag/v22.03.7), but the build ended with an error for two platforms. Since this is a fairly old version of OpenWRT, I did not bother to figure out what the problem was.
## Automatic package build for SNAPSHOT version
A github action is configured in the repository, which runs every 4 hours and checks the [snapshots page](https://downloads.openwrt.org/snapshots/targets/) of the OpenWRT website. At the same time, if a snapshot with a newer kernel version is found for some platform, the package build for this platform is launched, and the new files replace the old ones. In order to save resources and speed up the build process, packages are built only for popular platforms, which are specified in the `SNAPSHOT_SUBTARGETS_TO_BUILD` array in the index.js file.
## Selecting packages for your device
In accordance with the paragraph [Specify variables for builds](https://github.com/itdoginfo/domain-routing-openwrt/wiki/Amnezia-WG-Build#%D1%83%D0%BA%D0%B0%D0%B7%D1%8B%D0%B2%D0%B0%D0%B5%D0%BC-%D0%BF%D0%B5%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5-%D0%B4%D0%BB%D1%8F-%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B8) (instructions in Russian) determine `target` and `subtarget` of your device. Then go to the release page corresponding to your OpenWRT version, then search the page (Ctrl+F) to find 3 packages whose names end in `target_subtarget.ipk` corresponding to your device. For AWG 2.0 version, Russian localization package luci-i18n-amneziawg-ru is also available