Commit Graph

32 Commits

Author SHA1 Message Date
ryan b8488785f8 Merge branch 'main' of https://git.arctel.net/Arctel/ATSFlare 2026-03-13 16:02:05 +08:00
ryan 8c3dd75802 feat: 添加支持文件路径处理函数,增强证书目录路径验证和日志记录功能 2026-03-13 16:01:52 +08:00
ryan cf105ff042 [优化] 日志优化 2026-03-13 15:27:12 +08:00
ryan 6d58d00c9d feat: 重构日志处理,使用slog包替换原有日志函数,增强日志记录能力 2026-03-13 15:25:33 +08:00
ryan aeb7118b30 Refactor logging to use slog package across the application
- Replaced standard log package with log/slog in httpclient, nginx manager, sync service, updater, and other components for structured logging.
- Introduced environment variable `LOG_LEVEL` to control logging levels (debug, info, warn, error).
- Updated documentation to reflect changes in logging configuration and requirements.
- Added a new logging setup function in the ats_agent internal package to initialize the slog logger.
2026-03-13 14:53:51 +08:00
ryan 4ba479576b feat: 添加获取TLS证书内容的API和前端支持,更新相关组件 2026-03-13 14:14:53 +08:00
ryan a0f920cf05 feat: 添加TLS证书详情和编辑功能,更新相关API和前端组件 2026-03-13 13:45:29 +08:00
ryan 3fb4cec99c [优化] 接口优化, 心跳请求返回规则摘要 2026-03-13 11:22:37 +08:00
ryan e34446bce8 [优化] 增加 OpenResty 配置选项和性能页面工具提示 2026-03-13 00:18:09 +08:00
ryan 238546b358 feat: split openresty settings into performance page 2026-03-12 23:51:57 +08:00
ryan f47749c103 Merge commit '63219e4802e99d87b0b3ce28349aa464d4331456' 2026-03-12 23:24:23 +08:00
ryan 594057be06 feat: enhance apply logs and config versions features
- Add detailed diff reporting for OpenResty options in TestPreviewAndDiffConfigVersion.
- Update ApplyLogsPage to display additional log details including checksums and support file counts.
- Introduce ConfigVersionSnapshotModal for viewing configuration snapshots.
- Refactor config versions page to utilize new snapshot modal and improve option diff display.
- Extend ApplyLogItem type to include checksums and support file count.
- Enhance NodeDetailPage to show target version details and checksums.
2026-03-12 22:49:18 +08:00
ryan 4c0466a92b feat: enhance configuration management with main and route configs
- Added `main_config` and `route_config` fields to ActiveConfigResponse and AgentConfigResponse for better configuration handling.
- Updated NginxManager interface to accept separate main and route configurations.
- Modified sync service to apply main and route configurations correctly.
- Enhanced tests to validate new configuration fields and their application.
- Updated ConfigVersion model to include main configuration.
- Improved rendering logic for main and route configurations in the service layer.
- Added UI components to display main configuration changes and OpenResty parameter changes.
2026-03-12 22:26:06 +08:00
copilot-swe-agent[bot] 63219e4802 fix: skip version check for preview channel and add upload progress bar
Co-authored-by: Rain-kl <63696351+Rain-kl@users.noreply.github.com>
2026-03-12 12:40:20 +00:00
ryan 001f106b82 [修复] 升级功能问题修复 2026-03-12 19:16:20 +08:00
ryan 42ca18681c feat: openresty状态上报 2026-03-12 15:22:39 +08:00
ryan f50eb9adee feat: add support for release channels in version upgrade and node agent updates
- Introduced ReleaseChannel type to manage stable and preview releases.
- Updated DashboardTopbar to handle version upgrades based on selected release channel.
- Enhanced node detail page to allow manual checks for agent updates on stable and preview channels.
- Modified API endpoints to support fetching and upgrading based on release channels.
- Updated UI components to reflect changes in version checking and upgrade processes.
- Added tests for new functionality related to preview releases and agent updates.
2026-03-12 11:25:13 +08:00
ryan 93e43fb3b0 feat: add manual server binary upload and confirmation upgrade process
- Implemented UploadManualServerBinary endpoint for uploading server binaries and checking their versions.
- Added ConfirmManualServerUpgrade endpoint to confirm the upgrade with the uploaded binary.
- Updated API routes to include manual upload and upgrade confirmation.
- Enhanced service layer to handle manual binary uploads, version detection, and upgrade execution.
- Introduced new types for handling uploaded binary information.
- Updated frontend components to support manual binary upload and confirmation, including UI feedback for users.
- Modified documentation to reflect new manual upload and upgrade features.
2026-03-12 10:34:31 +08:00
ryan 27f96fa353 Refactor code structure for improved readability and maintainability 2026-03-11 22:58:24 +08:00
ryan c240838692 feat: 增强更新功能,支持开发版本的自我升级检查;优化仪表板和应用日志页面的用户界面 2026-03-11 22:19:27 +08:00
ryan 6140ed1718 feat: implement server self-upgrade functionality
- Added update service to fetch the latest server release from GitHub.
- Implemented server upgrade scheduling and execution logic.
- Created platform-specific restart mechanisms for Unix and Windows.
- Introduced API endpoints for fetching the latest release and triggering upgrades.
- Developed UI components for version upgrade modal, including loading and error states.
- Updated documentation to reflect new upgrade features and instructions.
- Refactored settings types to streamline interface definitions.
2026-03-11 22:05:42 +08:00
ryan e72d658e2f feat: 添加节点自动更新功能,支持手动触发更新 2026-03-10 20:32:27 +08:00
ryan 83a11ead2b feat: add OperationSetting component and integrate into settings page
- Introduced OperationSetting component for managing agent configurations.
- Updated settings page to include a new tab for operation settings.
- Implemented functionality to fetch and update agent parameters such as heartbeat interval, sync interval, and auto-update settings.

