Compare commits

...

5 Commits

Author SHA1 Message Date
Svyatoslav Shchipunov
62aa0be06c fix: fix release job 2024-09-19 11:32:42 +07:00
Svyatoslav Shchipunov
5531cf217f fix: fix delete old release assets 2024-09-19 09:07:57 +07:00
Svyatoslav Shchipunov
8d6795c32c fix: fix check if release file exists 2024-09-19 09:07:08 +07:00
Svyatoslav Shchipunov
51707f91bf feat: add manual workflow run 2024-09-19 08:57:11 +07:00
Slava-Shchipunov
a02fb5219b Merge pull request #5 from Slava-Shchipunov/feat/auto-build-to-snapshot
Feat/auto build to snapshot
2024-09-19 00:48:13 +07:00

View File

@@ -9,6 +9,7 @@ on:
- "SNAPSHOT"
schedule:
- cron: '0 */4 * * *'
workflow_dispatch:
jobs:
generate-config:
@@ -46,11 +47,12 @@ jobs:
run: |
postfix="${{ matrix.build_env.tag }}_${{ matrix.build_env.vermagic }}_${{ matrix.build_env.pkgarch}}_${{ matrix.build_env.target}}_${{ matrix.build_env.subtarget}}"
RELEASE_FILE="kmod-amneziawg_${postfix}.ipk"
TAG=${{ matrix.build_env.tag }}
echo "Checking for release file: $RELEASE_FILE"
echo "Checking for release file: $RELEASE_FILE in release: $TAG"
# Используем GitHub CLI для проверки наличия файла в релизе
if gh release view $matrix.build_env.tag --repo Slava-Shchipunov/awg-openwrt --json assets --jq ".assets | .[].name" | grep -q "$RELEASE_FILE"; then
if gh release view "$TAG" --repo Slava-Shchipunov/awg-openwrt --json assets --jq ".assets | .[].name" | grep -q "$RELEASE_FILE"; then
echo "Release file $RELEASE_FILE already exists. Skipping job."
echo "FILE_EXISTS=true" >> $GITHUB_ENV
else
@@ -165,16 +167,16 @@ jobs:
- name: Delete old release assets
if: env.FILE_EXISTS == 'false'
run: |
postfix="${{ matrix.build_env.pkgarch}}_${{ matrix.build_env.target}}_${{ matrix.build_env.subtarget}}"
postfix="${{ matrix.build_env.pkgarch }}_${{ matrix.build_env.target }}_${{ matrix.build_env.subtarget }}"
echo "Looking for old release files ending with: ${postfix}"
# Получаем список всех артефактов релиза
assets=$(gh release view "${{ matrix.build_env.tag }}" --repo Slava-Shchipunov/awg-openwrt --json assets --jq ".assets | .[] | select(.name | endswith(\"$postfix.ipk\")) | .id")
# Получаем список всех артефактов релиза по имени
assets=$(gh release view "${{ matrix.build_env.tag }}" --repo Slava-Shchipunov/awg-openwrt --json assets --jq ".assets | .[] | select(.name | endswith(\"$postfix.ipk\")) | .name")
# Удаляем найденные артефакты
for asset_id in $assets; do
echo "Deleting asset with ID: $asset_id"
gh release delete-asset "${{ matrix.build_env.tag }}" "$asset_id" --repo Slava-Shchipunov/awg-openwrt
# Удаляем найденные артефакты по имени
for asset_name in $assets; do
echo "Deleting asset with name: $asset_name"
gh release delete-asset "${{ matrix.build_env.tag }}" "$asset_name" --repo Slava-Shchipunov/awg-openwrt
done
- name: Release
@@ -182,3 +184,4 @@ jobs:
uses: softprops/action-gh-release@v1
with:
files: awgrelease/*.ipk
tag_name: ${{ matrix.build_env.tag }}