You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.3 KiB
47 lines
1.3 KiB
# `lunanode`
|
|
|
|
This is an API to work with the LunaNode's OpenStack-compatible [citation needed] API.
|
|
|
|
## Installation
|
|
|
|
`cargo install lunanode`
|
|
|
|
## API Keys
|
|
|
|
Add the `LUNANODE_API_KEY` and `LUNANODE_KEY_ID` to your environment variables.
|
|
|
|
## Usage
|
|
|
|
See `lunanode help` screen.
|
|
|
|
Available subcommands:
|
|
|
|
* `billing`
|
|
* `dns`
|
|
* `dyn`
|
|
* `floating` (for LunaNode's floating IP system)
|
|
* `image`
|
|
* `network`
|
|
* `record` (DNS)
|
|
* `ssh-key`
|
|
* `vm`
|
|
* `volume`
|
|
* `zone`
|
|
|
|
Note that right now, only getting data through the `list/` endpoints is supported.
|
|
See section help for more details, i.e.: `lunanode image help`
|
|
|
|
## TODO (looking for contributors)
|
|
|
|
* [ ] Simplify code so there is less boilerplate. In particular, writing out every enum variant is pretty annoying when I need the same info out of them either way.
|
|
* [ ] Tests!!! I've written some, but this should be comprehensively tested.
|
|
* [ ] Write tests that involve talking with a live server! This will enable breaking changes from LunaNode to be seen before they are messed with.
|
|
* [ ] Stricter typing. Certain attributes, even though they are recieved as Strings, should really be some kind of `enum`. Make every non-String type some kind of enum.
|
|
|
|
## Support This Project
|
|
|
|
I don't take donations.
|
|
Please consider supporting my business: [Bytetools Technologies Inc.](https://bytetools.ca/) which is how I make money.
|
|
|
|
|