Skip to content

v1.1.2

Choose a tag to compare

@orkhanshirin orkhanshirin released this 28 Jul 08:28
· 150 commits to main since this release
6eed1dd
Develop (#139)

Fixes #83 
Fixes #133 
Fixes #135 

* Update pyproject.toml

* version bump

* version bump

* Added platform swicher and default platform handler (#104)

* Release PR v1.0.4 (#94)

* Added more detailed state checks for starting/stopping instances (#68)

* Added more detailed state checks for starting/stopping instances

* Changed state list to set, replaced if/elif checks with dict mapping

* Fixed type error in stop

* Changed if checks to state map, if logics separated and extracted as independent functions

* Added handling for all instance states including transition states, moved state map to directly return statement.

* Proper interrupt handling (#70)

* added KeyboardInterrupt handler; need to implement proper signal handler

* Added interrupt signal handler for handling the subprocess

* version bump

* Fixed help message consistency issue. Changed all messages to lower case

* Minor typo fix

* refactored mapping to ec2instances lib (py-vm-instance-aws) for VMs a… (#82)

* refactored mapping to ec2instances lib (py-vm-instance-aws) for VMs and sessions

* Fixed import issue on CI-type check

Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Changed usage of proc.stderr according to doc (#81)

* version bump

* now passing a session to mappings of ec2map to adapt to its change (#89)

* now passing a session to mappings of ec2map to adapt to its change (#89)

* Removed stderr and stdout arguments from proc arguments. (#92)

* now passing a session to mappings of ec2map to adapt to its change (#89)

* Fixed clvm stuck on 'clvm connect <instance>'

Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>

* Performance gain achieved for the ls command after Ec2AllInstancesMapping (#91)

* Performance gain achieved for the ls command as Ec2AllInstancesMapping class was introduced

* Using new class name

* now passing a session to mappings of ec2map to adapt to its change (#89)

* fixing the linter issue

* Fixed linting fail

* Removed **kwargs from instance ls, modified some of the imports in ssm-session-start

Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>
Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Version bump v1.0.3

* Fixed lint check errors

* Updated version number

Co-authored-by: Shahriyar Rzayev <rzayev.sehriyar@gmail.com>
Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>

* Update __init__.py

* Update _clvm.py

* Fix ls

* Fix sessions

* Version bump

* Version bump v1.0.6

* Fix lint issue

* Fix isort issue

* Add GCP very beginning

* Add something aka sessions

* Add GCP session, ls

* -Added "google-cloud-compute" as a dependency to the pyproject.toml
-Added doctring to GcpComputeAllInstancesData class
-Fixed some type hints

* Prepare for instance mapping #01

* Prepare for instance mapping #02

* Prepare for instance mapping #03

* Add GCP start instance

* Add GCP stop instance

* Add AWS command instance

* Add GCP command and connect instance

* Add GCP ssh new/restore config

* Fix instance mapping

* Added new dependency library to pyproject.toml
Fixed some type hints

* Implemented default platform changing functionality

Description:
- Introduced plt command
- Modified `instance` subcommands: `command`, `ls`, `start`, `stop`
  according to new default platform functionality
- Added several new helper functions for plt command:
	- _get_cache_path
	- _create_cache
	- _set_default_platform
	- _default_platform
	- _unsupported_platform

* Fixed state map calls in `command` file

* Fixed FileNotFoundError and applied default platform handling to the rest of the functionalities.

Description:
	- Added try/except block to handle FileNotFoundError
	- Used _create_cache function call when the cache file is not exists
	- Modified old platform handling snippet with new default platform handling functionality
	- Changed most of the if/else checks to state maps

* Added an if check to make sure cache file is created. Removed try/except block as it's no longer needed.

* Fixed start/stop issues with new implementations

* Restructered _process.py file, fixed platform compatibility issues, enhanced plt command.

Description:
	- Replaced if/else checks for platform with state map
	- Separated platform specific calls to respective functions
	- Added showing default platform to plt command
		* `clvm plt` without arguments will print the current default platform

Co-authored-by: Shahriyar Rzayev <rzayev.sehriyar@gmail.com>
Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>
Co-authored-by: Shako Rzayev <97228941+ShakoRZS@users.noreply.github.com>
Co-authored-by: Dmitry Slobodchikov <zoosman@mail.ru>

* Issue 99-1 (#105)

* Release PR v1.0.4 (#94)

* Added more detailed state checks for starting/stopping instances (#68)

* Added more detailed state checks for starting/stopping instances

* Changed state list to set, replaced if/elif checks with dict mapping

* Fixed type error in stop

* Changed if checks to state map, if logics separated and extracted as independent functions

* Added handling for all instance states including transition states, moved state map to directly return statement.

* Proper interrupt handling (#70)

* added KeyboardInterrupt handler; need to implement proper signal handler

* Added interrupt signal handler for handling the subprocess

* version bump

* Fixed help message consistency issue. Changed all messages to lower case

* Minor typo fix

* refactored mapping to ec2instances lib (py-vm-instance-aws) for VMs a… (#82)

* refactored mapping to ec2instances lib (py-vm-instance-aws) for VMs and sessions

* Fixed import issue on CI-type check

Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Changed usage of proc.stderr according to doc (#81)

* version bump

* now passing a session to mappings of ec2map to adapt to its change (#89)

* now passing a session to mappings of ec2map to adapt to its change (#89)

* Removed stderr and stdout arguments from proc arguments. (#92)

* now passing a session to mappings of ec2map to adapt to its change (#89)

* Fixed clvm stuck on 'clvm connect <instance>'

Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>

* Performance gain achieved for the ls command after Ec2AllInstancesMapping (#91)

* Performance gain achieved for the ls command as Ec2AllInstancesMapping class was introduced

* Using new class name

* now passing a session to mappings of ec2map to adapt to its change (#89)

* fixing the linter issue

* Fixed linting fail

* Removed **kwargs from instance ls, modified some of the imports in ssm-session-start

Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>
Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Version bump v1.0.3

* Fixed lint check errors

* Updated version number

Co-authored-by: Shahriyar Rzayev <rzayev.sehriyar@gmail.com>
Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>

* Update __init__.py

* Update _clvm.py

* Fix ls

* Fix sessions

* Version bump

* Version bump v1.0.6

* Fix lint issue

* Fix isort issue

* Add GCP very beginning

* Add something aka sessions

* Add GCP session, ls

* -Added "google-cloud-compute" as a dependency to the pyproject.toml
-Added doctring to GcpComputeAllInstancesData class
-Fixed some type hints

* Prepare for instance mapping #01

* Prepare for instance mapping #02

* Prepare for instance mapping #03

* Add GCP start instance

* Add GCP stop instance

* Add AWS command instance

* Add GCP command and connect instance

* Add GCP ssh new/restore config

* Fix instance mapping

* Added new dependency library to pyproject.toml
Fixed some type hints

* Add Azure session and ls

* Add Azure start

* Add Azure stop

* Make code refactoring

* Add Azure instance command (very dirty)

* Add Azure instance connect socket (dirty)

* Implemented default platform changing functionality

Description:
- Introduced plt command
- Modified `instance` subcommands: `command`, `ls`, `start`, `stop`
  according to new default platform functionality
- Added several new helper functions for plt command:
	- _get_cache_path
	- _create_cache
	- _set_default_platform
	- _default_platform
	- _unsupported_platform

* Fixed state map calls in `command` file

* Fixed FileNotFoundError and applied default platform handling to the rest of the functionalities.

Description:
	- Added try/except block to handle FileNotFoundError
	- Used _create_cache function call when the cache file is not exists
	- Modified old platform handling snippet with new default platform handling functionality
	- Changed most of the if/else checks to state maps

* Added an if check to make sure cache file is created. Removed try/except block as it's no longer needed.

* Fixed start/stop issues with new implementations

* Add Azure instance connect socket

* Add Azure pre new ssh

* Add Azure ssh new

* Add Azure ssh start (dirty)

* Fix pyproject, add azure dependencies

* Restructered _process.py file, fixed platform compatibility issues, enhanced plt command.

Description:
	- Replaced if/else checks for platform with state map
	- Separated platform specific calls to respective functions
	- Added showing default platform to plt command
		* `clvm plt` without arguments will print the current default platform

* Fix azure instance proxy

* Add ls azure #01

* Add ls azure #02

* Add azure ls, start, stop

* Add azure instance command, connect

* Add azure ssh start, new

* Do refactor code

Co-authored-by: Orkhan Shirin <62020621+orkhanshirin@users.noreply.github.com>
Co-authored-by: Shahriyar Rzayev <rzayev.sehriyar@gmail.com>
Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>
Co-authored-by: Shako Rzayev <97228941+ShakoRZS@users.noreply.github.com>
Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Do refactor code

* Do minor refactor code

* Do lint check/refactor

* Do vscode start

* version bump

* passing the formatter

* added platform name to the remote command

* Added new try/except guard to catch RuntimeError from ec2mapping (#114)

* Added new try/except guard to catch RuntimeError from ec2mapping

* upgrade ec2map version dependency

* Provide retry mechanism for failed MFA code; added extra command for removing credentials files (#117)

* Changed the credentials path; added new command ssm clear to wipe out credentials file; skipping if FileNotFoundError raised

* Provided backoff mechanics for retrying in case of MFA fails

* Merge conflict changes

* version bump

* Added the platform=aws to the ssh command in ssh/config file (#120)

* Added setting default platform directly from kwargs. (#121)

Description:
	- Modified logic of plt command to get platform from
	  kwargs and set it as default
	- Added new function for supported platforms
	- Fixed all corresponding imports and function calls
Extra:
	- Renamed _common/session.py to _common/session_aws.py
	  for clearance and fixed all corresponding imports

* Updated documentation (#122)

* - Added quick start header
- Updated the medium article link

* - Added quick start header
- Updated the medium article link

* version bump

* Eliminated multiple cache file hit (#128)

* Proxy command takes full path of CLVM (#131)

Desc:
	- Modified updating ssh config to take the CLVM path dynamically
	  without platform dependency

* fixed the failed MFA prompt in VSCODE (#129)

* fixed the failed MFA prompt in VSCODE

* ignore the token code and close terminal if the vscode start called

* version bump

* Change ec2map == 1.0.4

* Issue #109, #127 start VM on "ssh start" (#134)

Fixes #109 

* Change ec2map == 1.0.4

* Add extended start/stop operations on Azure

* Fix #109, #127. VM starts on "ssh start" command. Azure only.

* Fix #109, #127. VM starts on "ssh start" command. Azure only.

* Fixed some typing issues and suppressed the unhandled exceptions

Co-authored-by: orkhanshirin <orkhan.shirinow@gmail.com>

* Revert "Change ec2map == 1.0.4"

This reverts commit 46532b77896b4a3aa5f595c9937d5168b5e33a47.

* Refactored port mapping (#137)

Fixes #83 

* First iteration

* Modified the implementation of port mapping

Desc:
	- Now the ports might be passed like `port=9090 local_port=8080`

* Refactored port mapping

Desc:
	- Modified the port mapping logic
	- Now optional argument can be passed to redirect to specific local port
	- E.g: `clvm redirect start caios-dev-orkhan-desktop port=9191`
	- Improved another optional arg for stopping redirection: `keep_instance`
	- If this argument used it will bypass stopping the VM but the session will be killed
	- E.g: `clvm redirect stop caios-dev-orkhan-desktop keep_instance=yes`
	- `keep_instance` values can be "True", "true", "yes", "y"

* Minor change to console print

* Minor typing fixes

* Added naive way of editing global vscode settings; introduced new commentjson dependency package (#138)

* Off wait status on start/stop (#136)

* version bump v1.1.2

Co-authored-by: Shahriyar Rzayev <rzayev.sehriyar@gmail.com>
Co-authored-by: Lior Kashti <48313697+lkashti@users.noreply.github.com>
Co-authored-by: Shako Rzayev <97228941+ShakoRZS@users.noreply.github.com>
Co-authored-by: Dmitry Slobodchikov <zoosman@mail.ru>