https://github.com/softwarefactory-project/dhall-nodepool
https://github.com/softwarefactory-project/dhall-nodepool
Last synced: 3 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/softwarefactory-project/dhall-nodepool
- Owner: softwarefactory-project
- Created: 2020-04-20T14:51:30.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2025-03-19T18:05:48.000Z (about 1 year ago)
- Last Synced: 2025-03-19T19:23:35.504Z (about 1 year ago)
- Language: Dhall
- Size: 190 KB
- Stars: 1
- Watchers: 7
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dhall-nodepool
`dhall-nodepool` contains [Dhall][dhall-lang] bindings to [Nodepool][nodepool],
so you can generate nodepool configuration from Dhall expressions.
## Example
```dhall
-- ./examples/demo.dhall
let Nodepool = ../package.dhall
in Nodepool.Config::{
, providers =
[ Nodepool.Providers.static
Nodepool.Static::{
, name = "provider_static"
, pools =
[ Nodepool.Static.Pool::{
, name = "main"
, nodes =
[ Nodepool.Static.Pool.Node::{
, name = "static.example.com"
, labels = [ "mylabel" ]
}
]
}
]
}
]
, labels = Some [ Nodepool.Label::{ name = "mylabel" } ]
, zookeeper-tls = Nodepool.ZookeeperTls::{
, ca = "my.ca"
, cert = "my.crt"
, key = "my.key"
}
, zookeeper-servers =
[ Nodepool.ZookeeperServer::{ host = "zk01.example.com" } ]
}
```
```yaml
# dhall-to-yaml --file examples/demo.dhall
labels:
- name: mylabel
providers:
- driver: static
name: provider_static
pools:
- name: main
nodes:
- labels:
- mylabel
name: static.example.com
zookeeper-servers:
- host: zk01.example.com
zookeeper-tls:
ca: my.ca
cert: my.crt
key: my.key
```
## Changes
Frozen packages are available in the tag commit.
### 0.4.0
- Add Openstack.CloudImage shell-type attribute
### 0.3.0
- Top level labels are changed to Optional
### 0.2.0
- Initial release