Polycrate: Automated Infrastructure in Modular Packages
Katrin Peter 3 Minuten Lesezeit

Polycrate: Automated Infrastructure in Modular Packages

Automation must become manageable again. At ayedo, we are building a framework with Polycrate that brings order to the chaos of complex IT infrastructures—modular, reusable, and fully automatable.
infrastruktur automatisierung devops kubernetes open-source

Automation must become manageable again. At ayedo, we are building a framework with Polycrate that brings order to the chaos of complex IT infrastructures—modular, reusable, and fully automatable.

In this post, we demonstrate how Polycrate works, how to use it productively, and why we believe: “Modular Infrastructure as Code” is the next level of GitOps.


What is Polycrate?

Polycrate is a lightweight framework for packaging, integrating, and automating IT and cloud infrastructure. It combines:

  • Infrastructure as Code (e.g., Ansible)
  • DevOps tooling (Docker, Kubernetes)
  • Structured knowledge management (via declarative metadata and modular blocks)

The architecture of Polycrate is based on a simple principle: Package everything that makes a system run—in Blocks—and define with Actions how it operates.


Concept: Blocks & Actions

🔹 Blocks

A Block is a self-contained unit that bundles all necessary resources for a system or tool:

  • Configuration files
  • Dependencies
  • Documentation
  • Installation and maintenance logic

Example: A nextcloud Block contains everything needed to set up Nextcloud on Kubernetes or via Docker.

🔸 Actions

Actions are executable workflows within a Block. They clearly define what should be done—e.g., install, update, backup, destroy.

Actions are executed in a Docker container, already equipped with common tools like kubectl, helm, ansible, jq, and more.


Technical Stack

Component Technology / Format
Runtime Docker container with tool toolchain
CLI polycrate Binary (Go-based)
Configuration YAML + Template Engine
Execution Logic Ansible preferred, Bash optional
Integration GitLab, Git, Kubernetes, Docker
Registry / Hub hub.polycrate.io

Installation: Three Ways to the CLI

Automatically detects platform & architecture (Linux, macOS, Intel & ARM).

curl https://raw.githubusercontent.com/polycrate/polycrate/main/get-polycrate.sh | bash

polycrate version

2. Docker-based Installer (Linux only)

export VERSION="0.22.1"
export BIN_DIR="${PWD}"
export PLATFORM="linux/amd64"

docker run --platform "${PLATFORM}" --rm -v "${BIN_DIR}":/bin_dir \
--entrypoint "/bin/sh" cargo.ayedo.cloud/library/polycrate:${VERSION} \
-c "cp /usr/local/bin/polycrate /bin_dir/."

After copying the binary:

$BIN_DIR/polycrate version

3. Manual Download

Platform-specific via Polycrate Hub:

export VERSION="0.22.1"
curl -fsSLo polycrate.tar.gz https://hub.polycrate.io/get/polycrate/${VERSION}/linux_amd64/polycrate_${VERSION}_linux_amd64.tar.gz

tar xvzf polycrate.tar.gz

chmod +x polycrate
./polycrate version

(accordingly for arm64, darwin_amd64, darwin_arm64, etc.)

Prerequisites

Polycrate requires:

  • Docker (for executing Actions)
  • Optional: git (for version management & cloning)

The CLI is platform-independent, running containerized and isolated.

Practical Use Cases

Use Case Example
Self-Service Deployments polycrate run install for developers
DevOps Onboarding Unified setup logic in Actions
Kubernetes Toolchain Provisioning Automated Helm + CRDs + Secrets
Multi-Environment Deployments dev, staging, prod via Context
Reproducible System Installations Air-gapped or compliance-critical

Why Polycrate?

  • Modularization by Design: Every system is a Block—documented, reusable, versionable.
  • Declarative & Auditable: No black box: Every Action is readable, versioned, and traceable.
  • Toolchain Built-In: No need for local tool installation—Polycrate brings it along.
  • Developer-Friendly: CLI-based, easy onboarding, no overhead from YAML monsters.

Conclusion: Infrastructure Treated Like Code—but Modular

Polycrate is not just another tool for us—it’s the framework in which all other tools move in an ordered, documented, and reproducible manner.

Anyone serious about Infrastructure as Code must also automate the lifecycle management of systems—this is exactly where Polycrate comes in.

Learn More? •

What’s Next?

We will soon publish a step-by-step series showing:

  • How we provision complete platform stacks with Polycrate
  • What self-service for dev teams looks like
  • And how Polycrate interacts with GitOps & Secrets Management

Questions? Interested in a walkthrough? Get in touch—or check out our Hub.

Ähnliche Artikel