diff --git a/infrastructure/flux-system/tf-controller.yaml b/infrastructure/flux-system/tf-controller.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..230706f33ad7769f4f755a36d0b8205788d6e071
--- /dev/null
+++ b/infrastructure/flux-system/tf-controller.yaml
@@ -0,0 +1,26 @@
+---
+apiVersion: source.toolkit.fluxcd.io/v1beta1
+kind: HelmRepository
+metadata:
+  name: tf-controller
+  namespace: flux-system
+spec:
+  interval: 30m
+  url: https://weaveworks.github.io/tf-controller/
+---
+apiVersion: helm.toolkit.fluxcd.io/v2beta1
+kind: HelmRelease
+metadata:
+  name: tf-controller
+  namespace: flux-system
+spec:
+  releaseName: tf-controller
+  chart:
+    spec:
+      chart: tf-controller
+      sourceRef:
+        kind: HelmRepository
+        name: tf-controller
+        namespace: flux-system
+      version: 0.2.8
+  interval: 5m