Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/samifouad/gild-gleam
experiment: infra as code
https://github.com/samifouad/gild-gleam
debian erlang gild gleam infra infra-as-code infrastructure-as-code javascript linux self-hosted self-hosting ubuntu
Last synced: 24 days ago
JSON representation
experiment: infra as code
- Host: GitHub
- URL: https://github.com/samifouad/gild-gleam
- Owner: samifouad
- License: apache-2.0
- Created: 2024-03-25T00:35:05.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-09-02T06:53:41.000Z (2 months ago)
- Last Synced: 2024-10-12T17:43:08.365Z (25 days ago)
- Topics: debian, erlang, gild, gleam, infra, infra-as-code, infrastructure-as-code, javascript, linux, self-hosted, self-hosting, ubuntu
- Language: Gleam
- Homepage: https://hex.pm/packages/gild
- Size: 88.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
this is a work in progress. it's extremely alpha. any feedback welcome during the design phase.
example usage:
```
import gild/cluster
import gild/os/debian
import gild/types.{type VM}
import gild/vmpub fn home() -> VM {
vm.new()
|> vm.name("home")
|> vm.os(debian.version("12"))
|> vm.update()
|> vm.install("mysql_server")
|> vm.return()
}pub fn work() -> VM {
vm.new()
|> vm.name("work")
|> vm.os(debian.version("12"))
|> vm.update()
|> vm.install("apache2")
|> vm.install("mysql_server php")
|> vm.return()
}pub fn main() {
cluster.new()
|> cluster.name("my cool project")
|> cluster.member(home())
|> cluster.member(work())
|> cluster.export()
}
```output:
![sample json output](https://raw.githubusercontent.com/samifouad/gild/main/sample_json_output.png)
this library is used to help create visualizations inside the [linkha.sh](http://linkha.sh) online playground and will be used inside a cli utility to make the declarative configuration come to life