Skip to content

Releases: hyperonecom/h1-cli

v1.8.1

19 Nov 12:39
Compare
Choose a tag to compare

Release version 1.8.1

We are releasing a new version of the CLI interface that eliminates small bugs, but which may affect the user's work. The release should be fully backward compatible.

Patching 🐛

Fixed following bugs:

  • fields displayed in the resource list have been unified, taking into account the specificity of a given resource,
  • opening the Virtual Machine graphics console uses the new authentication method
  • SSH authentication works correctly again on all scopes

v1.8.0

23 Sep 12:16
Compare
Choose a tag to compare

Release version 1.8.0

We are releasing a new version of the CLI interface that focuses on simplifying the most used user flows. We are also expanding the capabilities of the DNS and Journal services.

Speedup CLI execution

CLI operation has been significantly accelerated. Execution time has been reduced in the average case by about 50%.

We believe that the change will particularly satisfy users who regularly use CLI. Now their work can be more efficient, especially in the case of scripts and bulk operations.

Rename & Extend Journal

In order to meet users' expectations regarding the use of the Journal service, it has been significantly changed.

Starting from the name - now "logArchive" service available in CLI as log is called "Journal" and is available in CLI as journal.

For data uploads, the ability to stream log entries has been introduced. This allows you to reduce the time from the event to its registration

When storing data, the sent data can be marked with tags. These tags can then be used to filter and quickly read the data that is expected.

In the case of reading, the option has been introduced:

  • reading entries from any period - with precision up to a minute,
  • reading entries with specific tags,
  • an effective mechanism for reading the first and last entries for a given period.

Considering the average usage patterns of users, it was possible to execute the archive data read command in one execution, e.g. the last few entries and new ones coming in almost real time.

In order to use, read the details in journal --help.

Increased security via Zone

Support for CAA DNS records has been introduced to improve security of Organisation. A CAA record is a certification authority authorisation record that is used to determine which certification authorities can issue SSL certificates for a domain.

In order to use, read the details in dns record-set caa --help.

The new release may not show previously created DNS zones immediately after launch. The change results from a change in the way of communication with the platform. Changes in this DNS zone are possible to make with earlier versions of CLI or will be available after waiting a few days in current releases.

In order to improve the security of zone management, the upsert command was introduced for each supported record type. New command create - or in case of collisions replace - a set of records. At the same time, the command create in the event of a collision will return an error now. Thanks to this, the effect of the command is easier to predict, and user data is secure against accidental overwriting.

Simplify VM create

Based on user behaviour analysis, we noticed the potential to optimise the vm create command by expanding the default parameter. We introduced automatic disk creation in the recommended size for the image (if no disk specified) and the use of all user SSH keys.

Help for continuous deployment of container

To simplify the common user process, we've introduced the container recreate command. It allows you to create a container with new properties in place of the old one, e.g. a container with a new image. The solution effectively interacts with service-discovery and can be the basis for the implementation of the continuous-deployment process.

In order to use, read the details in container recreate --help.

Patching 🐛

Fixed following bugs:

  • empty output for some resource delete / tag list – not it output correct in all cases
  • fix format JSON / JS
  • omitted reservation rename command was added

v1.7.0

30 Aug 16:07
Compare
Choose a tag to compare

Version 1.7.0

We are releasing a new version of the CLI, which add new functionalities eg. adding firewall to network adapter. Registry has been added as part of the Early adopters program. The Website has been expanded to manage snapshots.

Direct cooperation between Firewall and Network Adapter

We improve Firewall to increase the security of, among others: Virtual machines. Now the firewall can be assigned to Network adapter of Virtual machine. This allows to increase the security of IT systems in Organisation.

Firewall allows to quickly manage complex environments in which you want to precisely control network communication. The use of the Firewall provided by the Platform may be a solution to the problem of rule consistency, especially in the case of environments using different operating systems. It also prevents situations when, during a routine update, a internal application becomes publicly accessible from the Internet.

