Install Etcha
How to install Etcha.
Categories:
Installing Etcha depends on how you want to run it. Etcha is available as a binary or a container.
Binary
Rot binaries are available for various architectures and operating systems:
Updating Etcha
Etcha can be updated by replacing the binary with the latest version.Etcha can be ran as a service:
- Download the Etcha binary to
/usr/local/bin/etcha
and mark it as executable. - Create
/etc/systemd/system/etcha.service
with this content:
[Unit]
Description=Infinite scale configuration management for distributed platforms
Documentation=https://etcha.dev
After=network.target
[Service]
ExecStart=/usr/local/bin/etcha -c /etc/etcha.jsonnet run
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
- Start Etcha:
systemctl enable --now etcha.service
- Download the Etcha binary to
/usr/local/bin/etcha
and mark it as executable. - Create
/Library/LaunchDaemons/dev.etcha.plist
with this content:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.etcha</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/etcha</string>
<string>-c</string>
<string>/etc/etcha.jsonnet</string>
<string>run</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>/var/lib/etcha/etcha.log</string>
<key>StandardErrorPath</key>
<string>/var/lib/etcha/etcha.err</string>
<key>WorkingDirectory</key>
<string>/var/lib/etcha</string>
</dict>
</plist>
- Start Etcha:
launchctl load /Library/LaunchDaemons/com.etcha.plist
Container
Etcha containers are available on GitHub.
You can create an alias to run Etcha as a container:
alias etcha='docker run -u $(id -u):$(id -g) -it --rm -v $(pwd):/work -w /work ghcr.io/candiddev/etcha:latest'
SBOM
Etcha ships with a Software Bill of Materials (SBOM) manifest generated using CycloneDX. The .bom.json
manifest is available with the other Binary Assets.