From d8b28b520501a8b20339a4ea2766fe651ea9dc2f Mon Sep 17 00:00:00 2001 From: Quentin Date: Thu, 23 Sep 2021 08:35:47 +0200 Subject: [PATCH] Add a README file --- README.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..fa867aa --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +## nuage + +`nuage` is a tool to deploy instances on scaleway. +You can see it as a basic re-implementation of a tool like Terraform, specially tailored for my needs/workflow. + +you will need Scaleway's command line tool to setup your tokens. + - [install it](https://github.com/scaleway/scaleway-cli#installation) + - run `scw init` + +nuage is idempotent, so if you run twice the same command, it will not fail but just say that the operation has already be done. +nuage, and not Scaleway, requires that instance's name are uniques to provide this idempotency feature. + +## install + + 1. Install go on your machine (cf golang.org) + 2. Clone this repository + 3. Run `go build` + +## usage + +Now, you can create your own inventory, the file format is basic: ` `. +See the committed `inventory.txt` for an example. + +Then it could be used as follow: + +``` +./nuage spawn < inventory.txt +./nuage run <(echo "touch /etc/nuage.txt") < inventory.txt +./nuage destroy < inventory.txt +``` + + 1. It will spawn the 2 instances defined in the inventory + 2. It will run `touch ...` on all instances of the inventory + 3. It will power off then delete the instances + + +