Formic

0.3.0

Swift library to support 🐜 IT Automation 🐜🐜 tasks.
heckj/formic

What's New

0.3.0

2025-02-26T19:36:55Z

This release cleans up awkward API that's been in place since inception, avoiding conflicts with Foundation.Host and cleaning up logging output, which has become the primary flow for details in a side-band during execution in the engine. Everything is still imperative, and some updates have been made to allow for declarative structures, but the details aren't yet fixed in that respect from use, so expect there could easily be further changes in that API down the road, based on learning from attempted use.

I briefly added in CitadelSSH as an alternative command invocation process, but ran into compilation problems in some scenarios where I was pushing Swift code and compiling it on a remote machine for further invocation from a bastion host, so the code is in place, but unavailable unless Citadel is already imported.

What's Changed

  • [docs] adding more internal notes about the APIs and how things work by @heckj in #88
  • radically updating the API to resolve issues hit while developing with it by @heckj in #89
  • improving output to show time required to execute a command by @heckj in #90
  • Shelve citadel by @heckj in #91
  • Log cleanup by @heckj in #92
  • tweak logging output to include host by @heckj in #93

Full Changelog: 0.2.0...0.3.0

Formic 🐜

Swift library to support IT Automation tasks.

Overview

This is a library to support building IT automation tools in Swift, taking a lot of inspiration from existing and past IT automation tools. It's meant to operate similarly to Ansible, focusing on configuring the software on remote hosts using a channel of "ssh" to those hosts, presumably with a key you already have.

I expect that most SRE/DevOps staff are not going to be interested in creating something using the Swift language. Instead, I'm assembling these pieces to support building my own custom playbooks and tools for managing remote hosts and services.

I've included a hard-coded example of using this library from an argument-parser based CLI tool. Look through the content in updateExample to get a sense of using it in practice.

Description

  • Swift Tools 6.0.0
View More Packages from this Author

Dependencies

Last updated: Wed May 14 2025 16:35:09 GMT-0900 (Hawaii-Aleutian Daylight Time)