Compare commits

..

No commits in common. "main" and "feature/pr_ci" have entirely different histories.

5 changed files with 21 additions and 119 deletions

View File

@ -1,44 +1,36 @@
name: Build and Package OPKG name: Build and Package OPKG
on: on:
push:
branches:
- develop
- main
paths-ignore:
- '**.md'
- '.github/**'
- '!.github/workflows/build-for-release.yml'
release: release:
types: [published] types: [published]
jobs: jobs:
build: build:
name: Build for "${{ matrix.target }}" name: Build for ${{ matrix.arch }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:
include: include:
- target: mipsel-3.4 - arch: mipsel-3.4
goos: linux goos: linux
goarch: mipsle goarch: mipsle
gomips: softfloat gomips: softfloat
- target: mips-3.4 - arch: mips-3.4
goos: linux goos: linux
goarch: mips goarch: mips
gomips: softfloat gomips: softfloat
- target: aarch64-3.10 - arch: aarch64-3.10
goos: linux goos: linux
goarch: arm64 goarch: arm64
- target: armv7-3.2 - arch: armv7-3.2
goos: linux goos: linux
goarch: arm goarch: arm
goarm: 7 goarm: 7
- target: armv7-2.6 - arch: armv7-2.6
goos: linux goos: linux
goarch: arm goarch: arm
goarm: 7 goarm: 7
- target: armv5-3.2 - arch: armv5-3.2
goos: linux goos: linux
goarch: arm goarch: arm
goarm: 5 goarm: 5
@ -61,30 +53,13 @@ jobs:
- name: Build and Package - name: Build and Package
run: | run: |
TARGET=${{ matrix.target }} GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} GOMIPS=${{ matrix.gomips }} GOARM=${{ matrix.goarm }} make ARCH=${{ matrix.arch }} GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} GOMIPS=${{ matrix.gomips }} GOARM=${{ matrix.goarm }} make
- name: Fetching file list for artifact
if: ${{ github.event_name != 'release' }}
id: create_file_list
run: |
echo 'file_list<<EOF' >> $GITHUB_OUTPUT
find . -name "magitrickle_*_${{ matrix.target }}.ipk" -print >> $GITHUB_OUTPUT
echo 'EOF' >> $GITHUB_OUTPUT
- name: Upload artifact
if: ${{ github.event_name != 'release' }}
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.target }}
path: ${{ steps.create_file_list.outputs.file_list }}
if-no-files-found: error
- name: Upload asset to release - name: Upload asset to release
if: ${{ github.event_name == 'release' }}
uses: https://gitea.com/actions/release-action@main uses: https://gitea.com/actions/release-action@main
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
files: |- files: |-
./.build/magitrickle_*_${{ matrix.target }}.ipk .build/magitrickle_*_${{ matrix.arch }}.ipk
api_key: '${{secrets.RELEASE_TOKEN}}' api_key: '${{secrets.RELEASE_TOKEN}}'

View File

@ -1,57 +0,0 @@
name: Checking
on:
pull_request:
branches:
- develop
- main
paths-ignore:
- '**.md'
- '.github/**'
- '!.github/workflows/check.yml'
jobs:
check:
name: Finding suspicious constructs for ${{ matrix.arch }}
runs-on: ubuntu-latest
strategy:
matrix:
include:
- arch: mipsel-3.4
goos: linux
goarch: mipsle
gomips: softfloat
- arch: mips-3.4
goos: linux
goarch: mips
gomips: softfloat
- arch: aarch64-3.10
goos: linux
goarch: arm64
- arch: armv7-3.2
goos: linux
goarch: arm
goarm: 7
- arch: armv7-2.6
goos: linux
goarch: arm
goarm: 7
- arch: armv5-3.2
goos: linux
goarch: arm
goarm: 5
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: '1.21'
- name: Finding suspicious constructs
run: |
GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} GOMIPS=${{ matrix.gomips }} GOARM=${{ matrix.goarm }} go vet ./...

View File

