Replace some stuff, add VideoPlayer fix (thanks https://github.com/ccar30)
All checks were successful
main / lint-frontend (push) Successful in 9m44s
main / lint-backend (push) Successful in 13m6s
main / test-frontend (push) Successful in 9m47s
main / test-backend (push) Successful in 10m14s
main / lint (push) Successful in 3s
main / test (push) Successful in 3s
main / release (push) Has been skipped

This commit is contained in:
Midou 2025-05-13 20:31:47 +01:00
parent 35d1c09243
commit bfb8679e91
Signed by: midou
GPG Key ID: 1D134A95FE521A7A
3 changed files with 132 additions and 159 deletions

View File

@ -1,13 +1,10 @@
---
name: main name: main
on: on:
push: push:
branches: branches: [master]
- "master" tags: [v*]
tags:
- "v*"
pull_request: pull_request:
jobs: jobs:
# linters # linters
lint-frontend: lint-frontend:
@ -16,12 +13,12 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: pnpm/action-setup@v4 - uses: pnpm/action-setup@v4
with: with:
package_json_file: "frontend/package.json" package_json_file: frontend/package.json
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: "22.x" node-version: 22.x
cache: "pnpm" cache: pnpm
cache-dependency-path: "frontend/pnpm-lock.yaml" cache-dependency-path: frontend/pnpm-lock.yaml
- run: make lint-frontend - run: make lint-frontend
lint-backend: lint-backend:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -44,12 +41,12 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: pnpm/action-setup@v4 - uses: pnpm/action-setup@v4
with: with:
package_json_file: "frontend/package.json" package_json_file: frontend/package.json
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: "22.x" node-version: 22.x
cache: "pnpm" cache: pnpm
cache-dependency-path: "frontend/pnpm-lock.yaml" cache-dependency-path: frontend/pnpm-lock.yaml
- run: make test-frontend - run: make test-frontend
test-backend: test-backend:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -79,12 +76,12 @@ jobs:
go-version: 1.23.0 go-version: 1.23.0
- uses: pnpm/action-setup@v4 - uses: pnpm/action-setup@v4
with: with:
package_json_file: "frontend/package.json" package_json_file: frontend/package.json
- uses: actions/setup-node@v4 - uses: actions/setup-node@v4
with: with:
node-version: "22.x" node-version: 22.x
cache: "pnpm" cache: pnpm
cache-dependency-path: "frontend/pnpm-lock.yaml" cache-dependency-path: frontend/pnpm-lock.yaml
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v1 uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx - name: Set up Docker Buildx
@ -92,14 +89,15 @@ jobs:
- name: Build frontend - name: Build frontend
run: make build-frontend run: make build-frontend
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v1 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} registry: https://git.linuxcrack.zip
password: ${{ secrets.DOCKERHUB_TOKEN }} username: ${{ gitea.actor }}
password: ${{ secrets.USER_TOKEN }}
- name: Run GoReleaser - name: Run GoReleaser
uses: goreleaser/goreleaser-action@v2 uses: goreleaser/goreleaser-action@v2
with: with:
version: latest version: latest
args: release --clean args: release --clean
env: env:
GITHUB_TOKEN: ${{ secrets.GH_PAT }} GITHUB_TOKEN: ${{ secrets.USER_TOKEN }}

View File

