| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- project_name: OliveTin
- version: 2
- before:
- hooks:
- - make service-prep
- - make windows-resources VERSION={{ .Version }}
- builds:
- - skip: '{{ isEnvSet "GORELEASER_SKIP_BUILD" }}'
- env:
- - CGO_ENABLED=0
- binary: OliveTin
- main: .
- dir: service
- goos:
- - linux
- - windows
- - darwin
- - freebsd
- goarch:
- - amd64
- - arm64
- - arm
- - riscv64
- goarm:
- - 5 # For old RPIs
- - 6
- - 7
- 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={{.ShortCommit}} -X main.date={{ .CommitDate }}
- checksum:
- name_template: 'checksums.txt'
- extra_files:
- - glob: ./dist/OliveTin-windows-amd64.msi
- snapshot:
- version_template: "{{ .Branch }}-{{ .ShortCommit }}"
- changelog:
- sort: asc
- groups:
- - title: 'Security'
- regexp: '^.*?security(\([[:word:]]+\))??!?:.+$'
- order: 0
- - title: 'Features'
- regexp: '^.*?feat.*?(\([[:word:]]+\))??!?:.+$'
- order: 1
- - title: 'Bug fixes'
- regexp: '^.*?fix(\([[:word:]]+\))??!?:.+$'
- order: 2
- - title: Others
- order: 999
- filters:
- exclude:
- - '^docs:'
- - '^test:'
- - '^cicd:'
- - '^chore:'
- - '^release:'
- - '^refactor:'
- - '^Merge branch'
- archives:
- - formats: tar.gz
- files:
- - config.yaml
- - LICENSE
- - README.md
- - src: Dockerfile.singlearch
- dst: Dockerfile
- - examples/backupScript.sh
- - webui
- - var
- name_template: "{{ .ProjectName }}-{{ .Os }}-{{ .Arch }}{{ .Arm }}"
- wrap_in_directory: true
- format_overrides:
- - goos: windows
- formats: zip
- # dockers_v2: single multi-platform build with buildx; keeps default provenance + SBOM.
- # Replaces legacy dockers + docker_manifests (avoids "is a manifest list" when attestations are on).
- dockers_v2:
- - dockerfile: Dockerfile.multiarches
- images:
- - docker.io/jamesread/olivetin
- - ghcr.io/olivetin/olivetin
- tags:
- - "{{ .Tag }}"
- - latest
- - latest-3k
- platforms:
- - linux/amd64
- - linux/arm64
- extra_files:
- - webui/
- - var/entities/
- - config.yaml
- - var/helper-actions/
- - examples/backupScript.sh
- labels:
- org.opencontainers.image.revision: "{{ .FullCommit }}"
- org.opencontainers.image.version: "{{ .Tag }}"
- sbom: true
- nfpms:
- - id: default
- maintainer: James Read <contact@jread.com>
- description: OliveTin is a web interface for running Linux shell commands.
- homepage: https://github.com/OliveTin/OliveTin
- license: AGPL-3.0
- formats:
- - deb
- - rpm
- bindir: /usr/local/bin/
- file_name_template: '{{ .PackageName }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}'
- contents:
- - src: var/systemd/OliveTin.service
- dst: /etc/systemd/system/OliveTin.service
- - src: webui/
- dst: /var/www/olivetin/
- type: tree
- - src: config.yaml
- dst: /etc/OliveTin/config.yaml
- type: "config|noreplace"
- - src: var/entities/*
- dst: /etc/OliveTin/entities/
- type: "config|noreplace"
- - src: var/manpage/OliveTin.1.gz
- dst: /usr/share/man/man1/OliveTin.1.gz
- - id: openrc
- maintainer: James Read <contact@jread.com>
- description: OliveTin is a web interface for running Linux shell commands.
- homepage: https://github.com/OliveTin/OliveTin
- license: AGPL-3.0
- formats:
- - apk
- bindir: /usr/local/bin/
- file_name_template: '{{ .PackageName }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}'
- contents:
- - src: var/openrc/OliveTin
- dst: /etc/init.d/OliveTin
- - src: webui/
- dst: /var/www/olivetin/
- type: tree
- - src: config.yaml
- dst: /etc/OliveTin/config.yaml
- type: "config|noreplace"
- - src: var/entities/*
- dst: /etc/OliveTin/entities/
- type: "config|noreplace"
- - src: var/manpage/OliveTin.1.gz
- dst: /usr/share/man/man1/OliveTin.1.gz
- release:
- extra_files:
- - glob: ./dist/OliveTin-windows-amd64.msi
- footer: |
- ## Container images (from GitHub)
- - `docker pull ghcr.io/olivetin/olivetin:{{ .Version }}`
- ## Container images ([on Docker Hub](https://hub.docker.com/r/jamesread/olivetin/tags?page=1&ordering=last_updated))
- - `docker pull docker.io/jamesread/olivetin:{{ .Version }}`
- ## Upgrade warnings, or breaking changes
- - No such issues between the last release and this version.
- ## Useful links
- - [Which download do I need?](https://docs.olivetin.app/install/choose_package.html)
- - [Ask for help and chat with others users in the Discord community](https://discord.gg/jhYWWpNJ3v)
- Thanks for your interest in OliveTin!
|