<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Kukie Infra on History</title><link>https://kukie.tech/series/kukie-infra/</link><description>Recent content in Kukie Infra on History</description><generator>Hugo</generator><language>ko-kr</language><lastBuildDate>Thu, 22 Oct 2026 21:00:00 +0900</lastBuildDate><atom:link href="https://kukie.tech/series/kukie-infra/index.xml" rel="self" type="application/rss+xml"/><item><title>Kukie Infra.11 Ephemeral Runners and Apply on CodeBuild</title><link>https://kukie.tech/posts/kukie-infra-11/</link><pubDate>Thu, 22 Oct 2026 21:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-11/</guid><description>Three days after the self-hosted runner went live, the weak point it shipped with turned into an incident — terraform apply moved to a throwaway CodeBuild runner, a leftover review buffer re-posted one PR&amp;rsquo;s comment into later reviews, the fix that gives every job its own container with a registration token minted by a GitHub App, Claude Code baked into the image after the installer started returning 429, and the docker.sock risk that is still left.</description></item><item><title>Kukie Infra.10 Hosting Cluster Isolation</title><link>https://kukie.tech/posts/kukie-infra-10/</link><pubDate>Thu, 22 Oct 2026 09:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-10/</guid><description>Isolating other people&amp;rsquo;s code on a shared EKS hosting cluster — why gVisor over plain containers, Fargate or per-team nodes, why Cilium replaces the default VPC CNI while the cluster is still empty, how the node bootstrap installs a pinned and checksummed gVisor that fails closed, the missing gvisor-bin directory that broke the first apply, and the app domain and __Host- cookie that keep user apps away from the dashboard.</description></item><item><title>Kukie Infra.09 Self-hosted Actions Runner</title><link>https://kukie.tech/posts/kukie-infra-09/</link><pubDate>Mon, 19 Oct 2026 19:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-09/</guid><description>Moving CI off GitHub-hosted runners after the organization ran out of included minutes — one spot EC2 instance with no inbound access, runners registered with a one-hour token sent over SSM, the key pair and long polling behind every job, the tools the image had to add back, why public repositories stay out, and the weak points that lead to the next post.</description></item><item><title>Kukie Infra.08 Stack Notice Callback</title><link>https://kukie.tech/posts/kukie-infra-08/</link><pubDate>Mon, 19 Oct 2026 15:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-08/</guid><description>Removing the step where customers type their AWS account number — a CloudFormation custom resource that mails the role ARN to an SNS topic, an SQS buffer, a server that treats the notice as a hint and proves it by assuming the role, and the replies, retries and open-mailbox risks that come with it.</description></item><item><title>Kukie Infra.07 Customer EKS Connection</title><link>https://kukie.tech/posts/kukie-infra-07/</link><pubDate>Mon, 19 Oct 2026 13:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-07/</guid><description>Connecting a customer&amp;rsquo;s EKS cluster without taking any long-lived key — a per-team ExternalId against the confused deputy, a role template that can only register itself into chosen namespaces, the k* pattern that slipped past a kube-* deny, 15-minute tokens, and the address check that blocks private endpoints.</description></item><item><title>Kukie Infra.06 CloudFormation to Terraform</title><link>https://kukie.tech/posts/kukie-infra-06/</link><pubDate>Fri, 16 Oct 2026 13:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-06/</guid><description>Moving the VPC and Aurora that predated Terraform out of a CloudFormation stack — how fourteen resources split into two roots, the two apply roles built for them, and the IAM gaps that eight review rounds found before anything was applied.</description></item><item><title>Kukie Infra.05 ArgoCD in Kukie</title><link>https://kukie.tech/posts/kukie-infra-05/</link><pubDate>Thu, 15 Oct 2026 16:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-05/</guid><description>What ArgoCD actually does in the Kukie dev cluster — the two repositories it reads, the GitHub App that lets it read them, the loop that turns a merge into cluster state, the controllers that take over after it, and the checks at the API server that decide what it may put in.</description></item><item><title>Kukie Infra.04 Image Pipeline to ECR</title><link>https://kukie.tech/posts/kukie-infra-04/</link><pubDate>Wed, 14 Oct 2026 09:30:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-04/</guid><description>How a develop merge in each app repo becomes exactly one image in ECR — a role that can push to one repository only, a commit-SHA tag that never moves so the job checks before it builds, a build cache that silently never saved, and a digest a person still copies into the manifest by hand.</description></item><item><title>Kukie Infra.03 EKS and ArgoCD Bootstrap</title><link>https://kukie.tech/posts/kukie-infra-03/</link><pubDate>Wed, 14 Oct 2026 09:20:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-03/</guid><description>Standing up the EKS cluster on top of the comment-approved pipeline — a NAT instance that costs a quarter of the gateway, three applies to finish one plan, an input that leaks into the next plan, and ArgoCD installed once from outside with every other Application kept in Git.</description></item><item><title>Kukie Infra.02 IAM Boundaries</title><link>https://kukie.tech/posts/kukie-infra-02/</link><pubDate>Wed, 14 Oct 2026 09:10:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-02/</guid><description>Keeping a deploy robot from growing its own power — short-lived OIDC credentials instead of stored keys, a permissions boundary on every role it creates, permission and creation split into two PRs, and EKS access entries as one line in the cluster&amp;rsquo;s roster.</description></item><item><title>Kukie Infra.01 Terraform CD by PR Comment</title><link>https://kukie.tech/posts/kukie-infra-01/</link><pubDate>Wed, 14 Oct 2026 09:00:00 +0900</pubDate><guid>https://kukie.tech/posts/kukie-infra-01/</guid><description>How a three-person team made Terraform changes go through review and a PR comment — the deploy-config repo split off like a parcel box, plan and apply as two different badges, and one saved plan applied exactly once.</description></item></channel></rss>