- Introduce SQLite persistence via GORM (stored at <data>/.ushare.db) - Add Role model with two built-in roles: admin (all perms) and user (upload only) - Add three permissions: user_manage, upload, token_manage (reserved) - Rewrite UserManager: DB-backed login with in-memory session tokens - Auto-seed default roles and admin user on first startup - Add AuthPermission middleware for fine-grained permission checks - Add /api/uauth/me endpoint for current session info - Add /api/admin/* CRUD routes for user and role management - Add admin console page (/admin) with user table and role permissions view - Show admin console link in share page for users with user_manage permission 🤖 Generated with [Qoder][https://qoder.com]
37 lines
925 B
YAML
37 lines
925 B
YAML
run-name: build ushare
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
jobs:
|
|
build ushare:
|
|
runs-on: debian
|
|
steps:
|
|
- name: prepare enviroment
|
|
uses: actions/checkout@v4
|
|
|
|
- name: prints info
|
|
run: |
|
|
date '+%Y-%m-%dT%H:%M:%S'
|
|
whoami
|
|
echo "Tag name = ${{ gitea.ref_name }}"
|
|
pwd & ls -alsh .
|
|
|
|
- name: build image by docker build
|
|
run: docker build -t gitea.loveuer.com/loveuer/build/ushare:${{ gitea.ref_name }} .
|
|
|
|
- name: login repository
|
|
run: echo ${{ secrets.DOCKER_REPOSITORY_PASSWORD }} | docker login --username loveuer --password-stdin gitea.loveuer.com/loveuer
|
|
|
|
- name: push image to repository
|
|
run: docker push gitea.loveuer.com/loveuer/build/ushare:${{ gitea.ref_name }}
|
|
|
|
clean:
|
|
if: always()
|
|
runs-on: debian
|
|
steps:
|
|
- name: clean docker config
|
|
run: |
|
|
rm -rf .docker.config.json
|