Skip to content

Instantly share code, notes, and snippets.

View benfogel's full-sized avatar

Benjamin Fogel benfogel

View GitHub Profile
@benfogel
benfogel / kro-vs-pipeline-comparison.md
Created November 7, 2026 03:01
Hydration Pipelines vs. Kro
Aspect CI pipelines + Config Sync Config Sync + kro external references
Where variation resolves In CI, before Config Sync syncs On each cluster, at reconcile time
Stored in Git Templates, overlays, hydrated YAML App teams' RGDs and custom resource instances
Site-specific change Re-render in CI, review diff, sync via Git Update site-config via CMDB or parameter store
Fleet-wide change Re-render thousands of manifests in Git Commit one RGD or instance change; Config Sync syncs
@benfogel
benfogel / kro-ownership.md
Last active November 6, 2026 21:04
Layers of ownership with kro
Layer Owner and contents Managed by
Site facts Platform team: Site capabilities, local POS IP, CPU, storage class Local ConfigMap (populated via CMDB or parameter management); read by kro
Workload RGD Application teams: Deployment, PersistentVolumeClaim (PVC), and Service templates with ${...} expressions Stored once in Git; synced everywhere by Config Sync
Instances Application teams: One custom resource per service (e.g., pharmacy-rx, drive-thru-orders) Stored
@RestController
@RequestMapping("/scope")
public class TestController {
@Autowired
private IncorrectScopeBean incorrectScopeBean;
@GetMapping("/incorrect")
public String callIncorrectScopeField(@RequestParam String requestId) throws InterruptedException {
return incorrectScopeBean.run(requestId);
@Component
public class IncorrectScopeBean {
private String requestId;
public String run(String requestId) throws InterruptedException {
this.requestId = requestId;
Thread.sleep(5000);
@benfogel
benfogel / install-docker-compose.sh
Created April 26, 2018 03:55
Installing docker-compose on Amazon Linux AMI
sudo yum update
sudo yum install -y docker
sudo usermod -a -G docker ec2-user
sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-`uname -s`-`uname -m` | sudo tee /usr/local/bin/docker-compose > /dev/null
sudo chmod +x /usr/local/bin/docker-compose
sudo service docker start
sudo chkconfig docker on