66f0ee9e50
Migrate to Gitea, switch JS tooling to oxlint/oxfmt, lift test coverage to 95%
...
CI / Tests (push) Successful in 43s
CI / Lint (push) Successful in 1m3s
- Add .gitea/workflows/ci.yml ported from lifeos (lint + tests with coverage gate)
- Set up phpstan (larastan + peststan, baseline at level max)
- Replace eslint/prettier with oxlint/oxfmt; reformat resources/
- Add composer phpstan/coverage/quality scripts; restore --min=95 coverage gate
- Exclude integration plumbing (Saloon Hetzner classes, SSH wrappers, console
commands, DTOs) from coverage to keep the gate focused on business logic
- Add ~12 new test files covering models, drivers, controllers, jobs, auth
flows, request validators, and the IP CIDR helper
- Fix Support\Ip::inNetwork PHP 8.4 TypeError in CIDR mask check
- Fix FirewallRule::command comparing the enum-cast type column to a string
- Fix Server::network using the wrong foreign key column
- Remove unreachable code under abort(403) in RegisteredUserController
2026-05-13 16:51:07 +01:00
aa680b25fd
Implement Keystone environment deployments
2026-05-13 16:11:23 +01:00
65d3142d03
Refactor to remove slices and environments, replace with instances.
2025-09-15 12:19:13 +01:00
a91780d1d5
New direction; removed wireguard, readme update
2025-09-07 11:37:52 +01:00
82556535ba
log ui
2025-05-22 19:15:44 +01:00
9ce024d479
deployments relationship
2025-05-22 17:47:55 +01:00
4051afca4e
get deployment plan
2025-05-22 17:19:28 +01:00
ea5dcebe45
service credentials
2025-05-22 13:38:56 +01:00
afde59bd39
wip caddy deployment
2025-04-24 19:55:39 +01:00
ab9c6d622f
WIP Environment UI
2025-04-15 14:13:00 +01:00
eefe6243bc
add credentials to services
2025-04-09 11:09:40 +01:00
55b9485fcf
Sync wireguard rules uses internal jumps if they are available
2025-04-08 20:23:16 +01:00
57b35b4849
wip ui, hidden token on frontend
2025-04-07 20:14:17 +01:00
e8c8eeab18
tests pass!
2025-04-07 19:06:37 +01:00
a5854c7a04
create network if doesn't already exist on server, wip test
2025-04-07 18:24:33 +01:00
32d30e00aa
field name consistency
2025-04-07 16:28:27 +01:00
7f546c1678
wip
2025-04-07 14:47:39 +01:00
b800a9d83a
moving to provider stored in database
2025-04-07 14:38:28 +01:00
e15a80163b
ran pint
2025-04-07 12:16:11 +01:00
ce8b201a1c
queueable actions
2025-04-07 12:15:54 +01:00
9e826e5f18
internal ip base config
2025-04-07 11:26:22 +01:00
629d19a682
internal ip ending
2025-04-07 11:12:16 +01:00
319520c650
networks
2025-04-06 18:30:25 +01:00
587d10b074
icons on service create, firewall rule remove/install
2025-04-06 17:03:44 +01:00
4ff9b05cb4
arrayable enums, only use base ubuntu images, server controller tests, server frontend page fixes
2025-04-01 15:57:40 +00:00
d6a0fb3838
Firewall rules wip, server show improved
2025-03-31 17:18:56 +00:00
291b45fc67
relationship fix
2025-03-31 16:21:56 +00:00
198c279abb
no guard
2025-03-31 16:20:14 +00:00
45d2c8dc8e
driver name fix
2025-03-31 16:02:12 +00:00
a62565d0ad
wip
2025-03-31 15:29:07 +00:00
374ce90160
deployments wip
2025-03-31 14:27:47 +00:00
d150f57c8f
enum case consistency, wip creating service
2025-03-31 13:51:02 +00:00
75f2ecb7bf
server list, logs removed, driver/plan wip
2025-03-31 12:41:09 +00:00
7d2bc3ca5e
Show pages for app,env,org plus navigation, servers wip
2025-03-28 15:18:12 +00:00
d21250ce66
Hetzner Service, DTOs, provision script
2025-03-28 13:56:07 +00:00
a4f2dcf7fd
profile test passes now
2025-03-27 13:40:25 +00:00
a9b69d1a0e
auto create an organisation for a user when they sign up
2025-03-27 13:34:22 +00:00
2f5536342b
setup commands wip
2025-03-27 13:28:48 +00:00
2c881c9722
saloon, hetzner requests, spatie/ssh, serverprovider enum
2025-03-27 12:56:28 +00:00
25428dbd31
first commit
2025-03-27 12:25:27 +00:00