The following commands have been added to take advantage of the new possibilities:

  • network firewall - Manage Firewall of Network
    • network firewall add - Add firewall to Network
    • network firewall remove - Remove firewall from Network
  • vm nic firewall - Manage Firewall of Network adapter
    • vm nic firewall add - Add firewall to Network adapter
    • vm nic firewall remove - Remove firewall from Network adapter

For details, try vm nic firewall add --help.

Added Registry management

The Registry is a new solution for storing container images to easily manage their life cycle. It has full compatibility with the Docker CLI interface. An essential element of the modern IT environment.

The solution can significantly facilitate container creation due to easy storage and management of container images. Both in the case of containers based on the Container service as well as operating in the case of their own environments. It can be used for version management (versioning and archiving), as part of the CI / CD process or for software publication.

  • registry create - Create Registry
  • registry list - List Registry
  • registry show - Show Registry
  • registry delete - Delete Registry
  • registry history - History of Registry
  • registry rename - Rename Registry
  • registry service - Manage your services of Registry
    • registry service list - List Service for Registry
    • registry service show - Show Service for Registry
  • registry start - Start Registry
  • registry stop - Stop Registry
  • registry transfer - Transfer Registry to other project
  • registry domain - Manage Domain name of Registry
    • registry domain add - Add Domain name to Registry
    • registry domain list - List Domain name of Registry
    • registry domain delete - Delete Domain name from Registry
  • registry repository - Manage your repository of Registry
    • registry repository show - Show repository of Registry
    • registry repository list - List repository of Registry
    • registry repository tag - Manage your tag in repository
      • registry repository tag show - Show tag in repository
      • registry repository tag list - List tag in repository
      • registry repository tag delete - Delete tag in repository
  • registry credential - Manage your credentials of Registry
    • registry credential list - List credential of Registry
    • registry credential show - Show credential of Registry
    • registry credential password - Manage your password Registry
      • registry credential password list - List password credential of Registry
      • registry credential password show - Show password credential of Registry
      • registry credential password rename - Rename password credential of Registry
      • registry credential password delete - Delete password credential of Registry
      • registry credential password add - Add password credential of Registry
      • registry credential password list - List password credential of Registry
  • registry tag - Manage your tag
    • registry tag list - List tag
    • registry tag add - Add a tag to Registry
    • registry tag delete - Delete a tag of Registry

For details, try registry --help.

Added snapshots management to Website

Following commands were added to manage snapshots:

  • website snapshot create - Create snapshot of Website
  • website snapshot list - List snapshot of Website
  • website snapshot delete - Delete snapshot of Website
  • website snapshot download - Download snapshot of Website as ZFS file

Command website create was extended to optional parameters to choose source snapshot for new Website:

Parameter Description
--source-snapshot SOURCE-SNAPSHOT Snapshots to use as base of new Website
--source-snapshot SOURCE-SNAPSHOT Snapshots to use as base of new Website

By default, Website is empty. Using Snapshot allows you to recreate an existing one based on Snapshot of other Website.

CLI is available in new way

To facilitate the use of CLI in diverse environments, we distribute them in a new way - using Registry and through official Alpine Linux repository.

In order to run CLI from Registry, do the following:

docker run -it -v ~/.h1-cli:/root/.h1-cli h1cr.io/cli:latest h1 vm list

The solution is particularly convenient when used together with a Service Account.

To install CLI from the Alpine Linux repository, do the following:

apk add --repository "http://dl-cdn.alpinelinux.org/alpine/edge/testing" h1-cli
apk add --repository "http://dl-cdn.alpinelinux.org/alpine/edge/testing" rbx-cli

Recommended for use in a containerised environment where latest version CLI version is required.

We are waiting for information on other, expected forms of software distribution, to focus our work on users needs.

Patching 🐛

Fix minor bugs:

  • Alpine releases binaries build & execute correctly on Alpine
  • --project-select no longer involve persistent changes
  • env and project token env provide valid output for non-Linux platform & detect TTY
  • tag commands provides format output properly
  • increasing compatibility database with PostgreSQL by choosing the optimal password encryption method for the service

v1.6.1

10 Jun 10:15
Compare
Choose a tag to compare

