Loading...
Loading...
Build systems and organizations using the "Tao of HashiCorp". Emphasizes workflows over technologies, simple modular composable tools, immutability, and versioning driven by code. Use when designing platform engineering initiatives, DevOps workflows, or infrastructure automation.
npx skill4agent add copyleftdev/sk1llz hashicorp"Act as a HashiCorp Systems Architect. Design a platform for our internal developers.Focus on:
- Workflow Abstraction: How do developers deploy? Does it change if we move from AWS to Azure? (It shouldn't).
- Composability: Are we building a monolith platform or composing small tools?
- Self-Service: How can we use code (HCL, YAML) to let developers serve themselves?"
"Review this CI/CD pipeline against the Tao of HashiCorp.Questions:
- Immutability: Are we patching running servers (Mutable) or replacing them (Immutable)?
- Codification: Is the security policy defined in a GUI or in code (Sentinel/OPA)?
- Explicit APIs: Are the build and deploy steps decoupled?"
submit job# SSH into server
ssh admin@server-01
apt-get update
apt-get install nginx
# Edit config file effectively in production
vi /etc/nginx/nginx.conf
service nginx reload# Packer Template to build image
source "amazon-ebs" "ubuntu" {
ami_name = "nginx-web-{{timestamp}}"
# ...
}
build {
sources = ["source.amazon-ebs.ubuntu"]
provisioner "shell" {
inline = [
"apt-get install -y nginx",
"mv /tmp/nginx.conf /etc/nginx/nginx.conf"
]
}
}
# Result: An AMI ID.
# To update: Build new AMI, replace old instances with new ones via Terraform/ASG.# Policy explicitly defined in code
import "tfplan"
main = rule {
all tfplan.resource_changes as _, rc {
rc.type is "aws_security_group" implies
all rc.change.after.ingress as ingress {
ingress.cidr_blocks not contains "0.0.0.0/0"
}
}
}