Design Patterns for automation. Examples and Experiments. - System and network automation. Data-processing/ETL pipeline. Batch processing. Job running. API client/service. Python command-line tools. DevOps automation.
A grab-bad of code and component solutions which can be used to build all kinds of automation, centered around Linux, Python and other common facilities like REST, Docker, cron, ssh and more.
A focus in this repository is on using cron to trigger python programs and utilities which have well-designed command-line interfaces. This will be combined with using classic/foundational strategies as basic as smart filesystem heirarchies and file usage or powerful naming conventions and many such things where a lot of power can be obtained from simple strategies that leverage basic technologies.
REST APIs, client and server in Python, containerization via Docker or Podman, the full spectrum of the power of Linux .. these are all areas central to different kinds of automation and very common, ad-hoc systems and solutions you find everywhere.
This is almost like a System-Adminisrator (in the classic sense) plus Python-coder tool kit of all kinds of common solutions which can often be labeled automation of one kind or another.
I want this project to be kind of free form and full of lots of little goodies, well-organized in the repository. In this project, I will lean towards building solutions which work well, but with less documentation and comments than I usually put time into. At least at the early phase, I think it will be helpful to develop the project components and solutions rapidly and cover many areas, hence the sacrifice on docs initially. Automation development like this is very often done quickly and with less code and subject to rapid evolution, so I will treat this project in a similar spirit.
I will be doing plenty of experimentation and more creative-types of developement in this repo and will evaluate and compare some libraries and stuff like that. I will make it clear which parts are well developed/stable and which are more experimental.