name: Build packages on: push: tags: - v* jobs: build: name: Build podkop and luci-app-podkop runs-on: ubuntu-latest steps: - uses: actions/checkout@v4.2.1 - name: Check version match run: | PODKOP_VERSION=$(grep '^PKG_VERSION:=' podkop/Makefile | cut -d '=' -f 2) LUCI_APP_PODKOP_VERSION=$(grep '^PKG_VERSION:=' luci-app-podkop/Makefile | cut -d '=' -f 2) TAG_VERSION=${GITHUB_REF#refs/tags/v} echo "Podkop version: $PODKOP_VERSION" echo "Luci-app-podkop version: $LUCI_APP_PODKOP_VERSION" echo "Tag version: $TAG_VERSION" if [ "$PODKOP_VERSION" != "$TAG_VERSION" ] || [ "$LUCI_APP_PODKOP_VERSION" != "$TAG_VERSION" ]; then echo "Error: Version mismatch" exit 1 fi - name: Build and push uses: docker/build-push-action@v6.9.0 with: context: . tags: podkop:ci - name: Create Docker container run: docker create --name podkop podkop:ci - name: Copy file from Docker container run: | docker cp podkop:/builder/bin/packages/x86_64/utilites/. ./bin/ docker cp podkop:/builder/bin/packages/x86_64/luci/. ./bin/ - name: Filter IPK files run: | # Извлекаем версию из тега, убирая префикс 'v' VERSION=${GITHUB_REF#refs/tags/v} mkdir -p ./filtered-bin cp ./bin/luci-i18n-podkop-ru_*.ipk "./filtered-bin/luci-i18n-podkop-ru_${VERSION}.ipk" cp ./bin/podkop_*.ipk ./filtered-bin/ cp ./bin/luci-app-podkop_*.ipk ./filtered-bin/ - name: Remove Docker container run: docker rm podkop - name: Release uses: softprops/action-gh-release@v2.0.8 with: files: ./filtered-bin/*.ipk