Commit Graph

241 Commits

Author SHA1 Message Date
datadunia f85db30c2e feat: Reset Device feature + HWID display in Dashboard
CI / build-server-core (push) Successful in 4m38s
CI / build-device-agent (push) Successful in 3m29s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-dashboard (push) Successful in 1m18s
CI / build-docs (push) Successful in 58s
CI / release (push) Successful in 29s
2026-06-17 12:30:06 +07:00
datadunia fc9afd1720 fix(ci): use always()!failure() so builds run when test jobs are skipped
CI / build-server-core (push) Successful in 3m13s
CI / release (push) Successful in 28s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-device-agent (push) Successful in 1m47s
CI / build-dashboard (push) Successful in 57s
CI / build-docs (push) Successful in 51s
Gitea Actions skips dependent jobs when ALL needed jobs are skipped,
unlike GitHub Actions. Adding always()!failure() ensures builds run
for dev/beta tags (tests skipped) while still blocking if tests fail.
2026-06-17 11:48:23 +07:00
datadunia c23e0829cd feat(ci): add draft/prerelease mapping, enforce tests before stable release
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
- release_call.yaml: add draft input, use draft+prerelease in JSON body
- ci.yml test jobs: run for test tags AND stable release tags
- ci.yml build jobs: add needs on test jobs (skipped jobs dont block)
- ci.yml release: draft=true for beta, prerelease=true for dev, plain for stable
2026-06-17 11:45:57 +07:00
datadunia 7b102c94fb chore: update server-core submodule - fix TestDeviceCRUD panic
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-device-agent (push) Successful in 1m43s
CI / build-server-core (push) Successful in 3m17s
CI / build-dashboard (push) Successful in 56s
CI / build-docs (push) Successful in 50s
CI / release (push) Successful in 27s
v1.0.0-test.3
2026-06-17 11:19:17 +07:00
datadunia 5fb815a3c1 fix(ci): move token+persist-credentials to test job checkout, insteadOf after checkout
CI / dashboard-test (push) Successful in 1m24s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
CI / server-core-test (push) Failing after 4m31s
CI / device-agent-test (push) Successful in 1m22s
Test jobs failed because actions/checkout@v4 erases global insteadOf
during 'Setting up auth for fetching submodules', replacing it with
SSH mappings that don't help with x-access-token auth.