docs: enhance deployment documentation for agent installation

- Added detailed instructions for agent installation using a script.
- Included examples for using discovery and agent tokens.
- Updated sections on global discovery tokens and agent auto-update features.

docs: revise design and development guidelines for V3

- Updated design document to reflect the current state and goals for V3.
- Clarified development guidelines to focus on operational experience improvements.

ci: add GitHub Actions workflow for agent releases

- Created a new workflow to automate the release of agent binaries on GitHub.
- Configured the workflow to build binaries for multiple platforms and publish them as releases.

feat: implement self-update mechanism for agent

- Added updater module to handle checking for and applying updates from GitHub releases.
- Implemented logic to restart the agent after a successful update.

chore: create install script for agent deployment

- Developed a bash script to facilitate the installation of the ATSFlare agent.
- The script supports automatic configuration and systemd service creation.
2026-03-10 20:22:42 +08:00
ryan 9d4f4450ca [优化] 更新包名 2026-03-10 17:07:36 +08:00
ryan 08e4de4898 feat: add preview and diff endpoints for config versions
- Implemented PreviewConfigVersion and DiffConfigVersion functions to provide configuration previews and differences.
- Updated API router to include new endpoints for preview and diff.
- Enhanced config version publishing to include custom headers in the rendered configuration.
- Added tests for preview and diff functionalities, ensuring correct behavior with custom headers.
- Updated frontend to support previewing and publishing configurations with a detailed change summary.
2026-03-10 16:23:49 +08:00
ryan 92d22fc02c feat: 添加节点管理功能,支持全局 discovery token 生成与旋转,更新节点注册流程 2026-03-10 15:48:34 +08:00
ryan 05e75549d2 feat: Implement node management features including creation, updating, and deletion
- Added CreateNode, UpdateNode, and DeleteNode functions in the controller for managing nodes.
- Introduced NodeInput struct for input validation during node creation and updates.
- Enhanced the Node model to include DiscoveryToken and Pending status.
- Updated the AgentRegister and AgentHeartbeat functions to utilize the new node management logic.
- Refactored the API router to include new routes for node management.
- Improved the frontend Node component to support node creation, editing, and deletion with appropriate UI feedback.
- Added tests to ensure the new functionality works as expected.
2026-03-10 15:33:06 +08:00
ryan e7dc18e6ca feat: enhance logging for agent registration, heartbeat, and configuration sync processes 2026-03-10 14:55:35 +08:00
ryan 7be2da0c19 feat: add managed domain functionality with matching certificate feature
- Implemented managed domain CRUD operations in the backend with appropriate service and controller logic.
- Added matching logic for managed domains to automatically suggest certificates based on domain input.
- Enhanced the frontend to support managed domain management, including form handling and displaying match results.
- Updated header component to include new managed domain routes.
- Added tests for managed domain lifecycle and matching logic.
2026-03-10 13:07:16 +08:00
ryan 2cbaf95eae feat: add TLS certificate management functionality
- Implemented TLS certificate model and service for managing certificates.
- Added API endpoints for creating, importing, listing, and deleting TLS certificates.
- Enhanced proxy route configuration to support HTTPS with certificate selection.
- Updated frontend to include TLS certificate management UI with manual and file import options.
- Added validation for HTTPS routes to ensure certificates are selected.
- Implemented tests for TLS certificate creation and proxy route validation.
2026-03-10 10:44:29 +08:00
ryan 2ac083a225 添加代理节点功能,包括节点注册、心跳检测和配置获取,完善相关API路由和服务逻辑 2026-03-09 23:05:35 +08:00
ryan 8f55d83b34 添加代理路由和配置版本的控制器与服务,更新数据库模型,完善API路由 2026-03-09 22:53:51 +08:00