harry
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
harry
aa680b25fd
Implement Keystone environment deployments
2026-05-13 16:11:23 +01:00
harry
65d3142d03
Refactor to remove slices and environments, replace with instances.
2025-09-15 12:19:13 +01:00
harry
a91780d1d5
New direction; removed wireguard, readme update
2025-09-07 11:37:52 +01:00
harry
82556535ba
log ui
2025-05-22 19:15:44 +01:00
harry
b0517a18ba
get rid of empty output
2025-05-22 18:45:10 +01:00
harry
27a0f5b988
error logs mayne
2025-05-22 18:31:50 +01:00
harry
8575712931
step name
2025-05-22 18:06:08 +01:00
harry
bcc7645a8a
add keystone user to docker
2025-05-22 17:54:41 +01:00
harry
9ce024d479
deployments relationship
2025-05-22 17:47:55 +01:00
harry
41c8521936
secrets fix
2025-05-22 17:37:09 +01:00
harry
0b3c62fd5f
oops
2025-05-22 17:32:24 +01:00
harry
145089f634
lower tiemr
2025-05-22 17:20:24 +01:00
harry
4051afca4e
get deployment plan
2025-05-22 17:19:28 +01:00
harry
bfe0f8eabf
NetworkZone
2025-05-22 14:51:54 +01:00
harry
7d03b81723
logging server create failure
2025-05-22 14:04:14 +01:00
harry
513fd4309d
default ip range for CreateNetworkRequest
2025-05-22 14:01:12 +01:00
harry
639d8af449
logging
2025-05-22 13:56:37 +01:00
harry
7174784b57
seeder for prod
2025-05-22 13:53:48 +01:00
harry
ea5dcebe45
service credentials
2025-05-22 13:38:56 +01:00
harry
afde59bd39
wip caddy deployment
2025-04-24 19:55:39 +01:00
harry
46a76f7bce
redirect to server show page if a gateway is not installed on a given server
2025-04-24 19:08:21 +01:00
harry
6296c2d999
case insensitive file systems are SO GOOD pt2
2025-04-24 17:58:12 +01:00
harry
dc3b2ede41
case insensitive file systems are SO GOOD
2025-04-24 17:58:00 +01:00
harry
680040966f
const props
2025-04-24 17:19:00 +01:00
harry
dfee28b428
server selector wip
2025-04-16 14:21:43 +01:00
harry
ab9c6d622f
WIP Environment UI
2025-04-15 14:13:00 +01:00
harry
6f3cf84a61
service controller test
2025-04-09 11:38:14 +01:00
harry
eefe6243bc
add credentials to services
2025-04-09 11:09:40 +01:00
harry
a2a3e9002d
use createservice action
2025-04-08 23:02:13 +01:00
harry
38db883b4c
service name generation
2025-04-08 22:37:31 +01:00
harry
d924d418c7
Validation, service form improvements
2025-04-08 22:33:05 +01:00
harry
628d6a14ed
Token Authentication
2025-04-08 20:41:25 +01:00
harry
894d2238e6
Add missing inheritance for TestEnvironmentSeeder class
2025-04-08 20:31:53 +01:00
harry
71e7539c25
test env
2025-04-08 20:30:18 +01:00
harry
55b9485fcf
Sync wireguard rules uses internal jumps if they are available
2025-04-08 20:23:16 +01:00
harry
acf48a7ea6
hash URL
2025-04-08 19:58:49 +01:00
harry
bde11c0b8c
Header layout rather than sidebar layout
2025-04-08 19:17:12 +01:00
harry
a7386814c7
counts on the dashboard
2025-04-08 17:54:33 +01:00
harry
57b35b4849
wip ui, hidden token on frontend
2025-04-07 20:14:17 +01:00
harry
609008afc7
keep data cached
2025-04-07 20:08:59 +01:00
harry
5d042900ae
added tabs component, org show wip
2025-04-07 19:59:30 +01:00
harry
2e2c0a033b
Add forNetwork method to ServerFactory and update DatabaseSeeder to associate servers with a network
2025-04-07 19:13:50 +01:00
harry
2b0f41cd7c
pint
2025-04-07 19:10:40 +01:00
harry
e8c8eeab18
tests pass!
2025-04-07 19:06:37 +01:00
harry
a5854c7a04
create network if doesn't already exist on server, wip test
2025-04-07 18:24:33 +01:00
harry
b2070e052d
creating networks wip
2025-04-07 16:39:53 +01:00
harry
32d30e00aa
field name consistency
2025-04-07 16:28:27 +01:00
harry
1e7d023b09
provider, enums, no timestamp
2025-04-07 15:52:59 +01:00
harry
7f546c1678
wip
2025-04-07 14:47:39 +01:00
harry
b800a9d83a
moving to provider stored in database
2025-04-07 14:38:28 +01:00
harry
6bd12bd6ca
event
2025-04-07 13:49:54 +01:00
harry
1ffabe8093
invokable provision script controllers
2025-04-07 13:31:10 +01:00
harry
a708c69698
unused var
2025-04-07 13:00:00 +01:00
harry
63d506370b
sync public key back to the main server post-provision, once a new server is added sync the internal ips to all others
2025-04-07 12:58:22 +01:00
harry
e15a80163b
ran pint
2025-04-07 12:16:11 +01:00
harry
ce8b201a1c
queueable actions
2025-04-07 12:15:54 +01:00
harry
9e826e5f18
internal ip base config
2025-04-07 11:26:22 +01:00
harry
586a3888d0
wip
2025-04-07 11:17:25 +01:00
harry
629d19a682
internal ip ending
2025-04-07 11:12:16 +01:00
harry
319520c650
networks
2025-04-06 18:30:25 +01:00
harry
2d15f87f42
add private ip to servers table
2025-04-06 18:13:19 +01:00
harry
254bd726bb
add wireguard to the provision script
2025-04-06 18:00:40 +01:00
harry
dc2b672c85
removed console log, wireguard network plan
2025-04-06 17:59:21 +01:00
harry
587d10b074
icons on service create, firewall rule remove/install
2025-04-06 17:03:44 +01:00
harry
8f0e319a63
enum fix, create form wip
2025-04-01 16:33:50 +00:00
harry
0cd00c641b
frontend js enums generation, started service/create
2025-04-01 16:18:46 +00:00
harry
4ff9b05cb4
arrayable enums, only use base ubuntu images, server controller tests, server frontend page fixes
2025-04-01 15:57:40 +00:00
harry
d6a0fb3838
Firewall rules wip, server show improved
2025-03-31 17:18:56 +00:00
harry
65073632f1
configure the firewall
2025-03-31 16:47:11 +00:00
harry
9854b42f47
failure handling on steps, setting service status
2025-03-31 16:45:36 +00:00
harry
967a87a024
asd
2025-03-31 16:38:07 +00:00
harry
69490edb88
no strict checks
2025-03-31 16:36:07 +00:00
harry
84074c80f0
change path on runstep
2025-03-31 16:30:23 +00:00
harry
2092430e6b
dont check if docker is installed. it is
2025-03-31 16:25:51 +00:00
harry
7cd771ad13
fail properly
2025-03-31 16:25:14 +00:00
harry
291b45fc67
relationship fix
2025-03-31 16:21:56 +00:00
harry
198c279abb
no guard
2025-03-31 16:20:14 +00:00
harry
b68720b125
morph map
2025-03-31 16:18:41 +00:00
harry
a6e8c7e670
s m h
2025-03-31 16:16:31 +00:00
harry
336581fef6
bloody abstract
2025-03-31 16:13:43 +00:00
harry
3f1d3027d0
interfaces
2025-03-31 16:11:37 +00:00
harry
476229294d
deployment failure status
2025-03-31 16:07:29 +00:00
harry
45d2c8dc8e
driver name fix
2025-03-31 16:02:12 +00:00
harry
8f23e84c6d
driverName
2025-03-31 15:58:51 +00:00
harry
d5f969c453
command fixes
2025-03-31 15:54:51 +00:00
harry
7ad259bc38
Service deployment
2025-03-31 15:40:35 +00:00
harry
a62565d0ad
wip
2025-03-31 15:29:07 +00:00
harry
374ce90160
deployments wip
2025-03-31 14:27:47 +00:00
harry
d150f57c8f
enum case consistency, wip creating service
2025-03-31 13:51:02 +00:00
harry
75f2ecb7bf
server list, logs removed, driver/plan wip
2025-03-31 12:41:09 +00:00
harry
678581b822
better IP validation
2025-03-30 15:49:55 +00:00
harry
25543b497f
docker install
2025-03-30 15:40:45 +00:00
harry
b180b5c3bc
fixed ip check
2025-03-30 15:37:16 +00:00
harry
a6efe2cd95
fixes for ssh
2025-03-30 15:33:11 +00:00
harry
5c1c15b3bc
exclude csrf on callback
2025-03-30 15:30:56 +00:00
harry
b62082d091
nohangup on the provision script please
2025-03-30 15:23:02 +00:00
harry
ac77d80dff
no more set x
2025-03-30 15:21:24 +00:00
harry
45ab964bfb
timeout increase
2025-03-30 15:18:41 +00:00
harry
49a8493f11
strict checking?
2025-03-30 15:15:44 +00:00