diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..0329cc1
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,74 @@
+def label = "jenkins-${UUID.randomUUID().toString()}"
+
+def repository = "registry.c.test-chamber-13.lan"
+
+def tag = "0.76"
+
+podTemplate(
+    label: label,
+    name: "pipeline-worker",
+    yaml: """---
+apiVersion: v1
+kind: Pod
+metadata:
+  name: pipeline-worker
+spec:
+  containers:
+  - name: compile
+    imagePullPolicy: Always
+    image: ${repository}/dockerhub/library/golang:latest
+    tty: true
+    command:
+    - /bin/cat
+""") {
+    node (label) {
+        def workspace = pwd()
+
+        stage ("Pull Local Repo") {
+            checkout([
+                $class: "GitSCM",
+                branches: [
+                    [
+                        name: "refs/remotes/origin/main",
+                    ],
+                ],
+                userRemoteConfigs: [
+                    [
+                        url: "ssh://git@gitea.smoothnet.org:31822/nhyatt/tplinkcmd.git",
+                        credentialsId: "Gitea-Read-Only-Token",
+                    ],
+                ],
+                extensions: [
+                    [
+                        $class: "CloneOption",
+                        shallow: true,
+                    ],
+                    [
+                        $class: "CheckoutOption",
+                        timeout: 2,
+                    ],
+                ],
+            ])
+        }
+
+        stage("Build Putty") {
+            container("compile") {
+                sh """
+                    apt update
+                    apt install upx -y
+                    go install -v ./...
+                    GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -v -ldflags="-s -w" -tags timetzdata -o tplink ./cmd/tpstate
+                    upx --brute tplink
+                """
+            }
+        }
+
+        stage ("Store Artifacts") {
+            archiveArtifacts (artifacts: "tplink",
+                fingerprint: true,
+                allowEmptyArchive: false,
+                onlyIfSuccessful: true,
+            )
+        }
+    }
+}
\ No newline at end of file