Compare commits
No commits in common. "main" and "feature/pr_ci" have entirely different histories.
main
...
feature/pr
43
.github/workflows/build-for-release.yml
vendored
43
.github/workflows/build-for-release.yml
vendored
@ -1,44 +1,36 @@
|
||||
name: Build and Package OPKG
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
- main
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '.github/**'
|
||||
- '!.github/workflows/build-for-release.yml'
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build for "${{ matrix.target }}"
|
||||
name: Build for ${{ matrix.arch }}
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
- target: mipsel-3.4
|
||||
- arch: mipsel-3.4
|
||||
goos: linux
|
||||
goarch: mipsle
|
||||
gomips: softfloat
|
||||
- target: mips-3.4
|
||||
- arch: mips-3.4
|
||||
goos: linux
|
||||
goarch: mips
|
||||
gomips: softfloat
|
||||
- target: aarch64-3.10
|
||||
- arch: aarch64-3.10
|
||||
goos: linux
|
||||
goarch: arm64
|
||||
- target: armv7-3.2
|
||||
- arch: armv7-3.2
|
||||
goos: linux
|
||||
goarch: arm
|
||||
goarm: 7
|
||||
- target: armv7-2.6
|
||||
- arch: armv7-2.6
|
||||
goos: linux
|
||||
goarch: arm
|
||||
goarm: 7
|
||||
- target: armv5-3.2
|
||||
- arch: armv5-3.2
|
||||
goos: linux
|
||||
goarch: arm
|
||||
goarm: 5
|
||||
@ -61,30 +53,13 @@ jobs:
|
||||
|
||||
- name: Build and Package
|
||||
run: |
|
||||
TARGET=${{ matrix.target }} 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
|
||||
ARCH=${{ matrix.arch }} GOOS=${{ matrix.goos }} GOARCH=${{ matrix.goarch }} GOMIPS=${{ matrix.gomips }} GOARM=${{ matrix.goarm }} make
|
||||
|
||||
- name: Upload asset to release
|
||||
if: ${{ github.event_name == 'release' }}
|
||||
uses: https://gitea.com/actions/release-action@main
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
files: |-
|
||||
./.build/magitrickle_*_${{ matrix.target }}.ipk
|
||||
.build/magitrickle_*_${{ matrix.arch }}.ipk
|
||||
api_key: '${{secrets.RELEASE_TOKEN}}'
|
||||
|
57
.github/workflows/check.yml
vendored
57
.github/workflows/check.yml
vendored
@ -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 ./...
|
32
Makefile
32
Makefile
@ -3,36 +3,28 @@ APP_DESCRIPTION = DNS-based routing application
|
||||
APP_MAINTAINER = Vladimir Avtsenov <vladimir.lsk.cool@gmail.com>
|
||||
|
||||
COMMIT = $(shell git rev-parse --short HEAD)
|
||||
UPSTREAM_VERSION = $(shell git describe --tags --abbrev=0 2> /dev/null || echo "0.0.0")
|
||||
PKG_REVISION ?= 1
|
||||
|
||||
TAG = $(shell git describe --tags --abbrev=0 2> /dev/null)
|
||||
COMMITS_SINCE_TAG = $(shell git rev-list ${TAG}..HEAD --count 2>/dev/null)
|
||||
PRERELEASE_POSTFIX =
|
||||
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)
|
||||
UPSTREAM_VERSION ?= $(shell git describe --tags --abbrev=0 2> /dev/null || echo $(COMMIT))
|
||||
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 || echo $(COMMIT))
|
||||
COMMITS_SINCE_TAG = $(shell git rev-list ${TAG}..HEAD --count || echo "0")
|
||||
OPKG_REVISION = -$(shell expr $(COMMITS_SINCE_TAG) + 1)
|
||||
endif
|
||||
|
||||
TARGET ?= mipsel-3.4
|
||||
ARCH ?= mipsel-3.4
|
||||
GOOS ?= linux
|
||||
GOARCH ?= mipsle
|
||||
GOMIPS ?= softfloat
|
||||
GOARM ?=
|
||||
|
||||
BUILD_DIR = ./.build
|
||||
PKG_DIR = $(BUILD_DIR)/$(TARGET)
|
||||
PKG_DIR = $(BUILD_DIR)/$(ARCH)
|
||||
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
|
||||
|
||||
clear:
|
||||
echo $(shell git rev-parse --abbrev-ref HEAD)
|
||||
rm -rf $(PKG_DIR)
|
||||
|
||||
build_daemon:
|
||||
@ -42,8 +34,8 @@ package:
|
||||
@mkdir -p $(PKG_DIR)/control
|
||||
@echo '2.0' > $(PKG_DIR)/debian-binary
|
||||
@echo 'Package: $(APP_NAME)' > $(PKG_DIR)/control/control
|
||||
@echo 'Version: $(UPSTREAM_VERSION)$(PRERELEASE_POSTFIX)-$(PKG_REVISION)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Architecture: $(TARGET)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Version: $(UPSTREAM_VERSION)$(OPKG_REVISION)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Architecture: $(ARCH)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Maintainer: $(APP_MAINTAINER)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Description: $(APP_DESCRIPTION)' >> $(PKG_DIR)/control/control
|
||||
@echo 'Section: net' >> $(PKG_DIR)/control/control
|
||||
@ -52,4 +44,4 @@ package:
|
||||
@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)/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,7 +0,0 @@
|
||||
package magitrickle
|
||||
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
fmt.Println("dummy file")
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user