Package: gandi.cli
Gandi CLIUse$ gandito easily create and manage web resources from the command line.$ gandi domainto buy and manage your domain names$ gandi paasto create and deploy your web applications$ gandi vmto spin up and upgrade your virtual machines$ gandi certificateto manage your ssl certificates$ gandito list all available commandsDetailed examplesAll commandsTable of contentsRequirementsInstallationGetting startedUse casesRegistering a Domain NameCreating a Virtual MachineDeploying a Web Application with Simple HostingCreating a SSL CertificateAdding a Web Application vhost with SSLCreating a Private VLANAdvanced UsageAll CommandsBuild manpageConfigurationContributingCode statusLicenseRequirementsA compatible operating system (Linux, BSD, Mac OS X/Darwin, Windows)Python 2.7/3.4/3.5/3.6/3.7opensslopensshgitRecommended toolspipvirtualenvdockerInstallationInstall with pip and virtualenv$ virtualenv /some/directory/gandi.cli
$ source /some/directory/gandi.cli/bin/activate
$ pip install gandi.cliBuild from source$ cd /path/to/the/repository
$ python setup.py install --userFrom the Debian package$ ln -sf packages/debian debian && debuild -us -uc -b && echo "Bisou"Getting startedUsing our classic (V4) website:To get started, you can create afree Gandi accountand get your Gandi HandleGenerate your Production API Tokenfrom the account admin sectionYou may also want totop-up your prepaid accountTo manipulate VMs, you also need topurchase credits(you can use funds from your prepaid account)Using our latest (V5) website:To get started, you can create afree Gandi accountand get your Gandi usernameGenerate your Production API Tokenfrom within the account Security sectionYou may also want totop-up your prepaid accountTo manipulate VMs, you currently need to follow above steps to create an account on our classic (V4) website.Then run the setup$ gandi setup
> API Key: x134z5x4c5c          # copy-paste your api key
> Environment [production] :    # press enter for Production, the default
> SSH key [~/.ssh/id_rsa.pub] : # your SSH public key for hosting instances and serversSee theAdvanced Usagesection for more details on configuration.Use casesRegistering a domain nameCreating a virtual machineDeploying a web application with Simple HostingCreating a SSL CertificateAdding a Web Application vhost with SSLCreating a Private VLANRegistering a Domain NameGandi has been a domain name registrar since 1999. The oldest in France and one of the world's leading, Gandi is recognized for its No Bullshit™ trademark and approach to domain names.You can now buy and manage domains in any of the 500+ TLD's that Gandi offers from the command line.Learn more about Gandi Domains on the website.1. Buy a domain using the interactive prompt$ gandi domain create
> Domain: example.com      # enter the domain name here
> example.com is available
> Duration [1] : 1         # enter the duration in yearsThis will create a domain and use your default information for Ownership, Admin, Technical and Billing info.2. Buy a domain in one line$ gandi domain create --domain example.com --duration 13. Buy a domain with custom contacts$ gandi domain create --domain example.com --duration 1 --owner XYZ123-GANDI --admin XYZ123-GANDI --tech XYZ123-GANDI --bill XYZ123-GANDIYou can use the information of Gandi handles associated to Contacts in your account to setup Owner, Admin, Technical and Billing info.3. List your domains$ gandi domain list4. Get information about a domain$ gandi domain info example.com5. Manage NS records for your domainsCreate a new record$ gandi record create example.com --name www --type A --value 127.0.0.1Add a new record to the domain's current zone file and activate it.List your records$ gandi record list example.comList a domain's zone file records. You can use the--formatparameter to change the output format totextorjson.Update one record$ gandi record update example.com --record "@ 3600 IN A 127.0.0.1" --new-record "@ 3600 IN A 0.0.0.0"This command is useful to update only one record at the time. The pattern to use isname TTL CLASS TYPE value.You can easily check or copy-paste the values you need to replace using the--format textparameter:$ gandi record list example.com --format textUpdate many records$ gandi record list example.com --format text > file.zoneUse this command to extract your zone records into a file calledfile.zone(or something else).Simply edit the file to your liking and then update the entire zone file with it.$ gandi record update example.com -f file.zoneDelete records$ gandi record delete example.com --value 127.0.0.1Delete all records that match the given parameters from a domain's zone file. In this example, if there were many records with '127.0.0.1' as their value, all of them would be deleted.Creating a Virtual MachineGandi Server offers powerful Xen- and Linux-based virtual machines since 2007.Virtual machines can be configured and upgraded on the fly to your liking. For example, you can start with 1GB of RAM, and run a command to add 2GB of RAM and 2 CPUs without even having to restart it.Gandi Server measures consumption by the hour and uses a prepaid credit system. To learn more,check out the Gandi Server website.1. Create and access a VM$ gandi vm create
* root user will be created.
* SSH key authorization will be used.
* No password supplied for vm (required to enable emergency web console access).
* Configuration used: 1 cores, 256Mb memory, ip v4+v6, image Debian 8, hostname: temp1415183684, datacenter: LUCreate a virtual machine with the default configuration and a random hostname.2. Upgrade a VM$ gandi vm update temp1415183684 --memory 2048 --cores 2Set the VM's RAM to 2GB and add a CPU core on the fly.3. Create a custom VM$ gandi vm create --datacenter US --hostname docker --cores 2 --memory 3072 --size 10240 --image "Ubuntu 14.04 64 bits LTS (HVM)" --run "curl -sSL https://get.docker.com/ubuntu/ | sh"
* root user will be created.
* SSH key authorization will be used.
* No password supplied for vm (required to enable emergency web console access).
* Configuration used: 2 cores, 3072Mb memory, ip v4+v6, image Ubuntu 14.04 64 bits LTS, hostname: docker, datacenter: LUThis command will setup the above VM, and install docker by runningcurl -sSL https://get.docker.com/ubuntu/ | shafter creation.4. View your resources$ gandi vm list5. Get all the details about a VM$ gandi vm info dockerDeploying a Web Application with Simple HostingGandi Simple Hosting is a PaaS (Platform as a Service) offering fast code deployment and easy scaling, powering over 50,000 apps since its inception in 2012.Instances can run apps in 4 languages (PHP, Python, Node.js and Ruby) along with one of 3 popular databases (MySQL, PostgreSQL and MongoDB) and operate on a managed platform with built-in http caching.Plans cover all scales, from small to world-class projects.Check out the website for more information.1. Create a Simple Hosting instance$ gandi paas create --name myapp --type nodejspgsql --size S --datacenter FR --duration 12. Attach and push to your instance's git repositorySimple Hosting offers two "modes": theApp mode, where an instance offers a single git repository (default.git) and theSites mode, where you can have multiple git repositories per instance (one for each VHOST, for examplewww.myapp.com.git).Node.js, Python and Ruby instances run in App mode, whereas PHP instances run in Sites mode by default.
Note: If you create a wildcard VHOST for your PHP instance, the App mode will be activated.Assuming you have local directory calledappwhere you have placed your code base, you can use the following commands to create a git remote (called "gandi" by default) and push your code.$ cd app
$ gandi paas attach myapp # App mode
$ gandi paas attach myapp --vhost www.myapp.com # Sites mode
$ git push gandi master3. Deploy your codeStill inside theappfolder, you can use the following command to start the deploy process, which will checkout your code, install dependencies and launch (or relaunch) the app process:$ gandi deployCreating a SSL CertificateGandi SSL offers a range of SSL certificates to help you secure your projects.You can order, obtain, update and revoke your certificates from the command line.1. Find the right plan for you$ gandi certificate plansOur Standard, Pro and Business plans offer different validation methods and guarantees. Each plan supports all or some of these types of certificates: single address, wildcard and/or multiple subdomains.To discover our offering and find the right certificate for your project,compare our plansandtry our simulator.Gandi CLI can choose the right certificate type for you depending on the number of domains (altnames) you supply at creation time. You only need to set it if you plan on adding more domains to the certificate in the future.2. Create the CertificateWARNING: This command is billable.To request a certificate, you need to use a private key to generate and sign a CSR (Certificate Signing Request) that will be supplied to Gandi.Thecreatecommand will take care of this for you if you don't have them already, or you can supply your CSR directly.Check out the examples below orour wikifor more information on how SSL certificates work.To create a single domain Standard certificate:$ gandi certificate create --cn "domain.tld"For a wildcard Standard certificate:$ gandi certificate create --cn "*.domain.tld"For a multi domain Standard certificate:$ gandi certificate create --cn "*.domain.tld" --altnames "host1.domain.tld" --altnames "host2.domain.tld"You can also specify a plan type. For example, for a single domain Business certificate:$ gandi certificate create --cn "domain.tld" --type "bus"If you have a CSR (you can give the CSR content or the path):$ gandi certificate create --csr /path/to/csr/file3. Follow the Certificate create operation$ gandi certificate follow <operation_id>4. Get the CertificateAs soon as the operation is DONE, you can export the certificate.$ gandi certificate export "domain.tld"You can also retrieve intermediate certificates if needed.$ gandi certificate export "domain.tld" --intermediateFind information on how to use your certificate with different servers onour wiki.Adding a Web Application vhost with SSLGandi allows you to associate a certificate with your vhost.1. You already have the matching certificate at GandiJust create the vhost giving it the private key used to generate that certificate.$ gandi vhost create domain.tld --paas "PaasName" \
    --ssl --private-key "domain.tld.key"#### 2. You have the matching certificate but not at Gandi (or in another account)Declare the hosted certificate.$ gandi certstore create --pk "domain.tld.key" --crt "domain.tld.crt"And then create the vhost.$ gandi vhost create domain.tld --paas "PaasName" --ssl3. You don't have any certificates but you plan to get one at GandiCreate the certificate.$ gandi certificate create --cn "domain.tld.key" --type stdAnd then create the vhost.$ gandi vhost create domain.tld --paas "PaasName" \
    --ssl --private-key "domain.tld.key"Creating a private VLANYou can use Gandi CLI to create and setup your private VLANs. For more detailed information on how VLANs and networking in general works at Gandi, please check out our resources:Networking on Gandi WikiCreate a VLAN$ gandi vlan create --name my-vlan-in-lu --datacenter LU \
