Etcha – Infinite scale, serverless config management
While developing a SaaS, we needed a way to distribute configurations across a wide array machines in a distributed manner. We built Etcha as a way to build and run servers and applications using familiar Jsonnet and GitOps workflows--lint, test, build, and release.
Users are discussing a Python-based alternative to Ansible, with mixed opinions on its approach to mutable state and determinism. Some prefer Python or Starlark for logic and build systems, while others are confused by terms like 'nondeterministic bag-of-state.' There's interest in compatibility with Ansible tasks and simplifying playbook management. Comparisons are made to Chef, SaltStack, and Terraform, with concerns about differentiating from Ansible and embedding variables in templates. The tool's potential and business model are questioned, with suggestions for an open beta and comments on its use in edge environments.
Users criticized the product for its problematic string-embedding and mutable state strategy, making tasks complex and Ansible coding painful due to nondeterministic states. The terminology is unclear, and the system's determinism is questioned. The API is difficult to navigate, and control structures are less intuitive compared to alternatives. Comparisons to Chef and omissions of SaltStack were noted, along with confusing nomenclature and eye-rolling language. Concerns about security, traceability, unclear state management, and configuration were raised. Licensing costs, limited ecosystem, and potential company failure were seen as barriers to adoption, with no clear advantage over existing tools and doubts about scalability.