Version 1.6.1 is out

We are releasing a new version of the CLI, which added expected feature of updating domains of Website without recreating it. Please note that Website remains available - as part of the Early adopters program - to limited group of projects.

Update domains of Website

We provide an operation to update domains of already created Website. This allows users to change the domain address of the application as if the new address was used from the very beginning of Website.

Please note that changing the address of the application may not be supported by running applications. For details, please contact software vendor.

The functionality is particularly useful when promoting test environments to the functions of production environments. Now this can be done efficiently & safely. In case of difficulties, the process can be easily reversed.

For more details and examples how to use new feature, try website update domain --help.

Bug fixes

Removing bug of consistency of handling HYPERONE_ACCESS_TOKEN_SECRET environment variable versus other supported environment variables.

v1.6.0

28 May 12:46
Compare
Choose a tag to compare

Version 1.6.0

Version 1.6.0 is out

We are releasing a new version of the CLI, which simplifies use it together with tools like Docker-Machine, Packer and simplifies several use cases. Website and Database management has been added as part of Early adopters program.

Increase efficiency through environment variables

In order to increase the efficiency and facilitate the cooperation of the CLI with external tools, changes have been introduced in the area of environment variables, which will be standardized in all popular tools compatible with the Platform.

The names of environment variables have been changed. Currently supported:

  • HYPERONE_ACCESS_TOKEN_SECRET - Specify user session or service account to access Platform
  • HYPERONE_PROJECT - Override current project on the request
  • HYPERONE_CLI_VERBOSE - Make the operation of CLI more talkative.
  • HYPERONE_CLI_OUTPUT - Specify output format of command
  • HYPERONE_DATABASE_PASSWORD - Password to connect database in database shell command
  • HYPERONE_LOG_TOKEN - Token to connect log in database logger command.

The setting of environment variables has been facilitated by adding two commands:

  • env - Get environment variables to manage project by User Session
  • project token env - Get environment variables to manage project by Service account

That commands help manage project using User Session or Service Account. Particularly useful when working with tools, such as Packer, Docker-Machine, which do not use user password authentication or SSH keys to gain access to the Platform.

For more details and examples, try env --help and project token env --help.

Unified credentials on resource create

Access to some of resources requires providing credentials. Now is possible to provide them at create command. If applicable, the --ssh, --ssh-file and --password parameters are available across all resources.

If affect following commands:

  • log create - --password parameter added
  • vault create - --ssh, --ssh-file and --password parameter added

Added Database and Website management

We have introduced Website and Database management for Early adopters program participants.

Website allows to run web application in popular network technologies, i.e. PHP. Automated server management by Platform allows the developer to focus only on building the application without hassle of maintaining the infrastructure.

Database allows to use database servers without having to maintain and manage the entire server with the operating system and many services, which allows to significantly reduce the cost of long-term maintenance of the application and ensure a high level of security.

Both services integrated allows to run full websites, online stores, internet portals, for example based on Wordpress, Magento, Drupal.

The use of CLI allows easily extend the existing continuous integrations process to continuous deployment mechanisms and accelerate the release of new software versions in Organisation. Management via CLI can be useful when automatically preparing test environments too.

The following commands are available for management of Database:

  • database create - Create database
  • database service - Manage your services of database
    • database service list - List service for database
    • database service show - Show service for database
  • database delete - Delete database
  • database history - History of database
  • database rename - Rename database
  • database list - List database
  • database show - Show database
  • database start - Start database
  • database stop - Stop database
  • database shell - Connect to database using standard client
  • database credential - Manage your credentials to database
    • database credential password - Manage your password to database
    • database credential password show - Show password to database
    • database credential password list - List password to database
    • database credential password rename - Rename password to database
    • database credential password delete - Delete password to database
    • database credential password add - Add password to database
  • database tag - Manage your tag
    • database tag list - List tag
    • database tag add - Add a tag to database
    • database tag delete - Delete a tag of database