--subnet "192.168.1.0/24" --gateway 192.168.1.1To create a VLAN you need to determine itsnameanddatacenter.You can also set thesubnetat creation time, or a default subnet will be chosen for you. Thegatewaysetting is also optional and you can update both of these settings at any moment.$ gandi vlan update my-vlan-in-lu --gateway 192.168.1.254Attach an existing VM to a VLANTo add an existing VM to a VLAN, you can create a private network interface and attach it to the VM.$ gandi ip create --vlan my-vlan-in-lu --attach my-existing-vm --ip 192.168.1.254If you don't specify the IP you want to use, one will be chosen for you from the VLAN's subnet.Create a "Private VM"In fact there's no such thing as a "Private VM", but you can create a VM and only attach a private interface to it.$ gandi vm create --hostname my-private-vm --vlan my-vlan-in-lu --ip 192.168.1.2Please note that a private VM cannot be accessed through the emergency console. You'll need a public VM that also has a private interface on the same VLAN to gain access.More options$ gandi vlan --helpUse the--helpflag for more VLAN management options.Advanced UsageAll CommandsTo list all available commands, type$ gandi --helpFor extended instructions, check out themanpage.Build manpageInstall python-docutils and run:$ rst2man --no-generator gandicli.man.rst > gandi.1.manThen to read the manpage:$ man ./gandi.1.manConfigurationRun$ gandi setupto configure your settings (seeGetting started)Use$ gandi configto set and edit custom variables.
The default variables are:sshkey# path to your public ssh keyapi.host# the URL of the API endpoint to use (i.e. OTE or Production)api.key# the relevant API key for the chosen endpointContributingWe <3 contributions! SeeCONTRIBUTING.mdfor contribution guidelines.You can check thecontributors list.License / CopyingCopyright © 2014-2018 Gandi S.A.SGandi CLI is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.Gandi CLI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.You should have received a copy of the GNU General Public License
along with Gandi CLI.  If not, seehttp://www.gnu.org/licenses/gpl.txt.Changelog1.6Fixes #289: Spelling errors in manual pageGandi change its documentation URLUpdate status command to use statuspage in place of bahobabFix type issue with click >= 7.11.5Fixes #280: Problem with new recordFixes #284: Manpage errorsFixes #287: Problem with dnssec create with algorithm/flags1.4Fixes #268: Drop support of click < 7.0Drop support of python 2.6 and 3.3Add coverageTest python 3.7 and pypy in travisPEP81.3Use pytest instead of noseAdd extra parameter in domain createAdd support of Python 3.7Fixes #245: Add support of DNSSECFixes #250: Drop support of Python < 3.31.2Add support for paas size s+ for creation/updateFixes #232: Update 'gandi record update' command to allow filtering by nameFix bug when attempting to migrate a vm which cannot be migratedOnly display DC closed warning if a date is set1.1FR-SD5 is now the default datacenter.Add new 'gandi dns update' command.Fixes #228: Generate a user password at the creation of a VMImprove wait for ssh connectivity after 'gandi vm create' command to handle ipv6Fix a bug with 'gandi disk migrate' command not working with multiple datacenters choicesImprove documentation for generating username/apikey with Gandi V51.0New 'dns' namespace to manage DNS records/dnssec through LiveDNS API.Add new 'gandi vm migrate' command.Refactor internal click code usage. Remove hackish code to handle
nested commands which was limited to only 1 nested level.This change will break code of users which were using custom commands
on top of Gandi CLI, To fix this you have to use the proper click syntax
to declare a new group for your commands.This change also remove the automatic listing of all namespace commands
upon a typo or unknown/wrong command.Fixes #224: DeprecationWarning makes tests fail with python 3.6.20.22Fixes #223: 'gandi setup' command errorFixes #222: AttributeError during vm creation on a private vlanFixes tests for 'gandi deploy' and 'gandi status' commands0.21Add new 'gandi disk migrate' commandUpdate 'gandi setup' command to ask for apikey for REST APIHandle deprecated imagesAdd a warning during 'gandi vm create' commandDisplay a * before image labels on 'gandi vm create' helpDisplay a /!\ DEPRECATED on 'gandi vm images' commandFixes #220: gandi record update issuesDo not cast to int the id of the record, use the retrieve valueHandle both record syntax with 'IN' or not when parsingDelete created zone if record.update call fail from xmlrpc APIFixes #219: Can't remove disk snapshot profilevm: delete: Fix delete when we reach the list limitFixed a bug when deleting a vm that wasn't listed in the first 500 results
of gandi.iaas.list.Fix issue when updating disk kernel with a kernel from another datacenterCLI was proposing only kernels available on datacenter 1, but some kernels
are available only on other datacenters, so we list everything for --kernel
parameters, and for disk update command we add a new check if this kernel is
available for this disk on this datacenter.Add epilog to help messages to notify user about man documentationAdd one new verbose level for dumping data0.20Add support for python3.6Debian 8 is the new default VM imageFR-SD3 is the new default datacenterUpdate 'gandi mail create' command to allow passing password as parameterUpdate 'gandi certificate create' command: duration is now limited to 2 yearsUpdate 'gandi ip create' command to fix bad units in help messageFixes #182: 'gandi disk create' will detect datacenter when creating a new VM diskFixes #184: 'gandi disk list' can now filter for attach/detach stateFixes #192: 'gandi certificate info' now still works after 500 certificatesFixes #201: 'gandi certificate export' was duplicating intermediate certificateFixes #211: 'gandi paas deploy' tests should work again when using git commandsFixes a bug with options not using corrected value when deprecatedUpdate unixpipe module to remove usage of posix and non portable imports0.19Update create commands for namespaces: vm, paas, ip, disk, vlan, webacc
to handle new datacenter status:prevent using a closed datacenter for creationdisplay a warning when using a datacenter which will be closed
in the futureUpdate 'gandi mailbox info' command: aliases are now sortedFixes #178: 'gandi account info' command now display prepaid amountFixes #185: 'gandi domain create' command can now change nameserversFixes #187: 'gandi record list' command has a --limit parameterFixes #188: broken links in READMEFixes certificate unittest for python30.18Update 'gandi paas update' command: --upgrade parameter is now a boolean flagUpdate 'gandi deploy' command:new '--remote' and '--branch' optionsbetter handling of case when git configuration is not configured as expectedwill try and use the gandi remote by default to extract deploy urlwill deploy the branch master by defaultwill fallback to guessing the Simple Hosting remote from git configuration
of the branch to deployimprove error message when unable to executeUpdate VM spin up timeout to 5min (from 2min) for bigger VM.Add more unittests.0.17Gandi CLI now supports python3.5Update 'gandi paas' namespace:Add new command 'gandi paas attach' to add an instance vhost's git
remote to local git repository.Update 'gandi deploy' command:don't need a local configuration file anymoreneed to be called on attached paas instanceUpdate 'gandi paas clone' command:you can now specify which vhost and local directory to useUse correct prefix for name generation in create commandConvert 'gandi config' command to a namespace to allow configuration
display and editionFixes bug with 'gandi account' command which was broken sometimesFixes a bug with 'gandi vlan update' command when using --create flagFixes a bug with mail alias update when using same number of alias
add/del parameters.Fixes a bug when using a resource name and having more than 100 items of
this resource typeFixes size parameter choices for 'gandi paas create' command.Fixes bug with 'gandi record update' command and argument parsingFixes bug with 'gandi record' commands:must always exit if wrong/missing input parameter.Always display CLI full help message when requesting an unknown commandBe less aggressive when trying to connect via SSH during 'gandi vm create'Better handling of no hosting credits error.Add more unittests.Fixes #108Fixes #128Fixes #140Fixes #157Fixes #161Fixes #165Fixes #170Fixes #1730.16Update parameter '--datacenter':allow dc_code as optional valueold values: FR/LU/US are still working so it doesn't break
compatibility but they will be deprecated in next releasesUpdate output of IP creation to display IP address:for 'gandi ip create' commandfor 'gandi vm create' command with --ip optionVarious improvements to modules for library usage:datacenteraccountdomainoperationsUpdate 'gandi mail info' command:change output of responder and quota information
to be more user friendlyUpdate click requirement version to >= 3.1 so we always use the
latest versionFixes debian python3 packagingFixes #148Fixes #1470.15New command 'gandi domain renew' command to renew a domain.Update 'domain info' command:add creation, update and expiration date to outputchanges nameservers and services output for easier parsingUpdate 'gandi domain create' command:the domain name can now be passed as argument, the option
--domain will be deprecated upon next release.Update 'gandi disk update' command:add new option '--delete-snapshotprofile' to remove a snapshot
profile from diskUpdate 'gandi ip delete' command:now accept multiple IP as argument in order to delete a list
of IP addressesFixes #119Fixes #129Fixes #1410.14New 'certstore' namespace to manage certificates in webaccs.New command 'gandi vhost update' to activate ssl on the vhost.Update 'gandi vhost create' and 'gandi vhost update' commands
to handle hosted certificates.Update 'gandi paas create' command to handle hosted certificates.Update 'gandi webacc create' and add to handle hosted certificates.Update 'gandi paas info' command:add new --stat parameter, which will display cached page statistic
based on the last 24 hours.add snapshotprofile information to output.Update 'gandi oper list' command to add filter on step type.Update 'gandi paas update' command to allow deleting an existing
snapshotprofile.Update 'gandi status' command to also display current incidents not
attached to a specific service.Fixes #132Fixes #131Fixes #130Fixes #120Fixes error message when API is not reachable.0.13New 'webacc' namespace for managing web accelerators for virtual machines.New command 'gandi status' to display Gandi services statuses.New command 'gandi ip update' to update reverse (PTR record)Update 'gandi vm create' command to add new parameter --ssh to open a SSH
session to the machine after creation is complete. This means that the
previous behavior is changed and vm creation will not automatically open a
session anymore.Update several commands with statistics information:add disk quota usage in 'gandi paas info' commandadd disk network and vm network stats in 'gandi vm info' commandUpdate 'gandi account info' command to display credit usage per hourUpdate 'gandi certificate update' command to displays how to follow and
retrieve the certificate after completing the process.Update 'gandi ip info' command to display reverse informationUpdate 'gandi ip list' command to add vlan filteringUpdate 'gandi vm list' command to add datacenter filteringUpdate 'gandi vm create' command to allow usage of a size suffix for
--size parameter (as in disk commands)Update 'gandi vm ssh' command to add new parameter --wait to wait forUpdate 'certificate' namespace:'gandi certificate follow' command to know in which step of the process
is the current operation'gandi certificate packages' display has been enhanced'gandi certificate create' will try to guess the number of altnames
or wildcard'gandi certificate export' will retrieve the correct intermediate
certificate.Update 'gandi disk attach' command to enable mounting in read-only and also
specify position where disk should be attached.Update 'gandi record list' command with new parameter --formatUpdate 'gandi record update' command to update only one record in the zone
fileUpdate 'gandi vm list' command to add datacenter filteringRefactor code for 'gandi ip attach' and 'gandi ip delete' commands
virtual machine sshd to come up (timeout 2min).Refactor 'gandi vm create' command to pass the script directly to the API
and not use scp manually after creation.Fixes wording and various typos in documentation and help pages.Add more unittests.Add tox and httpretty to tests packages requirements for unittests0.12New 'ip' namespace with commands for managing public/private ip resources.New 'vlan' namespace with commands for managing vlans for virtual machines.New command 'gandi account info' to display information about credits
amount for hosting account.New command 'gandi contact create' to create a new contact.New command 'gandi disk snapshot' to create a disk snapshot on the fly.Update 'gandi vm create' command:enabling creation of vlan and ip assignment for this vlan directly
during vm creation.enabling creation of a private only ip virtual machine.parameter --ip-version is not read from configuration file anymore,
still defaulting to 4.Update 'gandi paas create' command to allow again the use of password provided
on the command line.Update 'record' namespace to add delete/update commands, with option to export
zones to file.Use different prefix for temporary names based on type of resource.Switch to use HVM image as default disk image when creating virtual machine.Add kernel information to output of 'gandi disk list' command.Fixes bug with paas vhost directory creation.Fixes bug with 'gandi mail delete' command raising a traceback.Fixes bug with duplicates entries in commands accepting multiple resources.Fixes various typos in documentation and help pages.Add first batch of unittests.0.11New command 'gandi disk detach' to detach disks from
currently attached vm.New command 'gandi disk attach' to attach disk to a
vm.New command 'gandi disk rollback' to perform a rollback
from a snapshot.New parameter --source for command 'gandi disk create'
to allow creation of a new disk from an existing disk
or snapshot.New parameter --script for command 'gandi vm create'
to allow upload of a local script on freshly created vm
to be run after creation is completed.Update parameter --size of 'gandi disk create/update'
command to accept optionnal suffix: M,G,T (from megabytes
up to terabytes).Update command 'gandi vm ssh' to accept args to be passed
to launched ssh command.Fixes bug with 'gandi vm create' command and image
parameter, which failed when having more than 100 disks
in account.Fixes bug with 'gandi paas info' command to display
sftp_server url.Fixes bug with 'gandi record list' command when requesting
a domain not managed at Gandi.Rename --sshkey parameter of 'gandi sshkey create' command
to --filename.Prettify output of list/info commands.GANDI_CONFIG environment variable can be used to override
the global configuration file.Bump click requirement version to <= 4.0.10Add new dependency to request library, for certificate
validation during xmlrpc calls.New command 'gandi vm kernels' to list available kernels,
can also be used to filter by vm to know which kernel is
compatible.New parameters --cmdline and --kernels for command
'gandi disk update' to enable updating of cmdline
and/or kernel.New parameter --size for command 'gandi vm create'
to specify disk size during vm creation.Handle max_memory setting in command 'gandi vm update'
when updating memory. New parameter --reboot added to
accept a VM reboot for non-live update.Update command 'gandi vm images' to also display usable
disks as image for vm creation.Security: validate server certificate using request as
xmlrpc transport.Security: restrict configuration file rights to owner only.Refactor code of custom parameters, to only query API when
needed, improving overall speed of all commands.Fixes bug with sshkey parameter for 'gandi paas create'
and 'gandi paas update' commands.When an API call fail, we can call again using dry-run flag
to get more explicit errors. Used by 'gandi vhost create'
command.Allow Gandi CLI to load custom modules using
'GANDICLI_PATH' environment variable, was previously only
done by commands.0.9New command 'gandi docker' to manage docker instance.
This requires a docker client to work.Improve 'vm ssh' command to support identity file, login@
syntax.Login is no longer a mandatory option and saved to configuration
when creating a virtual machine.Add short summary to output when creating a virtual machine.Fixes bug when no sshkey available during setup.Fixes bug with parameters validation when calling a command
before having entered api credentials.0.8New record namespace to manage domain zone record entries0.7Add and update License information to use GPL-3Uniformize help strings during creation/deletion commands0.6New mail namespace for managing mailboxes and aliasesNew command 'disk create' to create a virtual diskNew command 'vm ssh' to open a ssh connection to an existing
virtual machineNew command 'help' which behave like --help option.Using 'gandi namespace' without full command will display list
of available commands for this namespace and associated short help.'gandi paas create' and 'gandi vm create' commands now use sshkeys,
and default to LU as default datacenter.0.5Fixes Debian packaging0.4Fixes bug with snapshotprofile list command preventing
'gandi setup' to work after clean installationAllow Gandi CLI to load custom modules/commands using
'GANDICLI_PATH' environment variable0.3New certificate namespace for managing certificatesNew disk namespace for managing iaas disksNew snapshotprofile namespace to know which profiles existsAllow override of configuration values for apikey, apienv and apihost
using shell environment variables API_KEY, API_ENV, API_HOST.Bugfixes on various vm and paas commandsFixes typos in docstringsUpdate man page0.2New vhost namespace for managing virtual host for PaaS instancesNew sshkey namespace for managing a sshkey keyringBugfixes on various vm and paas commandsBugfixes when using a hostname using only numbersAdded a random unique name generated for temporary VM and PaaS0.1Initial release