@ -1,193 +1,159 @@
---
version: 2 version: 2
project_name: filebrowser project_name: filebrowser
env: [GO111MODULE=on]
env:
- GO111MODULE=on
builds: builds:
- env: - env: [CGO_ENABLED=0]
- CGO_ENABLED=0
ldflags: ldflags:
- -s -w -X github.com/filebrowser/filebrowser/v2/version.Version={{ .Version }} -X github.com/filebrowser/filebrowser/v2/version.CommitSHA={{ .ShortCommit }} - -s -w -X git.linuxcrack.zip/midou/filebrowser/v2/version.Version={{ .Version }}
-X git.linuxcrack.zip/midou/filebrowser/v2/version.CommitSHA={{ .ShortCommit }}
main: main.go main: main.go
binary: filebrowser binary: filebrowser
goos: goos: [darwin, linux, windows, freebsd]
- darwin goarch: [amd64, 386, arm, arm64, riscv64]
- linux goarm: [5, 6, 7]
- windows
- freebsd
goarch:
- amd64
- 386
- arm
- arm64
- riscv64
goarm:
- 5
- 6
- 7
ignore: ignore:
- goos: darwin - goos: darwin
goarch: 386 goarch: 386
- goos: freebsd - goos: freebsd
goarch: arm goarch: arm
archives: archives:
- - name_template: '{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}'
name_template: "{{.Os}}-{{.Arch}}{{if .Arm}}v{{.Arm}}{{end}}-{{ .ProjectName }}" formats: [tar.gz]
formats: [ 'tar.gz' ]
format_overrides: format_overrides:
- goos: windows - goos: windows
formats: [ 'zip' ] formats: [zip]
dockers: dockers:
- - dockerfile: Dockerfile
dockerfile: Dockerfile
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/amd64" - --platform=linux/amd64
goos: linux goos: linux
goarch: amd64 goarch: amd64
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64" - filebrowser/filebrowser:{{ .Tag }}-amd64
- "filebrowser/filebrowser:v{{ .Major }}-amd64" - filebrowser/filebrowser:v{{ .Major }}-amd64
extra_files: extra_files: [docker_config.json, healthcheck.sh]
- docker_config.json - dockerfile: Dockerfile
- healthcheck.sh
-
dockerfile: Dockerfile
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/arm64" - --platform=linux/arm64
goos: linux goos: linux
goarch: arm64 goarch: arm64
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-arm64" - filebrowser/filebrowser:{{ .Tag }}-arm64
- "filebrowser/filebrowser:v{{ .Major }}-arm64" - filebrowser/filebrowser:v{{ .Major }}-arm64
extra_files: extra_files: [docker_config.json, healthcheck.sh]
- docker_config.json - dockerfile: Dockerfile
- healthcheck.sh
-
dockerfile: Dockerfile
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/arm/v6" - --platform=linux/arm/v6
goos: linux goos: linux
goarch: arm goarch: arm
goarm: '6' goarm: '6'
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-armv6" - filebrowser/filebrowser:{{ .Tag }}-armv6
- "filebrowser/filebrowser:v{{ .Major }}-armv6" - filebrowser/filebrowser:v{{ .Major }}-armv6
extra_files: extra_files: [docker_config.json, healthcheck.sh]
- docker_config.json - dockerfile: Dockerfile
- healthcheck.sh
-
dockerfile: Dockerfile
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/arm/v7" - --platform=linux/arm/v7
goos: linux goos: linux
goarch: arm goarch: arm
goarm: '7' goarm: '7'
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-armv7" - filebrowser/filebrowser:{{ .Tag }}-armv7
- "filebrowser/filebrowser:v{{ .Major }}-armv7" - filebrowser/filebrowser:v{{ .Major }}-armv7
extra_files: extra_files:
- docker_config.json - docker_config.json
- healthcheck.sh - healthcheck.sh
## s6 based docker images ## s6 based docker images
- - dockerfile: Dockerfile.s6
dockerfile: Dockerfile.s6
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/amd64" - --platform=linux/amd64
goos: linux goos: linux
goarch: amd64 goarch: amd64
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - filebrowser/filebrowser:{{ .Tag }}-amd64-s6
- "filebrowser/filebrowser:v{{ .Major }}-amd64-s6" - filebrowser/filebrowser:v{{ .Major }}-amd64-s6
extra_files: extra_files: [docker/root, healthcheck.sh]
- docker/root - dockerfile: Dockerfile.s6.aarch64
- healthcheck.sh
-
dockerfile: Dockerfile.s6.aarch64
use: buildx use: buildx
build_flag_templates: build_flag_templates:
- "--pull" - --pull
- "--label=org.opencontainers.image.created={{.Date}}" - --label=org.opencontainers.image.created={{.Date}}
- "--label=org.opencontainers.image.name={{.ProjectName}}" - --label=org.opencontainers.image.name={{.ProjectName}}
- "--label=org.opencontainers.image.revision={{.FullCommit}}" - --label=org.opencontainers.image.revision={{.FullCommit}}
- "--label=org.opencontainers.image.version={{.Version}}" - --label=org.opencontainers.image.version={{.Version}}
- "--label=org.opencontainers.image.source={{.GitURL}}" - --label=org.opencontainers.image.source={{.GitURL}}
- "--platform=linux/arm64" - --platform=linux/arm64
goos: linux goos: linux
goarch: arm64 goarch: arm64
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - filebrowser/filebrowser:{{ .Tag }}-arm64-s6
- "filebrowser/filebrowser:v{{ .Major }}-arm64-s6" - filebrowser/filebrowser:v{{ .Major }}-arm64-s6
extra_files: extra_files: [docker/root, healthcheck.sh]
- docker/root
- healthcheck.sh
docker_manifests: docker_manifests:
- name_template: "filebrowser/filebrowser:latest" - name_template: filebrowser/filebrowser:latest
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64" - filebrowser/filebrowser:{{ .Tag }}-amd64
- "filebrowser/filebrowser:{{ .Tag }}-arm64" - filebrowser/filebrowser:{{ .Tag }}-arm64
- "filebrowser/filebrowser:{{ .Tag }}-armv7" - filebrowser/filebrowser:{{ .Tag }}-armv7
- name_template: "filebrowser/filebrowser:{{ .Tag }}" - name_template: filebrowser/filebrowser:{{ .Tag }}
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64" - filebrowser/filebrowser:{{ .Tag }}-amd64
- "filebrowser/filebrowser:{{ .Tag }}-arm64" - filebrowser/filebrowser:{{ .Tag }}-arm64
- "filebrowser/filebrowser:{{ .Tag }}-armv7" - filebrowser/filebrowser:{{ .Tag }}-armv7
- name_template: "filebrowser/filebrowser:v{{ .Major }}" - name_template: filebrowser/filebrowser:v{{ .Major }}
image_templates: image_templates:
- "filebrowser/filebrowser:v{{ .Major }}-amd64" - filebrowser/filebrowser:v{{ .Major }}-amd64
- "filebrowser/filebrowser:v{{ .Major }}-arm64" - filebrowser/filebrowser:v{{ .Major }}-arm64
- "filebrowser/filebrowser:v{{ .Major }}-armv7" - filebrowser/filebrowser:v{{ .Major }}-armv7
## s6 image manifests ## s6 image manifests
- name_template: "filebrowser/filebrowser:s6" - name_template: filebrowser/filebrowser:s6
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - filebrowser/filebrowser:{{ .Tag }}-amd64-s6
- "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - filebrowser/filebrowser:{{ .Tag }}-arm64-s6
- name_template: "filebrowser/filebrowser:{{ .Tag }}-s6" - name_template: filebrowser/filebrowser:{{ .Tag }}-s6
image_templates: image_templates:
- "filebrowser/filebrowser:{{ .Tag }}-amd64-s6" - filebrowser/filebrowser:{{ .Tag }}-amd64-s6
- "filebrowser/filebrowser:{{ .Tag }}-arm64-s6" - filebrowser/filebrowser:{{ .Tag }}-arm64-s6
- name_template: "filebrowser/filebrowser:v{{ .Major }}-s6" - name_template: filebrowser/filebrowser:v{{ .Major }}-s6
image_templates: image_templates:
- "filebrowser/filebrowser:v{{ .Major }}-amd64-s6" - filebrowser/filebrowser:v{{ .Major }}-amd64-s6
- "filebrowser/filebrowser:v{{ .Major }}-arm64-s6" - filebrowser/filebrowser:v{{ .Major }}-arm64-s6
brews: brews:
- name: filebrowser - name: filebrowser
repository: repository:
@ -198,5 +164,7 @@ brews:
commit_author: commit_author:
name: FileBrowser Robot name: FileBrowser Robot
email: robot@filebrowser.org email: robot@filebrowser.org
description: File Browser is a create-your-own-cloud-kind of software where you can install it on a server, direct it to a path and then access your files through a nice web interface description: File Browser is a create-your-own-cloud-kind of software where you
license: "MIT" can install it on a server, direct it to a path and then access your files through
a nice web interface
license: MIT

View File

@ -92,10 +92,17 @@ const initVideoPlayer = async () => {
const getOptions = (...srcOpt: any[]) => { const getOptions = (...srcOpt: any[]) => {
const options = { const options = {
controlBar: { controlBar: {
skipButtons: { volumePanel: {},
forward: 5, playbackRateButton: {},
backward: 5, currentTimeDisplay: {},
}, timeDivider: {},
durationDisplay: {},
remainingTimeDisplay: {},
progressControl: {},
liveDisplay: {},
customControlSpacer: {},
playToggle: {},
fullscreenToggle: {},
}, },
html5: { html5: {
nativeTextTracks: false, nativeTextTracks: false,