Skip to content

Releases: riffcc/jetpack

Jetpack v0.4.4

10 Feb 09:42

Choose a tag to compare

Jetpack v0.4.3

10 Feb 09:22

Choose a tag to compare

Jetpack v0.5.0-alpha2

09 Feb 21:03

Choose a tag to compare

Jetpack v0.5.0-alpha2 Pre-release
Pre-release

v0.5.0-alpha1 — Chroot Connection & Pull-from-URL

09 Feb 20:10

Choose a tag to compare

Jetpack v0.5.0-alpha1 — Chroot Connection & Pull-from-URL

New: ChrootConnection

Execute playbooks inside a chroot environment — perfect for provisioning OS images before first boot.

jetpack pull --playbook setup.yml --chroot /mnt/target

All commands run via chroot <path> sh -c "...". File writes target <chroot_path>/<dest>. OS detection runs chroot <path> uname -a.

New: --url flag for Pull Mode

Download playbooks from any HTTPS URL or git repository:

# Download a single playbook
jetpack pull --url https://example.com/setup.yml

# Clone a git repo (detected by github/gitlab/codeberg/.git)
jetpack pull --url https://github.com/myorg/infra.git

# Combine with chroot
jetpack pull --url https://example.com/proxmox.yml --chroot /mnt/target

Together: One-Boot OS Provisioning

These features enable provisioning a complete OS installation inside a mounted disk image — no reboots, no leftover installer scripts. The target machine boots once into a fully configured system.

Full Changelog: v0.4.2...v0.5.0-alpha1

v0.4.2

09 Feb 14:30

Choose a tag to compare

feat: inline playbook content API. Adds playbook_content(name, yaml) and run_inline(name, yaml) for embedding playbooks in binaries via include_str!(). No temp files needed.

v0.4.1

09 Feb 14:17

Choose a tag to compare

Fix: wire async_mode through PlaybookRunnerBuilder API. The v0.4.0 release added async execution but hardcoded async_mode: false in the builder. This adds the async_mode() builder method and wires it through to RunState.

Jetpack v0.4.0

09 Feb 13:29

Choose a tag to compare

What's New

Async Host-Parallel Execution (--async)

New execution mode where each host runs its entire task list independently, synchronizing only at explicit barrier points. The default task-parallel model remains unchanged.

  • --async flag — Enables host-parallel execution
  • !wait_for_others task — Explicit barrier synchronization point in playbooks
  • Color-coded output — Per-host terminal output with async summary
  • Parallel provisioning — In async mode, all hosts are provisioned concurrently

Provisioner Improvements

  • force-absent state — Destroy containers even if running (absent remains safe and will refuse to destroy running containers)

Example

- name: Deploy cluster
  groups:
    - nodes
  tasks:
    - !apt
      name: Install dependencies
      package: curl

    - !wait_for_others
      name: All nodes ready

    - !template
      name: Write config
      src: config.hb
      dest: /etc/myapp/config

    - !wait_for_others
      name: All nodes configured
      mode: strict

    - !sd_service
      name: Start service
      service: myapp
      started: "true"
      enabled: "true"

Run with jetpack ssh -p deploy.yml -i inventory --async for host-parallel execution.

Full Changelog: v0.3.6...v0.4.0

Jetpack v0.3.6

09 Feb 09:06

Choose a tag to compare

Jetpack v0.3.5

09 Feb 03:44

Choose a tag to compare

Jetpack v0.3.4

09 Feb 02:59

Choose a tag to compare