yusing
293bb80f0b
refactor: rename utils/testing to expect, replace all dot imports in tests
2025-04-17 15:45:30 +08:00
yusing
1fe21b84eb
refactor: unify route handling by consolidating route query methods with Pool
...
- Replaced direct calls to routequery with a new routes package for better organization and maintainability.
- Updated various components to utilize the new routes methods for fetching health information, homepage configurations, and route aliases.
- Enhanced the overall structure of the routing logic to improve clarity and reduce redundancy.
2025-04-17 14:44:12 +08:00
yusing
7f4b04efb7
chore: cont. 0866feb
2025-04-17 14:32:59 +08:00
Yuzerion
80bc018a7f
feat: custom json marshaling implementation, replace json and yaml library ( #89 )
...
* chore: replace gopkg.in/yaml.v3 vs goccy/go-yaml; replace encoding/json with bytedance/sonic
* fix: yaml unmarshal panic
* feat: custom json marshaler implementation
* chore: fix import and err marshal handling
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-04-16 15:02:11 +08:00
Yuzerion
57292f0fe8
feat: proxmox idlewatcher ( #88 )
...
* feat: idle sleep for proxmox LXCs
* refactor: replace deprecated docker api types
* chore(api): remove debug task list endpoint
* refactor: move servemux to gphttp/servemux; favicon.go to v1/favicon
* refactor: introduce Pool interface, move agent_pool to agent module
* refactor: simplify api code
* feat: introduce debug api
* refactor: remove net.URL and net.CIDR types, improved unmarshal handling
* chore: update Makefile for debug build tag, update README
* chore: add gperr.Unwrap method
* feat: relative time and duration formatting
* chore: add ROOT_DIR environment variable, refactor
* migration: move homepage override and icon cache to $BASE_DIR/data, add migration code
* fix: nil dereference on marshalling service health
* fix: wait for route deletion
* chore: enhance tasks debuggability
* feat: stdout access logger and MultiWriter
* fix(agent): remove agent properly on verify error
* fix(metrics): disk exclusion logic and added corresponding tests
* chore: update schema and prettify, fix package.json and Makefile
* fix: I/O buffer not being shrunk before putting back to pool
* feat: enhanced error handling module
* chore: deps upgrade
* feat: better value formatting and handling
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-04-16 14:52:33 +08:00
yusing
6a5d324733
refactor: move favicon into homepage module
2025-04-10 06:04:14 +08:00
yusing
be85633c32
fix(agent): fix agent host validatation and improve file path handling
2025-03-29 16:44:16 +08:00
yusing
146e7781be
fix: limit redirect count when parsing html for favicon, fix url sanitize method
2025-03-29 09:35:12 +08:00
yusing
f966ca8b83
feat: update cookie security settings to use API_JWT_SECURE environment variable
2025-03-28 08:51:45 +08:00
yusing
7707fc6f36
api: docker endpoints
2025-03-28 08:14:06 +08:00
yusing
765328affb
api: system metrics endpoint
2025-03-28 08:14:06 +08:00
yusing
d961c11eb7
api: health endpoint support plain or ws based on request
2025-03-28 07:39:26 +08:00
yusing
90f8e82f14
refactor: error http handling
2025-03-28 07:39:26 +08:00
yusing
7093985b57
refactor: clean up api handler
2025-03-28 07:39:26 +08:00
yusing
a557684542
api: manual cert renewal support, new api endpoint
2025-03-28 07:39:26 +08:00
yusing
b0876331e6
refactor: rename api/v1/file.go to config_file.go, updated error handling
2025-03-28 07:39:26 +08:00
yusing
cba7338d8d
auth: support for end_session_endpoint discovery, remove OIDC_LOGOUT_URL
2025-03-28 07:39:26 +08:00
yusing
f72d9aee80
auth: implement block page on invalid credentials
2025-03-28 07:39:26 +08:00
yusing
480fb4818c
api: allow authentication when on http
2025-03-28 07:39:26 +08:00
yusing
78a3c8a8e4
api: add DEBUG_DISABLE_AUTH for debugging
2025-03-28 07:39:26 +08:00
yusing
4a2cc70b52
refactor: rename module 'err' to 'gperr' and use gphttp error handling
2025-03-28 07:39:26 +08:00
yusing
c0c6e21a16
refactor: improved json loading flow and log messages
2025-03-28 07:39:26 +08:00
yusing
8c03c5e82e
refactor: improved memlogger and remove html log formatting
2025-03-28 07:39:26 +08:00
yusing
dfd2f3962c
refactor: move api/v1/utils to net/gphttp
2025-03-28 07:39:26 +08:00
yusing
47ab6b8a92
feat: godoxy agent
2025-03-28 03:36:35 +08:00
yusing
17ef5cb9a5
security: sanitize uri
2025-03-22 23:58:37 +08:00
yusing
f6dc432419
refactor: fix code formatting and return flow
2025-03-01 15:50:50 +08:00
Yuzerion
1a5f3735cf
Feat/fileserver ( #60 )
...
* cleanup code for URL type
* fix makefile for trace mode
* refactor, merge Entry, RawEntry and Route into one.
* Implement fileserver.
* refactor: rename HTTPRoute to ReverseProxyRoute to avoid confusion
* refactor: move metrics logger to middleware package
- fix prometheus metrics for load balanced routes
- route will now fail when health monitor fail to start
* fix extra output of ls-* commands by defer initializaing stuff, speed up start time
* add test for path traversal attack, small fix on FileServer.Start method
* rename rule.on.bypass to pass
* refactor and fixed map-to-map deserialization
* updated route loading logic
* schemas: add "add_prefix" option to modify_request middleware
* updated route JSONMarshalling
---------
Co-authored-by: yusing <yusing@6uo.me>
2025-02-06 18:23:10 +08:00
yusing
0c7b188587
api: fix search icon returning null when no match
2025-02-02 03:31:52 +08:00
yusing
4c97b79adf
log prometheus enabled
2025-02-02 03:21:39 +08:00
yusing
0d518166ee
api: move prometheus handler inside api handler /v1/metrics
2025-02-01 02:09:43 +08:00
yusing
b6e468e54e
remove schema from dockerfile and code, dependencies upgrade
2025-01-30 00:43:25 +08:00
yusing
d9b6b82f07
api: response error in json instead of html for better rendering flexibility
2025-01-29 11:50:08 +08:00
yusing
83ea19dd92
api: added validation endpoint
2025-01-26 14:47:33 +08:00
yusing
7ec42dce4d
improved implementation of converting ANSI color to HTML
2025-01-26 14:46:43 +08:00
yusing
1586610a44
Cleaned up some validation code, stricter validation
2025-01-26 14:43:48 +08:00
yusing
9936b3af5b
improved homepage config implementation
2025-01-24 05:11:35 +08:00
yusing
648fd23a57
feat: oidc support OIDC_LOGOUT_URL
2025-01-24 00:34:50 +08:00
yusing
b9882f8985
updated implementation of (un)hiding items
2025-01-23 12:52:15 +08:00
yusing
79f40f3d22
implement icon cache expiry, cleanup code and upgrade deps
2025-01-23 04:16:06 +08:00
yusing
ed3b26653c
fix log wrapped incorrectly in WebUI, implement log SSR
2025-01-23 00:08:19 +08:00
yusing
b984386bab
fix: high cpu usage
2025-01-22 05:44:04 +08:00
yusing
2c43f1412e
fix OIDC middleware callback URL
2025-01-21 12:42:56 +08:00
yusing
5faba1b5a9
fix svg content type
2025-01-21 10:07:53 +08:00
yusing
4e7bd3579b
fix favicon content type
2025-01-21 09:36:17 +08:00
yusing
49da8a31d2
api: fix not getting correct icon
2025-01-21 09:31:51 +08:00
yusing
dd2b8f600d
api: allow favicon endpoint to use url instead of alias
2025-01-21 06:48:56 +08:00
yusing
8b1a3a31ff
simplify icon caching and homepage item override
2025-01-21 06:16:00 +08:00
yusing
64e85c3076
feat: support selfh.st icons, support homepage config overriding
2025-01-20 17:42:17 +08:00
yusing
68771ce399
api: added some endpoints for dashboard filter to work
2025-01-20 06:17:18 +08:00