-
Notifications
You must be signed in to change notification settings - Fork 613
feat(deploy): redesign metald network architecture #3818
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -1,8 +1,9 @@ | ||||||||||||||
| [Unit] | ||||||||||||||
| Description=Billaged VM Usage Billing Service | ||||||||||||||
| Documentation=https://github.com/unkeyed/unkey/go/deploy/billaged | ||||||||||||||
| After=network.target | ||||||||||||||
| After=network.target spire-agent.service assetmanagerd.service metald.service | ||||||||||||||
| Wants=network.target | ||||||||||||||
| Requires=spire-agent.service assetmanagerd.service metald.service | ||||||||||||||
|
Comment on lines
+4
to
+6
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Verification agent 🧩 Analysis chainAvoid cascading failures; use Wants(+After) for metald and wait for network-online. Billaged likely doesn’t need a hard dependency on metald. Requires=metald means billaged is stopped if metald stops. Prefer Wants=metald with ordering, and wait for network-online to avoid TLS/mTLS races on boot. Apply: -After=network.target spire-agent.service assetmanagerd.service metald.service
-Wants=network.target
-Requires=spire-agent.service assetmanagerd.service metald.service
+After=network-online.target spire-agent.service assetmanagerd.service metald.service
+Wants=network-online.target metald.service
+Requires=spire-agent.service assetmanagerd.service🏁 Script executed: #!/bin/bash
set -e
echo "Locating billaged.service file:"
rg -l 'billaged.service'
echo
echo "Printing first 20 lines of billaged.service:"
sed -n '1,20p' go/deploy/billaged/contrib/systemd/billaged.service
echo
echo "Searching for network-online.target usage in all .service files:"
rg -n 'network-online.target' -g '*.service'Length of output: 2049 🏁 Script executed: #!/bin/bash
set -e
echo "Locating assetmanagerd.service"
find go -type f -name 'assetmanagerd.service'
echo
echo "Printing first 20 lines of metald.service"
sed -n '1,20p' go/deploy/docker/systemd/metald.service
echo
echo "Printing first 20 lines of spire-agent.service"
sed -n '1,20p' go/deploy/spire/contrib/systemd/spire-agent.serviceLength of output: 1733 go/deploy/billaged/contrib/systemd/billaged.service – use Wants=metald.service (+After) and network-online.target -After=network.target spire-agent.service assetmanagerd.service metald.service
-Wants=network.target
-Requires=spire-agent.service assetmanagerd.service metald.service
+After=network-online.target spire-agent.service assetmanagerd.service metald.service
+Wants=network-online.target metald.service
+Requires=spire-agent.service assetmanagerd.service📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||
|
|
||||||||||||||
| [Service] | ||||||||||||||
| Type=simple | ||||||||||||||
|
|
||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Verification agent
🧩 Analysis chain
Proto bump looks fine; verify repo-wide alignment and regen if needed.
Confirm all modules now resolve google.golang.org/protobuf v1.36.8 and regenerate any generated protobuf code if you vendor stubs or pin protoc-gen-go. Run go mod tidy afterwards.
🏁 Script executed:
Length of output: 3027
Align google.golang.org/protobuf to v1.36.8 repository-wide
Bump protobuf to v1.36.8 in the following go.mod files (currently on older versions):
After aligning versions, regenerate any vendored protobuf stubs or run your protoc-gen-go pipeline (none found via rg search) and run
go mod tidyin each module.