154 lines
3.7 KiB
YAML
154 lines
3.7 KiB
YAML
project_name: OliveTin
|
|
before:
|
|
hooks:
|
|
- go mod download
|
|
- rm -rf webui/node_modules
|
|
builds:
|
|
- env:
|
|
- CGO_ENABLED=0
|
|
goos:
|
|
- linux
|
|
- windows
|
|
- darwin
|
|
|
|
goarch:
|
|
- amd64
|
|
- arm64
|
|
- arm
|
|
|
|
goarm:
|
|
- 7 # For old RPIs
|
|
|
|
main: cmd/OliveTin/main.go
|
|
|
|
ignore:
|
|
- goos: darwin
|
|
goarch: arm # Mac does not work on [32bit] arm
|
|
|
|
- goos: windows
|
|
goarch: arm
|
|
|
|
- goos: windows # Does anyone use Windows on arm64?
|
|
goarch: arm64
|
|
|
|
ldflags:
|
|
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{ .CommitDate }}
|
|
|
|
checksum:
|
|
name_template: 'checksums.txt'
|
|
snapshot:
|
|
name_template: "{{ .Commit }}"
|
|
changelog:
|
|
sort: asc
|
|
filters:
|
|
exclude:
|
|
- '^docs:'
|
|
- '^test:'
|
|
|
|
archives:
|
|
-
|
|
format: tar.gz
|
|
|
|
files:
|
|
- config.yaml
|
|
- LICENSE
|
|
- README.md
|
|
- Dockerfile
|
|
- webui
|
|
- OliveTin.service
|
|
|
|
replacements:
|
|
darwin: macOS
|
|
|
|
name_template: "{{ .ProjectName }}-{{ .Version }}-{{ .Os }}-{{ .Arch }}"
|
|
|
|
wrap_in_directory: true
|
|
|
|
format_overrides:
|
|
- goos: windows
|
|
format: zip
|
|
|
|
dockers:
|
|
- image_templates:
|
|
- "docker.io/jamesread/olivetin:{{ .Tag }}-amd64"
|
|
dockerfile: Dockerfile
|
|
goos: linux
|
|
goarch: amd64
|
|
skip_push: false
|
|
use: docker
|
|
build_flag_templates:
|
|
- "--platform=linux/amd64"
|
|
- "--label=org.opencontainers.image.title={{.ProjectName}}"
|
|
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
|
|
- "--label=org.opencontainers.image.version={{.Tag}}"
|
|
- "--platform=linux/amd64"
|
|
extra_files:
|
|
- webui
|
|
|
|
- image_templates:
|
|
- "docker.io/jamesread/olivetin:{{ .Tag }}-arm64"
|
|
dockerfile: Dockerfile
|
|
goos: linux
|
|
goarch: arm64
|
|
skip_push: false
|
|
use: docker
|
|
build_flag_templates:
|
|
- "--platform=linux/arm64"
|
|
- "--label=org.opencontainers.image.title={{.ProjectName}}"
|
|
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
|
|
- "--label=org.opencontainers.image.version={{.Tag}}"
|
|
extra_files:
|
|
- webui
|
|
|
|
# This container image actually uses the goarm v5 binary, because v5 helps
|
|
# support rpi 1's, but it seems most container images start with v7.
|
|
- image_templates:
|
|
- "docker.io/jamesread/olivetin:{{ .Tag }}-armv7"
|
|
dockerfile: Dockerfile
|
|
goos: linux
|
|
goarm: 7
|
|
goarch: arm
|
|
skip_push: false
|
|
use: docker
|
|
build_flag_templates:
|
|
- "--platform=linux/arm/v7"
|
|
- "--label=org.opencontainers.image.title={{.ProjectName}}"
|
|
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
|
|
- "--label=org.opencontainers.image.version={{.Tag}}"
|
|
extra_files:
|
|
- webui
|
|
|
|
docker_manifests:
|
|
- name_template: docker.io/jamesread/olivetin:{{ .Version }}
|
|
image_templates:
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-amd64
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-arm64
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-armv7
|
|
|
|
- name_template: docker.io/jamesread/olivetin:latest
|
|
image_templates:
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-amd64
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-arm64
|
|
- docker.io/jamesread/olivetin:{{ .Version }}-armv7
|
|
|
|
nfpms:
|
|
- maintainer: James Read <contact@jread.com>
|
|
description: OliveTin is a web interface for running Linux shell commands.
|
|
homepage: https://github.com/jamesread/OliveTin
|
|
license: AGPL-3.0
|
|
formats:
|
|
- deb
|
|
- rpm
|
|
- apk
|
|
|
|
contents:
|
|
- src: OliveTin.service
|
|
dst: /etc/systemd/system/OliveTin.service
|
|
|
|
- src: webui
|
|
dst: /var/www/olivetin/
|
|
|
|
- src: config.yaml
|
|
dst: /etc/OliveTin/config.yaml
|
|
type: "config|noreplace"
|