The following commands are available for management of Website:

  • website create - Create website
  • website ssh - Connect to website using SSH
  • website delete - Delete website
  • website history - History of website
  • website rename - Rename website
  • website list - List website
  • website service - Manage your services of website
    • website service list - List service for website
    • website service show - Show service for website
  • website show - Show website
  • website sftp - Connect to Website using SFTP
  • website start - Start website
  • website stop - Stop website
  • website log - Live logs of website
  • website sftp - Connect to website using SFTP
  • website credential - Manage your credentials to website
    • website credential cert - Manage your certificate to website
      • website credential cert show - Show certificate to website
      • website credential cert rename - Rename certificate to website
      • website credential cert list - List certificate to website
      • website credential cert delete - Delete certificate to website
      • website credential cert add - Add certificate to website
    • website credential password - Manage your password to website
      • website credential password show - Show password to website
      • website credential password list - List password to website
      • website credential password rename - Rename password to website
      • website credential password delete - Delete password to website
      • website credential password add - Add password to website
  • website tag - Manage your tag
    • website tag list - List tag
    • website tag add - Add a tag to website
    • website tag delete - Delete a tag of website

Added creating Disk from another Disk

We provide an operation creating Disk from another Disk, which consists in creating a new Disk using data collected on an existing Disk. It runs in the same way regardless of the nature of the data stored in Disk - it is not important whether it will be a database, or multimedia data or archive of documents. The availability of CLI operations makes it easier to use this mechanism as the basis for a backup system.

For more details and examples, try disk create --help.

v1.5.1

07 May 14:19
Compare
Choose a tag to compare

Version 1.5.1 is out

We are releasing a new version of the CLI. This is a patch release that does not introduce new features. The release removes the annoying bug introduced in 1.5.0 of displaying an unnecessary warning each time the CLI is executed.

v1.5.0

18 Apr 12:30
Compare
Choose a tag to compare

Version 1.5.0 is out

We are releasing a new version of the CLI, which unifies the operation on resources and simplifies several use cases. Resource management has been added as part of special program: Service provider and Early adopters.

Improve SSH keys management in Virtual Machine

In response to the expectations of users, who independently, effectively manage the set of keys of their users, we have enabled the creation of a Virtual machine with the public SSH key from local file.

Creation of a Virtual Machine with public SSH key from local file, can be performed in following way:

h1 vm create --name test-vm --os-disk ssd,10 --type a1.nano --image debian --ssh-file ./users/job/ssh.pub

For more details and examples, try vm create --help.

Improve user experience for serial port of Virtual machine

For the vm serialport log command, the "--follow" parameter has been added to get information about new messages as soon as they arrive without interactive access.

For the vm serialport console command, the detection of attempt of console exit has been improved. This should make it easier to use.

Deleting of expired Reservation

We have introduced the command to remove Reservation that have reach the status Expired. This allows to delete those reservations that can not be used, and there is no intention to extend them.

To delete reservation, do the following:

reservation delete --reservation my-reservation

For details, try reservation delete --help.

Unify commands outputs

The way of exposing the results of the command operation has been unified. Progress messages and messages facilitating the use of the tool are available via stderr now. The result of the command is available via stdout.

We believe that it will allow to write scripts more efficiently, especially if use Service account.

Initial PTR record for the IP address

So far, the PTR record definition for an IP address was only possible for an existing IP address. Now it can be determined at the moment of creating a new one IP Address.

For details, try ip create --help.

Early adopters Program

Container

We have introduced Container management for Early adopters program participants. It allows to run applications without having to maintain and manage the entire server with the operating system and many unnecessary services, which allows to significantly reduce the cost of long-term maintenance of the application and ensure a high level of security.

The use of CLI allows to easily extend the existing continous integratitons process to continous deployment mechanisms and accelerate the deployment processes of new software versions in Organization.

The following commands are available for management of Container:

  • container create - Create container
  • container list - List container
  • container delete - Delete container
  • container history - History of container
  • container rename - Rename container
  • container start - Start container
  • container service - Manage your services of container
    • container service list - List service for container
    • container service show - Show service for container
  • container show - Show container
  • container attach - Attach to terminal of container
  • container process - Manage your process in container
    • container process list - List process in container
  • container log - Logs of container
  • container stop - Stop container
  • container restart - Restart container
  • container tag - Manage your tag
    • container tag list - List tag
    • container tag add - Add a tag to container
    • container tag delete - Delete a tag of container

