From f293b0e7e51ff1b1ee418b3cea2cbe81af974f29 Mon Sep 17 00:00:00 2001 From: Erich Blume Date: Fri, 16 Jan 2026 09:47:05 -0800 Subject: [PATCH] Add Pulumi DeviceTags for indri to manage device tags via IaC Instead of manually applying tags to indri in Tailscale admin, use tailscale.DeviceTags resource to manage them declaratively. This includes all service tags (grafana, forge, kiwix, devpi, loki, pg, feed) plus homelab and blumeops tags. Co-Authored-By: Claude Opus 4.5 --- pulumi/__main__.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pulumi/__main__.py b/pulumi/__main__.py index 8971cae..8c5cd39 100644 --- a/pulumi/__main__.py +++ b/pulumi/__main__.py @@ -14,5 +14,28 @@ acl = tailscale.Acl( acl=policy_content, ) +# ============== Device Tags ============== +# Manage tags for devices in the tailnet + +# indri - Mac Mini M1 running homelab services +indri = tailscale.get_device(name="indri.tail8d86e.ts.net") +indri_tags = tailscale.DeviceTags( + "indri-tags", + device_id=indri.node_id, + tags=[ + "tag:homelab", + "tag:grafana", + "tag:forge", + "tag:kiwix", + "tag:devpi", + "tag:loki", + "tag:pg", + "tag:feed", + "tag:blumeops", + ], +) + # Export useful info pulumi.export("acl_id", acl.id) +pulumi.export("indri_device_id", indri.node_id) +pulumi.export("indri_tags", indri_tags.tags)