@ -3,36 +3,28 @@ APP_DESCRIPTION = DNS-based routing application
APP_MAINTAINER = Vladimir Avtsenov <vladimir.lsk.cool@gmail.com> APP_MAINTAINER = Vladimir Avtsenov <vladimir.lsk.cool@gmail.com>
COMMIT = $(shell git rev-parse --short HEAD) COMMIT = $(shell git rev-parse --short HEAD)
UPSTREAM_VERSION = $(shell git describe --tags --abbrev=0 2> /dev/null || echo "0.0.0") UPSTREAM_VERSION ?= $(shell git describe --tags --abbrev=0 2> /dev/null || echo $(COMMIT))
PKG_REVISION ?= 1 OPKG_REVISION = ~git$(shell date +%Y%m%d).$(COMMIT)-1
ifeq ($(shell git rev-parse --abbrev-ref HEAD), main)
TAG = $(shell git describe --tags --abbrev=0 2> /dev/null) TAG = $(shell git describe --tags --abbrev=0 2> /dev/null || echo $(COMMIT))
COMMITS_SINCE_TAG = $(shell git rev-list ${TAG}..HEAD --count 2>/dev/null) COMMITS_SINCE_TAG = $(shell git rev-list ${TAG}..HEAD --count || echo "0")
PRERELEASE_POSTFIX = OPKG_REVISION = -$(shell expr $(COMMITS_SINCE_TAG) + 1)
PRERELEASE_DATE = $(shell date +%Y%m%d)
ifneq ($(TAG),)
ifneq ($(COMMITS_SINCE_TAG), 0)
PRERELEASE_POSTFIX = ~git$(PRERELEASE_DATE).$(COMMIT)
endif
else
PRERELEASE_POSTFIX = ~git$(PRERELEASE_DATE).$(COMMIT)
endif endif
TARGET ?= mipsel-3.4 ARCH ?= mipsel-3.4
GOOS ?= linux GOOS ?= linux
GOARCH ?= mipsle GOARCH ?= mipsle
GOMIPS ?= softfloat GOMIPS ?= softfloat
GOARM ?= GOARM ?=
BUILD_DIR = ./.build BUILD_DIR = ./.build
PKG_DIR = $(BUILD_DIR)/$(TARGET) PKG_DIR = $(BUILD_DIR)/$(ARCH)
BIN_DIR = $(PKG_DIR)/data/opt/bin BIN_DIR = $(PKG_DIR)/data/opt/bin
PARAMS = -v -a -trimpath -ldflags="-X 'magitrickle/constant.Version=$(UPSTREAM_VERSION)$(PRERELEASE_POSTFIX)' -X 'magitrickle/constant.Commit=$(COMMIT)' -w -s" PARAMS = -v -a -trimpath -ldflags="-X 'magitrickle/constant.Version=$(UPSTREAM_VERSION)$(OPKG_REVISION)' -X 'magitrickle/constant.Commit=$(COMMIT)' -w -s"
all: clear build_daemon package all: clear build_daemon package
clear: clear:
echo $(shell git rev-parse --abbrev-ref HEAD)
rm -rf $(PKG_DIR) rm -rf $(PKG_DIR)
build_daemon: build_daemon:
@ -42,8 +34,8 @@ package:
@mkdir -p $(PKG_DIR)/control @mkdir -p $(PKG_DIR)/control
@echo '2.0' > $(PKG_DIR)/debian-binary @echo '2.0' > $(PKG_DIR)/debian-binary
@echo 'Package: $(APP_NAME)' > $(PKG_DIR)/control/control @echo 'Package: $(APP_NAME)' > $(PKG_DIR)/control/control
@echo 'Version: $(UPSTREAM_VERSION)$(PRERELEASE_POSTFIX)-$(PKG_REVISION)' >> $(PKG_DIR)/control/control @echo 'Version: $(UPSTREAM_VERSION)$(OPKG_REVISION)' >> $(PKG_DIR)/control/control
@echo 'Architecture: $(TARGET)' >> $(PKG_DIR)/control/control @echo 'Architecture: $(ARCH)' >> $(PKG_DIR)/control/control
@echo 'Maintainer: $(APP_MAINTAINER)' >> $(PKG_DIR)/control/control @echo 'Maintainer: $(APP_MAINTAINER)' >> $(PKG_DIR)/control/control
@echo 'Description: $(APP_DESCRIPTION)' >> $(PKG_DIR)/control/control @echo 'Description: $(APP_DESCRIPTION)' >> $(PKG_DIR)/control/control
@echo 'Section: net' >> $(PKG_DIR)/control/control @echo 'Section: net' >> $(PKG_DIR)/control/control
@ -52,4 +44,4 @@ package:
@cp -r ./opt $(PKG_DIR)/data/ @cp -r ./opt $(PKG_DIR)/data/
@fakeroot sh -c "tar -C $(PKG_DIR)/control -czvf $(PKG_DIR)/control.tar.gz ." @fakeroot sh -c "tar -C $(PKG_DIR)/control -czvf $(PKG_DIR)/control.tar.gz ."
@fakeroot sh -c "tar -C $(PKG_DIR)/data -czvf $(PKG_DIR)/data.tar.gz ." @fakeroot sh -c "tar -C $(PKG_DIR)/data -czvf $(PKG_DIR)/data.tar.gz ."
@tar -C $(PKG_DIR) -czvf $(BUILD_DIR)/$(APP_NAME)_$(UPSTREAM_VERSION)$(PRERELEASE_POSTFIX)-$(PKG_REVISION)_$(TARGET).ipk ./debian-binary ./control.tar.gz ./data.tar.gz @tar -C $(PKG_DIR) -czvf $(BUILD_DIR)/$(APP_NAME)_$(UPSTREAM_VERSION)$(OPKG_REVISION)_$(ARCH).ipk ./debian-binary ./control.tar.gz ./data.tar.gz

1
asd
View File

@ -1 +0,0 @@
sad

View File

@ -1,7 +0,0 @@
package magitrickle
import "fmt"
func main() {
fmt.Println("dummy file")
}