mirror of
https://github.com/hrfee/jfa-go.git
synced 2026-01-18 16:47:42 +01:00
removes one dependency. jfa-go-build-docker has been updated to reflect this, and in general with a newer debian version and properly included goreleaser, and a build for amd64. Dockerfiles now use a "distroless"-style container as their base. Was gonna use chainguard/glibc-dynamic, but it running as a different user meant it wouldn't read/write from your /data mount without manual intervention.
120 lines
4.2 KiB
YAML
120 lines
4.2 KiB
YAML
when:
|
|
- event: push
|
|
branch: main
|
|
# - evaluate: 'CI_PIPELINE_EVENT != "PULL_REQUEST" && CI_COMMIT_BRANCH == CI_REPO_DEFAULT_BRANCH'
|
|
|
|
clone:
|
|
git:
|
|
image: woodpeckerci/plugin-git
|
|
settings:
|
|
tags: true
|
|
partial: false
|
|
depth: 0
|
|
|
|
steps:
|
|
- name: precompile
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
JFA_GO_SNAPSHOT: y
|
|
JFA_GO_BUILT_BY:
|
|
from_secret: BUILT_BY
|
|
volumes:
|
|
- jfa-go-build-cache:/root/.cache/go-build
|
|
- jfa-go-mod-cache:/go/pkg/mod
|
|
- jfa-go-npm-cache:/npm
|
|
commands:
|
|
- npm ci --cache /npm --prefer-offline
|
|
- make precompile
|
|
- go mod download
|
|
- name: test
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
JFA_GO_SNAPSHOT: y
|
|
JFA_GO_BUILT_BY:
|
|
from_secret: BUILT_BY
|
|
volumes:
|
|
- jfa-go-build-cache:/root/.cache/go-build
|
|
- jfa-go-mod-cache:/go/pkg/mod
|
|
- jfa-go-npm-cache:/npm
|
|
commands:
|
|
- make test
|
|
- name: build
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
JFA_GO_SNAPSHOT: y
|
|
JFA_GO_BUILT_BY:
|
|
from_secret: BUILT_BY
|
|
volumes:
|
|
- jfa-go-build-cache:/root/.cache/go-build
|
|
- jfa-go-mod-cache:/go/pkg/mod
|
|
- jfa-go-npm-cache:/npm
|
|
commands:
|
|
- ./scripts/version.sh goreleaser --snapshot --skip=publish --clean
|
|
- name: buildrone-binary
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
BUILDRONE_KEY:
|
|
from_secret: BUILDRONE_KEY
|
|
commands:
|
|
- wget https://builds.hrfee.pw/upload.py
|
|
- bash -c 'python3 upload.py https://builds.hrfee.pw hrfee jfa-go --upload ./dist/*.zip ./dist/*.rpm ./dist/*.apk --tag internal-git=true'
|
|
- name: redoc
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
REDOC_SSH_ID:
|
|
from_secret: REDOC_SSH_ID
|
|
commands:
|
|
- sh -c "echo \"$REDOC_SSH_ID\" > /tmp/id_redoc && chmod 600 /tmp/id_redoc"
|
|
- bash -c 'sftp -P 3625 -i /tmp/id_redoc -o StrictHostKeyChecking=no redoc@api.jfa-go.com:/home/redoc <<< $"put docs/swagger.json jfa-go.json"'
|
|
- name: deb-repo
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
REPO_SSH_ID:
|
|
from_secret: REPO_SSH_ID
|
|
commands:
|
|
- sh -c "echo \"$REPO_SSH_ID\" > /tmp/id_repo && chmod 600 /tmp/id_repo"
|
|
- bash -c 'sftp -P 2022 -i /tmp/id_repo -o StrictHostKeyChecking=no root@apt.hrfee.dev:/repo/incoming <<< $"put dist/*.deb"'
|
|
- bash -c 'ssh -i /tmp/id_repo root@apt.hrfee.dev -p 2022 "repo-process-deb trusty-unstable"'
|
|
- bash -c 'ssh -i /tmp/id_repo root@apt.hrfee.dev -p 2022 "repo-process-deb trusty"'
|
|
- bash -c 'ssh -i /tmp/id_repo root@apt.hrfee.dev -p 2022 "rm -f /repo/incoming/*.deb"'
|
|
- name: build-external
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
JFA_GO_SNAPSHOT: y
|
|
JFA_GO_BUILT_BY:
|
|
from_secret: BUILT_BY
|
|
volumes:
|
|
- jfa-go-build-cache:/root/.cache/go-build
|
|
- jfa-go-mod-cache:/go/pkg/mod
|
|
- jfa-go-npm-cache:/npm
|
|
commands:
|
|
- sed -i 's#id="password_resets-watch_directory" placeholder="/config/jellyfin"#id="password_resets-watch_directory" value="/jf" disabled#g' ./build/data/html/setup.html
|
|
- env GOOS=linux INTERNAL=off ./scripts/version.sh goreleaser build --snapshot --id notray-e2ee --clean
|
|
- mv ./dist/notray-e2ee_linux_arm_6 ./dist/notray-e2ee_linux_arm
|
|
- name: container
|
|
image: docker.io/woodpeckerci/plugin-docker-buildx
|
|
settings:
|
|
dry_run: false
|
|
dockerfile: Dockerfile.ci
|
|
username:
|
|
from_secret: DOCKER_USERNAME
|
|
password:
|
|
from_secret: DOCKER_TOKEN
|
|
repo: docker.io/hrfee/jfa-go
|
|
tags: unstable
|
|
registry: docker.io
|
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
build_args:
|
|
- BUILT_BY:
|
|
from_secret: BUILT_BY
|
|
- name: buildrone-container
|
|
image: docker.io/hrfee/jfa-go-build-docker:latest
|
|
environment:
|
|
BUILDRONE_KEY:
|
|
from_secret: BUILDRONE_KEY
|
|
commands:
|
|
- wget https://builds.hrfee.pw/upload.py
|
|
- python3 upload.py https://builds.hrfee.pw hrfee jfa-go --tag docker-unstable=true
|
|
|
|
|