Volume

We have introduced Volume management for Early adopters program participants. It allows to obtain the possibility of maintaining data persistence for Container on a dedicated, high-performance data storage.

The following commands are available for management of Volume:

  • volume list - List volume
  • volume show - Show volume
  • volume delete - Delete volume
  • volume history - History of volume
  • volume rename - Rename volume
  • volume service - Manage your services of volume
    • volume service list - List service for volume
    • volume service show - Show service for volume
  • volume resize - Resize volume
  • volume create - Create volume
  • volume tag - Manage your tag
    • volume tag list - List tag
    • volume tag add - Add a tag to volume
    • volume tag delete - Delete a tag of volume

Service provider program

Agent

We have introduced Agent management for Service provider program participants. Detailed information will be provided directly to the interested parties.

Summary

We hope that the released version will meet the expectations of users, but we remain constantly open to feedback & comments, to help meet the special use cases.

v1.4.0

18 Apr 15:05
Compare
Choose a tag to compare

Version 1.4.0 is out

We are releasing a new version of the CLI, which we enable the management of Organization as well as increase the management capabilities Project.

At the same we merges the CLI edition for the Early adopters program and main clients. This means simplifying the use of functionalities available in this way for participant of program.

Reservation

We provide the ability to manage Reservations directly from the CLI. Now, regardless of how you create a Resource, you can use Reservation to get the best price. and guarantees for creating a resource.

The following commands are available for management of Reservation:

  • reservation list - List reservation
  • reservation create - Create reservation
  • reservation assign - Assign reservation to resource
  • reservation extend - Extend reservation
  • reservation show - Show reservation
  • reservation history - History of reservation
  • reservation service - Manage your services of reservation
    • reservation service list - List service for reservation
    • reservation service show - Show service for reservation
  • reservation tag - Manage your tag
    • reservation tag list - List tag
    • reservation tag add - Add a tag to reservation
    • reservation tag delete - Delete a tag of reservation

Dynamic DNS

We added commands to replaces the record-set in DNS zone with the client IP address. We believe that it will make it easier to automate DNS configurations in order to keep up-to-date current IP address of your services, even if it is changed. This technique is sometimes referred to as "Dynamic DNS". We see the specific potential of the command using it together with the Service Account.

For details, try h1 dns record-set a dynamic-dns --help.

Logout

Despite the short period of validity of the session, we decided to add a command to log out from the user's account. To logout, just run the `logout command.

Early adopters

Up to now, we have maintained two CLI releases - for people participating in the Early adopters program and for other clients. We decided, however, that such a release method does not provide the impressions we want to share with our clients. It also brought unnecessary management costs.

The functionalities available under the Early adopters program have been included in the main CLI release. Their use may require participation in the program, however, participants no longer have to use a separate CLI release.

Currently, single command dns record-set a dynamic-dns and categories of commands project logging and log are available as part of Early adopters program. Operation and interface of that commands may be changed in a non-backward compatibility manner.

Log Archive

Participants of the Early adopters program may use Log Archive after the appropriate launch of the CLI. The following commands are available for management of Log archive:

  • log create - Create log archive
  • log logger - Log messages to log archive
  • log list - List log archive
  • log rename - Rename log archive
  • log delete - Delete log archive
  • log transfer - Transfer log archive to other project
  • log show - Show log archive
  • log stream - Stream or read messages of log archive
  • log history - History of log archive
  • log credential - Manage your credentials to log archive
    • log credential password - Manage your password to log archive
      • log credential password show - Show password to log archive
      • log credential password list - List password to log archive
      • log credential password rename - Rename password to log archive
      • log credential password delete - Delete password to log archive
      • log credential password add - Add password to log archive
  • log tag - Manage your tag of log archive
    • log tag list - List tag of log archive
    • log tag add - Add a tag to log archive
    • log tag delete - Delete a tag of log archive
  • log service - Manage your services of log archive
    • log service list - List service for log archive
    • log service show - Show service for log archive

