diff --git a/iximiuz/rootfs/dev/machine/README.md b/iximiuz/rootfs/dev/machine/README.md index 0de8bb3..6bd0f8c 100644 --- a/iximiuz/rootfs/dev/machine/README.md +++ b/iximiuz/rootfs/dev/machine/README.md @@ -34,6 +34,10 @@ A child image built on top of [`ubuntu-24-04-rootfs`](../../ubuntu/README.md). U | ansible-lint | Latest | `pip3` | | pre-commit | Latest | `pip3` | | yamllint | Latest | `pip3` | +| act | v0.2.89 | GitHub release | +| helmfile | v1.5.2 | GitHub release | +| helm-diff | Latest (via `helm plugin install`) | Helm plugin | +| skaffold | Latest stable | Official GCS binary | | Skopeo | Latest | `apt` | | dive | v0.13.1 | GitHub release | | hadolint | v2.12.0 | GitHub release | @@ -62,7 +66,7 @@ dev/machine/ ├── welcome # Welcome banner (copied to $HOME/.welcome) └── scripts/ ├── install-docker.sh # Docker CE - official Docker apt repo - ├── install-tools.sh # Full DevOps toolchain - 30 phases + ├── install-tools.sh # Full DevOps toolchain - 34 phases ├── install-cloudflared.sh # Cloudflare Tunnel CLI ├── setup-completions.sh # System-wide bash + zsh completions └── customize-bashrc.sh # Aliases and helpers → ~/.bashrc diff --git a/iximiuz/rootfs/dev/machine/scripts/install-tools.sh b/iximiuz/rootfs/dev/machine/scripts/install-tools.sh index 948daaa..e1fc33d 100644 --- a/iximiuz/rootfs/dev/machine/scripts/install-tools.sh +++ b/iximiuz/rootfs/dev/machine/scripts/install-tools.sh @@ -37,6 +37,8 @@ GITLEAKS_VERSION="v8.28.0" COSIGN_VERSION="v3.0.3" SYFT_VERSION="v1.26.1" EKSCTL_VERSION="v0.226.0" +ACT_VERSION="v0.2.89" +HELMFILE_VERSION="v1.5.2" # ============================================================================= # PHASE 1: Base system packages @@ -459,9 +461,56 @@ mongosh --version apt-get clean && rm -rf /var/lib/apt/lists/* # ============================================================================= -# PHASE 30: Final cleanup +# PHASE 30: act — GitHub Actions local runner +# https://github.com/nektos/act/releases/tag/v0.2.89 # ============================================================================= -log_phase "PHASE 30: Final cleanup" +log_phase "PHASE 30: act ${ACT_VERSION}" + +curl -fsSL "https://github.com/nektos/act/releases/download/${ACT_VERSION}/act_Linux_x86_64.tar.gz" \ + -o /tmp/act.tar.gz +tar -xzf /tmp/act.tar.gz -C /usr/local/bin act +chmod +x /usr/local/bin/act +rm /tmp/act.tar.gz +act --version + +# ============================================================================= +# PHASE 31: helmfile — Helm release orchestrator +# https://github.com/helmfile/helmfile/releases/tag/v1.5.2 +# ============================================================================= +log_phase "PHASE 31: helmfile ${HELMFILE_VERSION}" + +curl -fsSL "https://github.com/helmfile/helmfile/releases/download/${HELMFILE_VERSION}/helmfile_${HELMFILE_VERSION#v}_linux_amd64.tar.gz" \ + -o /tmp/helmfile.tar.gz +tar -xzf /tmp/helmfile.tar.gz -C /usr/local/bin helmfile +chmod +x /usr/local/bin/helmfile +rm /tmp/helmfile.tar.gz +helmfile version + +# ============================================================================= +# PHASE 32: helm-diff plugin — required by helmfile +# https://github.com/databus23/helm-diff +# ============================================================================= +log_phase "PHASE 32: helm-diff plugin" + +helm plugin install https://github.com/databus23/helm-diff +helm plugin list + +# ============================================================================= +# PHASE 33: skaffold — latest stable binary +# https://skaffold.dev/docs/install/ +# ============================================================================= +log_phase "PHASE 33: skaffold (latest stable)" + +curl -fsSL https://storage.googleapis.com/skaffold/releases/latest/skaffold-linux-amd64 \ + -o /tmp/skaffold +install -m 0755 /tmp/skaffold /usr/local/bin/skaffold +rm /tmp/skaffold +skaffold version + +# ============================================================================= +# PHASE 34: Final cleanup +# ============================================================================= +log_phase "PHASE 34: Final cleanup" apt-get autoremove -y apt-get clean diff --git a/iximiuz/rootfs/dev/machine/welcome b/iximiuz/rootfs/dev/machine/welcome index d30503d..bc00c58 100644 --- a/iximiuz/rootfs/dev/machine/welcome +++ b/iximiuz/rootfs/dev/machine/welcome @@ -11,6 +11,7 @@ CONTAINERS docker docker-compose buildx skopeo dive hadolint KUBERNETES kubectl helm kustomize k9s kubectx kubens stern eksctl INFRA & CI/CD terraform aws cli v2 ansible ansible-lint pre-commit yamllint gh + act helmfile skaffold SECURITY trivy gitleaks cosign syft DATA & SEARCH jq yq fzf rg NETWORKING nmap openssl ssh socat cloudflared