Files
opencatd-open/Makefile
T
Sakurasan 094230a293 feat: API key management improvements
- Rename routes: /dashboard/tokens → /dashboard/apikeys, /dashboard/manager/keys → /dashboard/manager/channels
- Add KeyPlain field to store plaintext API keys for re-viewing
- API key list shows masked key (sk-ot-123456****abcd) with eye toggle to reveal
- Copy button with 2s feedback on key list
- TokenNew shows full key + copy after creation
- Increase key prefix display to 12 characters
- Fix SQLite driver: replace gorm.io/driver/sqlite with ncruces/go-sqlite3/gormlite
- Fix user.status === 'active' checks across frontend views
- Add channel store for new channels API
- Update Makefile frontend build to work reliably

BREAKING CHANGE: Existing API keys created before this change will not show their plaintext value (only prefix visible).
2026-08-30 15:21:49 +08:00

69 lines
1.6 KiB
Makefile

.PHONY: build run test clean fmt lint frontend
BINARY_NAME=openteam
BUILD_DIR=bin
BACKEND_DIR=backend
# Build
build: frontend
cd $(BACKEND_DIR) && CGO_ENABLED=0 go build -o ../$(BUILD_DIR)/$(BINARY_NAME) ./cmd/openteam
# Build frontend and copy dist
frontend:
cd frontend && pnpm install && pnpm build
rm -rf $(BACKEND_DIR)/cmd/openteam/dist
cp -r frontend/dist $(BACKEND_DIR)/cmd/openteam/dist
# Run
run: build
./$(BUILD_DIR)/$(BINARY_NAME)
# Development run
dev:
cd $(BACKEND_DIR) && go run ./cmd/openteam
# Test
test:
cd $(BACKEND_DIR) && go test ./internal/... -v
# Test with coverage
test-cover:
cd $(BACKEND_DIR) && go test ./internal/... -coverprofile=coverage.out
cd $(BACKEND_DIR) && go tool cover -html=coverage.out -o coverage.html
# Format code
fmt:
cd $(BACKEND_DIR) && go fmt ./...
# Lint
lint:
cd $(BACKEND_DIR) && golangci-lint run
# Clean
clean:
rm -rf $(BUILD_DIR)
cd $(BACKEND_DIR) && rm -f coverage.out coverage.html
# Tidy dependencies
tidy:
cd $(BACKEND_DIR) && go mod tidy
# Build for Linux
build-linux:
cd $(BACKEND_DIR) && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o ../$(BUILD_DIR)/$(BINARY_NAME)-linux-amd64 ./cmd/openteam
# Build for macOS
build-mac:
cd $(BACKEND_DIR) && CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -o ../$(BUILD_DIR)/$(BINARY_NAME)-darwin-arm64 ./cmd/openteam
# Build all platforms
build-all: build-linux build-mac
# Database migration (will be implemented)
migrate:
@echo "Migration will be implemented in future"
# Seed data (will be implemented)
seed:
@echo "Seeding will be implemented in future"