cdepillabout / cdepillabout/cloudy

allow multiple instance-setup scripts to be specified

Open
#7 0 comments 0 reactions 0 assignees View on GitHub
enhancement help wanted
Dominant language
Haskell
Stars
6
Forks
0
PR merge metrics
No merged PRs in 30d

Description

It would be nice if Cloudy allowed multiple instance-setup scripts to be specified at once.

The difficulty here would be combining the cloud-init scripts from the different instance-setup scripts. However, cloud-init provides a way to [combine multiple cloud-init scripts within a MIME multi-part file](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#mime-multi-part-archive). Cloudy could likely make use of this.

It would also be nice if a default instance-setup script could be specified in the `~/.config/cloudy/cloudy.yaml` file, which would be used for _all_ instances. I'm imagining this would do things like install packages that would be desired on _all_ systems, like `neovim`, `tree`, etc.

The user could likely leverage cloud-init's [Jinja templates](https://cloudinit.readthedocs.io/en/latest/explanation/format.html#jinja-template) and [instance variables](https://cloudinit.readthedocs.io/en/latest/explanation/instancedata.html) to write cloud-init scripts that are compatible across distros.

Contributor guide

No contributing guide indexed for this repository

Research direction

No implementation files or tests are named. Start by locating how Cloudy parses instance-setup options and ~/.config/cloudy/cloudy.yaml, then review the linked cloud-init MIME multipart and Jinja documentation. Done means multiple scripts can be combined for one instance and a configured default script applies to all instances.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
cli, cloud
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.