# idyl

> CLI for Idyl Cloud

Latest version **0.1.3** (published 2019-04-04) · MPL-2.0 license · 0 weekly downloads

## Install

```sh
npm install idyl
pnpm add idyl
yarn add idyl
bun add idyl
```

Provides the command `idyl`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.3 |
| Published | 2019-04-04 |
| First published | 2019-04-03 |
| Weekly downloads | 0 |
| License | MPL-2.0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >=0.10 |
| Dependencies | 25 |
| Unpacked size | 947.1 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| Author | Idyl Technologies |
| Maintainers | idyl |

## Links

- npm: https://www.npmjs.com/package/idyl
- Repository: https://github.com/Idyl-Technologies/idyl-cli
- Issues: https://github.com/Idyl-Technologies/idyl-cli/issues
- npm.io page: https://npm.io/package/idyl

## Dependencies (25)

- [once](https://npm.io/package/once.md) 1.3.2
- [read](https://npm.io/package/read.md) 1.0.7
- [cmdln](https://npm.io/package/cmdln.md) 4.1.2
- [sshpk](https://npm.io/package/sshpk.md) 1.14.1
- [which](https://npm.io/package/which.md) 1.2.4
- [bunyan](https://npm.io/package/bunyan.md) 1.8.12
- [jsprim](https://npm.io/package/jsprim.md) 1.4.0
- [mkdirp](https://npm.io/package/mkdirp.md) 0.5.1
- [rimraf](https://npm.io/package/rimraf.md) 2.4.4
- [semver](https://npm.io/package/semver.md) 5.1.0
- [tabula](https://npm.io/package/tabula.md) 1.10.0
- [vasync](https://npm.io/package/vasync.md) 1.6.3
- [verror](https://npm.io/package/verror.md) 1.10.0
- [backoff](https://npm.io/package/backoff.md) 2.4.1
- [getpass](https://npm.io/package/getpass.md) 0.1.6
- [strsplit](https://npm.io/package/strsplit.md) 1.0.0
- [wordwrap](https://npm.io/package/wordwrap.md) 1.0.0
- [lomstream](https://npm.io/package/lomstream.md) 1.1.0
- [bigspinner](https://npm.io/package/bigspinner.md) 3.1.0
- [extsprintf](https://npm.io/package/extsprintf.md) 1.0.2
- [assert-plus](https://npm.io/package/assert-plus.md) 0.2.0
- [sshpk-agent](https://npm.io/package/sshpk-agent.md) 1.7.0
- [smartdc-auth](https://npm.io/package/smartdc-auth.md) 2.5.7
- [restify-errors](https://npm.io/package/restify-errors.md) 3.0.0
- [restify-clients](https://npm.io/package/restify-clients.md) 1.5.2

## Recent versions

- 0.1.3 (latest) — 2019-04-04
- 0.1.2 — 2019-04-04
- 7.0.1 — 2019-04-03

## README

# Idyl CLI

`idyl` is a CLI tool for working with the CloudAPI for Idyl Cloud.
CloudAPI is a RESTful API for end-users of the cloud to manage their accounts, instances,
networks, images, and to inquire other relevant details. CloudAPI provides a single view of
docker containers, infrastructure containers and hardware virtual machines available in
Idyl Cloud.

**The `idyl` CLI is currently in beta**

## Setup

### Pre-requisites

Before you can use the CLI you'll need:
- An account on Idyl Cloud
- Your SSH public key uploaded to Idyl Cloud which is used to identify and securely access containers and other resources in Idyl)

### API endpoint

Each datacenter has a single CloudAPI endpoint. For evaluation users, the Idyl
CloudAPI endpoint is https://cloudapi.eval0.idyl.tech.

### Installation

Install [node.js](http://nodejs.org/), then:

```
npm install -g idyl
```

Verify that it is installed and on your PATH:

```
idyl --version
```
> output
```
Idyl CLI 7.0.1
https://github.com/Idyl-Technologies/idyl-cli
```


## idyl-cli differences with node-smartdc

- There is a single `idyl` command instead of a number of `sdc-*` commands.
- `IDYL_*` environment variables are preferred to the `SDC_*` environment
  variables. However the `SDC_*` envvars are still supported.
- Node-smartdc still has more complete coverage of the Idyl
  [CloudAPI](https://apidocs.joyent.com/cloudapi/). However, `idyl` is
  catching up and is much more friendly to use.


## Development Hooks

Before commiting be sure to, at least:

    make check      # lint and style checks
    make test-unit  # run unit tests

A good way to do that is to install the stock pre-commit hook in your
clone via:

    make git-hooks

Also please run the full (longer) test suite (`make test`). See the next
section.


## Test suite

idyl-cli has both unit tests (`make test-unit`) and integration tests (`make
test-integration`). Integration tests require a config file, by default at
"test/config.json". For example:

    $ cat test/config.json
    {
        "profileName": "east3b",
        "allowWriteActions": true,
        "image": "minimal-64",
        "package": "g4-highcpu-128M",
        "resizePackage": "g4-highcpu-256M"
    }

See "test/config.json.sample" for a description of all config vars. Minimally
just a "profileName" or "profile" is required.

*Warning:* Running the *integration* tests will create resources and could
incur costs if running against a public cloud.

Run all tests:

    make test

You can use `IDYL_TEST_CONFIG` to override the test file, e.g.:

    $ cat test/coal.json
    {
        "profileName": "coal",
        "allowWriteActions": true
    }
    $ IDYL_TEST_CONFIG=test/coal.json make test

where "coal" here refers to a development Idyl (a.k.a SDC) ["Cloud On A
Laptop"](https://github.com/joyent/sdc#getting-started) standup.

## License

MPL 2.0

---
_Source: https://npm.io/package/idyl · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