Fix: Add token + persist-credentials to checkout (same pattern as
reusable build workflows that pass), and move insteadOf after checkout
as a safety net for subsequent git operations.
2026-06-17 10:56:27 +07:00
datadunia d9bf8d5616 fix(App): add NgToast component (toast notifications now visible)
CI / server-core-test (push) Failing after 13s
CI / device-agent-test (push) Failing after 16s
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
CI / dashboard-test (push) Failing after 14s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
2026-06-17 10:03:25 +07:00
datadunia e45b79c2a8 chore: update dashboard-ui submodule ref 2026-06-17 10:00:29 +07:00
datadunia c3177eb4e4 chore: update dashboard-ui submodule ref 2026-06-17 09:46:12 +07:00
datadunia 6141c2b556 chore: update server-core + dashboard-ui submodule refs 2026-06-17 09:27:38 +07:00
datadunia 8f589901f2 chore: update dashboard-ui submodule ref 2026-06-17 09:03:35 +07:00
datadunia 10a9ae2eac feat(port-forward): sync port forwards to nftables + update docs
- server-core: DNAT + forward rules for TCP/UDP port forwarding
- AGENTS.md: update device-agent description (systray support)
2026-06-17 06:38:04 +07:00
datadunia 53efeab1b3 chore: update device-agent (auto-download wintun.dll)
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 8m16s
CI / build-device-agent (push) Successful in 2m11s
CI / build-docs (push) Successful in 1m6s
CI / build-dashboard (push) Successful in 1m32s
CI / release (push) Successful in 31s
2026-06-10 19:43:23 +07:00
datadunia cc0f01b6ae chore: update device-agent (Windows HWID + provisioning debug)
CI / build-server-core (push) Successful in 5m15s
CI / build-device-agent (push) Successful in 2m53s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-dashboard (push) Successful in 1m10s
CI / build-docs (push) Successful in 1m14s
CI / release (push) Successful in 39s
2026-06-10 19:10:32 +07:00
datadunia 00a0bf661c chore: update device-agent (debug log, platform icons, hide console)
CI / build-server-core (push) Successful in 3m43s
CI / build-device-agent (push) Successful in 1m45s
CI / build-dashboard (push) Successful in 59s
CI / build-docs (push) Successful in 52s
CI / release (push) Successful in 25s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
2026-06-10 18:44:18 +07:00
datadunia 6a27007b53 chore: update device-agent submodule (tray icons + strip build)
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 4m6s
CI / build-device-agent (push) Successful in 1m44s
CI / build-dashboard (push) Successful in 58s
CI / build-docs (push) Successful in 55s
CI / release (push) Successful in 25s
2026-06-10 16:58:44 +07:00
datadunia 2944ca0947 chore: update server-core submodule ref (regenerate-token HWID reset)
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / build-server-core (push) Successful in 6m36s
CI / build-device-agent (push) Successful in 4m20s
CI / dashboard-test (push) Has been skipped
CI / build-dashboard (push) Successful in 1m2s
CI / build-docs (push) Successful in 51s
CI / release (push) Successful in 28s
2026-06-10 15:26:33 +07:00
datadunia 2cfc7408a4 ci: add v*-dev* tag pattern to trigger builds
CI / build-server-core (push) Successful in 4m29s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-device-agent (push) Successful in 1m49s
CI / build-dashboard (push) Successful in 1m11s
CI / build-docs (push) Successful in 58s
CI / release (push) Successful in 27s
2026-06-10 15:01:34 +07:00
datadunia 4c8fe3c8d6 fix: token-derived provisioning encryption (no SERVER_SALT on client) 2026-06-10 14:56:04 +07:00
datadunia 8dd5834be2 ci: revert persist-credentials to true (runner now uses https://git.datadunia.com)
CI / release (push) Successful in 26s
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 3m39s
CI / build-device-agent (push) Successful in 1m35s
CI / build-dashboard (push) Successful in 52s
CI / build-docs (push) Successful in 1m7s
v1.0.0-dev.9
2026-06-10 14:10:54 +07:00
datadunia 9461d6b385 chore: update device-agent submodule ref (CLI args + conf file support)
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Failing after 32s
CI / build-device-agent (push) Failing after 28s
CI / build-dashboard (push) Failing after 27s
CI / build-docs (push) Failing after 27s
CI / release (push) Has been skipped
2026-06-10 13:58:36 +07:00
datadunia c0f18a41a1 ci: fix submodule auth + replace matrix build for device-agent
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 3m44s
CI / build-device-agent (push) Successful in 1m38s
CI / build-dashboard (push) Successful in 3m39s
CI / build-docs (push) Successful in 51s
CI / release (push) Successful in 46s
- persist-credentials: false on all workflows (prevent Gitea overwriting insteadOf URL)
- Replace matrix strategy in build_device_agent.yaml with sequential builds (act_runner v0.6.1 ParallelExecutor crash)
- Build all 3 platforms (linux/amd64, linux/arm64, windows/amd64) in single step
2026-06-10 11:04:48 +07:00
datadunia 96248d3d31 ci: downgrade upload/download-artifact v4 to v3
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Successful in 6m58s
CI / build-dashboard (push) Successful in 1m4s
CI / build-docs (push) Successful in 52s
CI / release (push) Has been cancelled
CI / build-device-agent (push) Has been cancelled
Gitea self-hosted 1.26.1 does not support @actions/artifact v2.0.0+
(upload-artifact@v4+, download-artifact@v4+). Use v3 instead.
2026-06-10 09:42:47 +07:00
datadunia bfb6dcc42f ci: skip tests for dev/beta/release, test-only for test tags
CI / server-core-test (push) Has been skipped
CI / device-agent-test (push) Has been skipped
CI / dashboard-test (push) Has been skipped
CI / build-server-core (push) Failing after 4m46s
CI / build-dashboard (push) Failing after 1m17s
CI / build-docs (push) Failing after 1m5s
CI / release (push) Has been cancelled
CI / build-device-agent (push) Has been cancelled
- Test jobs: add if: contains(gitea.ref_name, 'test')
- Build jobs: remove needs dependency on tests
- dev/beta/release: build+release directly, no tests
- test tags: tests only, no build
2026-06-10 09:26:25 +07:00
datadunia 9470435704 ci: add secrets: inherit to build workflow calls
CI / server-core-test (push) Successful in 5m59s
CI / device-agent-test (push) Successful in 1m19s
CI / dashboard-test (push) Successful in 1m9s
CI / build-server-core (push) Failing after 4m44s
CI / build-device-agent (push) Failing after 2m0s
CI / build-docs (push) Has been cancelled
CI / release (push) Has been cancelled
CI / build-dashboard (push) Has been cancelled
Reusable workflows dont inherit secrets from caller by default.
secrets.BUILD_TOKEN was empty string, causing:
  ::error::Input required and not supplied: token

Added secrets: inherit to all 4 build workflow calls in ci.yml.
2026-06-10 09:21:50 +07:00
datadunia c37d4a751c ci: fix build workflows - remove defaults.run.working-directory
CI / build-server-core (push) Failing after 26s
CI / build-dashboard (push) Failing after 20s
CI / build-docs (push) Failing after 20s
CI / server-core-test (push) Successful in 5m33s
CI / device-agent-test (push) Successful in 1m22s
CI / dashboard-test (push) Successful in 1m5s
CI / build-device-agent (push) Failing after 20s
CI / release (push) Has been skipped
All 4 build jobs failed because defaults.run.working-directory
chdir'd into subdirs before checkout created them.

- Remove defaults.run.working-directory from all reusable workflows
- Add per-step working-directory to run steps that need it
- Auth config step runs from repo root (no working-directory)
2026-06-10 09:05:26 +07:00
datadunia 072aa48db0 ci: update server-core submodule with test fixes
CI / server-core-test (push) Successful in 5m23s
CI / device-agent-test (push) Successful in 1m25s
CI / dashboard-test (push) Successful in 1m10s
CI / build-server-core (push) Failing after 48s
CI / build-device-agent (push) Failing after 16s
CI / build-dashboard (push) Failing after 16s
CI / build-docs (push) Failing after 18s
CI / release (push) Has been skipped
2026-06-10 08:33:40 +07:00
datadunia 47ca075bc0 ci: remove env vars from server-core-test, update submodule
CI / server-core-test (push) Failing after 5m31s
CI / device-agent-test (push) Successful in 1m21s
CI / dashboard-test (push) Successful in 1m11s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 08:04:30 +07:00
datadunia 8938d842db ci: skip nftables tests, add env vars for server-core
CI / server-core-test (push) Failing after 6m19s
CI / device-agent-test (push) Successful in 1m30s
CI / dashboard-test (push) Successful in 1m1s
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
2026-06-10 07:00:04 +07:00
datadunia 710cc6537e ci: add swag init step before server-core test
CI / server-core-test (push) Failing after 5m46s
CI / device-agent-test (push) Successful in 1m29s
CI / dashboard-test (push) Successful in 1m27s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 06:41:40 +07:00
datadunia 224a84e856 ci: fix working-directory defaults breaking pre-checkout steps
CI / device-agent-test (push) Has been cancelled
CI / dashboard-test (push) Has been cancelled
CI / build-server-core (push) Has been cancelled
CI / build-device-agent (push) Has been cancelled
CI / build-dashboard (push) Has been cancelled
CI / build-docs (push) Has been cancelled
CI / release (push) Has been cancelled
CI / server-core-test (push) Has been cancelled
2026-06-10 05:08:26 +07:00
datadunia 062e82bd97 ci: cleanup script + .gitignore for scripts/
CI / server-core-test (push) Failing after 8s
CI / build-dashboard (push) Has been skipped
CI / release (push) Has been skipped
CI / device-agent-test (push) Failing after 6s
CI / dashboard-test (push) Failing after 7s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-docs (push) Has been skipped
2026-06-10 05:05:44 +07:00
datadunia 43fd852b3e ci: use git URL rewrite with token for submodule auth 2026-06-10 05:02:41 +07:00
datadunia 946334ffc7 ci: rewrite git.datadunia.com to 172.20.8.90:3000 for submodule auth 2026-06-10 04:56:18 +07:00
datadunia 94ed6a8184 ci: fix submodule URLs to HTTPS for reverse proxy
CI / dashboard-test (push) Failing after 18s
CI / server-core-test (push) Failing after 15s
CI / device-agent-test (push) Failing after 14s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 04:52:34 +07:00
datadunia 5b5a4aa009 ci: add BUILD_TOKEN for submodule checkout authentication
CI / server-core-test (push) Failing after 18s
CI / device-agent-test (push) Failing after 14s
CI / dashboard-test (push) Failing after 15s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 04:26:22 +07:00
datadunia 0a22ecd13f chore: update device-agent submodule ref
CI / server-core-test (push) Failing after 20s
CI / device-agent-test (push) Failing after 14s
CI / dashboard-test (push) Failing after 17s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 04:01:54 +07:00
datadunia 56d70ed031 ci: test always runs, test tags skip build/release
CI / server-core-test (push) Failing after 24s
CI / device-agent-test (push) Failing after 20s
CI / dashboard-test (push) Failing after 23s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / build-docs (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 03:47:00 +07:00
datadunia 3133671c02 ci: test only for tags with 'test' in name 2026-06-10 03:45:01 +07:00
datadunia 5fa9f414b0 ci: trigger only on tags, remove push/PR triggers
CI / server-core-test (push) Failing after 4s
CI / device-agent-test (push) Failing after 4s
CI / dashboard-test (push) Failing after 4s
CI / build-docs (push) Failing after 9s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 03:42:28 +07:00
datadunia 233f14f998 chore: update server-core submodule ref (Swaggo fix)
CI / server-core-test (push) Failing after 4s
CI / device-agent-test (push) Failing after 4s
CI / dashboard-test (push) Failing after 4s
CI / build-docs (push) Has been skipped
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 03:33:08 +07:00
datadunia c5364cf5ba ci: unify workflows - split build per component, single tag-triggered pipeline
CI / server-core-test (push) Failing after 4s
CI / device-agent-test (push) Failing after 4s
CI / dashboard-test (push) Failing after 4s
CI / build-docs (push) Failing after 9s
CI / build-server-core (push) Has been skipped
CI / build-device-agent (push) Has been skipped
CI / build-dashboard (push) Has been skipped
CI / release (push) Has been skipped
2026-06-10 03:29:59 +07:00
datadunia 60d326880a docs: reorganize documentation with i18n and Swagger API reference
- Add per-submodule docs structure (server-core, dashboard-ui, device-agent)
- Restructure VitePress with i18n support (Indonesian default + English)
- Add Swagger API reference pages with Swagger UI CDN embed
- Create merge.js script for combining sidebar manifests
- Integrate docs build into Docker (update.sh + nginx volume mount)
- Add documentation section to root README
2026-06-10 02:36:24 +07:00
datadunia 13e8787553 chore(gitignore): update device-agent submodule ref
NexusGuard CI / server-core-test (push) Failing after 4s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 4s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 4s
NexusGuard CI / dashboard-dist (push) Has been skipped
2026-06-09 21:45:22 +07:00
datadunia 5795677fd1 chore(gitignore): exclude test artifacts (*-test)
NexusGuard CI / server-core-test (push) Failing after 4s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 4s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 4s
NexusGuard CI / dashboard-dist (push) Has been skipped
2026-06-09 21:44:35 +07:00
datadunia 7cae9dacf0 chore(gitignore): reorganize .omo and .sisyphus patterns
NexusGuard CI / server-core-test (push) Failing after 3m3s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 4s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 5s
NexusGuard CI / dashboard-dist (push) Has been skipped
Consolidate duplicate entries and group plugin config directories
under a single comment block for clarity.
2026-06-09 21:22:51 +07:00
datadunia a745e84470 feat: Phase 3 — RBAC, device health dashboard, Swaggo annotations
Platform enhancements across server-core and dashboard:
- RBAC: Admin + Viewer roles on User model, RequireRole middleware
- All isAdmin() calls replaced with role-based access checks
- Device health API endpoint and dashboard page
- Swaggo annotations for auto-generated API docs
- Fixed Forwards.vue TypeScript type mismatch
2026-06-09 19:56:42 +07:00
datadunia 68a6270b8c feat: add port forwarding (Phase 2)
- Server: PortForward model + CRUD API (5 endpoints)
- Agent: TCP/UDP forwarder engine + client API + CLI commands
- Dashboard: Forwards management page with create/delete

Submodules: server-core, device-agent, dashboard-ui
2026-06-09 08:13:44 +07:00
datadunia 6b47f9af17 fix(firewall): update server-core — addRule insert→append fix
NexusGuard CI / server-core-test (push) Failing after 3s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 3s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 4s
NexusGuard CI / dashboard-dist (push) Has been skipped
2026-06-08 06:43:45 +07:00
datadunia bd93d37645 fix(firewall): update server-core submodule — remove legacy chain rules
NexusGuard CI / server-core-test (push) Failing after 5s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 3s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 3s
NexusGuard CI / dashboard-dist (push) Has been skipped
2026-06-08 06:36:02 +07:00
datadunia 2e7a6aba90 feat(traffic): deploy hourly aggregation + server pagination
NexusGuard CI / server-core-test (push) Failing after 4s
NexusGuard CI / server-core-build (push) Has been skipped
NexusGuard CI / device-agent-test (push) Failing after 4s
NexusGuard CI / device-agent-cross-build (amd64, linux) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (amd64, windows) (push) Has been skipped
NexusGuard CI / device-agent-cross-build (arm64, linux) (push) Has been skipped
NexusGuard CI / dashboard-test (push) Failing after 4s
NexusGuard CI / dashboard-dist (push) Has been skipped
2026-06-08 05:44:55 +07:00