For details, try h1 log --help.

Log compliance for Project

We enable the possibility of recording all operations performed on Project as log compliance logging. Detailed registration of operations allows easily determine the actions performed on Resources of Project, their results, responsible users, the source IP address from which the calls were made and when the call took place.

Information actions is stored in Log Archive, which provides a convenient way to search data, identify events that are not in compliance with regulations, and speed up inquiries into incidents and responses to other inquiries. This allows increase the security of using the Platform and meet the needs of customers who require special audit control or debugging during automation.

For details, try h1 project logging --help.

v1.3.0

08 Nov 18:43
Compare
Choose a tag to compare

Version 1.3.0 is out

We are releasing a new version of the CLI, which introduces new type of action transfer on applicable resources, possibility of changing the type of vm and other minor improvements. At the same time we have fixed some bugs.

Resource transfer

New type of action across multiple resources is available. It allows you to transfer resources between projects that you own.

The short syntax of new commands is following:

  • ip transfer --ip IP --new-project NEW-PROJECT - for transfer IP address to other project
  • image transfer --image IMAGE --new-project NEW-PROJECT - for transfer image to other project
  • disk transfer --disk DISK --new-project NEW-PROJECT - for transfer disk to other project
  • firewall transfer --firewall FIREWALL --new-project NEW-PROJECT - for transfer firewall to other project
  • iso transfer --iso ISO --new-project NEW-PROJECT - for firewall ISO to other project

We believe that new opportunities will facilitate the separation of resources and the use of project isolation while changing the needs and structure of your projects.

Virtual machine

The expected functionality of type change of Virtual Machine has been made available. You can use it to adjust the power of virtual machine up and down to adapt to demands and make savings when requirements are lower or easily respond if they increase.

The short syntax of command is following: vm service change --vm VM --new-type NEW-TYPE

Service information

In addition, we added commands to read information about services that are related to the resource. This will allow you to obtain information eg. about billing rules of network traffic or assigned licenses.

For each resource, there are commands similar with following short syntax:

  • firewall service list --firewall FIREWALL - List service for resource eg. firewall
  • firewall service show --firewall FIREWALL --service SERVICE - Show information about specific service

Security

In order to increase the security of the platform, we decided to avoid sending your passwords on setup credentials of resource at all. It introduces changes for Vault and Virtual Machine that only hash of password are send to us.

This does not introduce the need to change the existing Vault or Virtual Machine credentials, because so far password was transmit encrypted and have carried out these operations on the platform side, but we prefer to reduce password transmit, even if connection is encrypted.

Bug Fixes

The following bugs have been fixed:

  • fix vault stop & vault start commands accepted parameters - now it accept all parameters required to perform action
  • fix project notifications credits delete round limit value - now it operates also for non-integer values
  • fix race on login - the command should be executed correctly each time, without the need to repeat it, even in rare conditions

v1.2.0

12 Oct 16:12
Compare
Choose a tag to compare

Version 1.2.0 is out

We are releasing a new version of the CLI, which introduces new product Replica. At the same time we have fixed some bugs.

Replica

New category of commands related to the new resource provided by the platform was added: replica. The category contains following new commands:

  • replica create - create new replica and setup replication connection
  • replica list -list available replicas
  • replica show - show details about replica
  • replica history - show operations performed on replica
  • replica rename - adjust name of replica
  • replica tag add - add new tags to replica
  • replica tag delete - delete tag to replica
  • replica tag list - list tags of replica

The image create command was expanded with the --replica parameter to allow the creation of images based on replicas, along with images based on virtual machines.

We hope that new opportunities will be used to shorten the time of recovering systems and data after the disaster.

Bug Fixes

The following bugs have been fixed:

  • inconsistency tag management across resources - taggable resources provide tag support in a consistent manner
  • less common elements of the zone file in DNS import not recognized - most of the correct zone file should be served without any customisation