Skip to main content

The easiest way to create and connect to secure cloud instances

Project description

# ProvisionPad [![Join the Community](https://img.shields.io/badge/Join%20the%20community-blueviolet.svg)](https://spectrum.chat/provisionpad/) [![Open Issues](https://img.shields.io/github/issues-raw/provisionpad/provisionpad.svg)](https://github.com/provisionpad/provisionpad/issues) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/provisionpad/provisionpad/blob/master/LICENSE)

[<img src=”https://i.ibb.co/88kHGrt/logo-1x.png” />](https://provisionpad.com/?ref=github)

ProvisionPad makes it easy to create and connect to cloud instances right from your termial.

This repo is open source and is one of the libraries that powers [ProvisoinPad](https://provisionpad.com/?ref=github). The hosted version provides advanced tools for monitoring usage and managing access to cloud resources across different teams.

Check out our [website](https://provisionpad.com/?ref=github) for more details and to sign up for Beta.

ProvisionPad takes care of all the tedious details of setting up secure EC2 instances and adding proper configuration to your local machine so you can start, stop and connect to your instances directly from your Terminal/editor.

  • Start and stop EC2 instances directly from your terminal without the hassle.
  • Use your local VS Code editor or Terminal to access, edit and run the code on EC2 instances.
  • Automatically stop inactive instances.

<img src=”https://i.ibb.co/KqgLQwf/terminal-border.png” />

## Prerequisites

  • AWS Access Key ID and Secret Access Key (See the last section if you don’t know how to get them)
  • Python installed locally

## Installing ProvisionPad

` pip install provisionpad `

## Getting Started

To initiate the environment:

` propad initiate `

After initiating the environment you can create an EC2 instance using:

` propad create `

To stop the instance: ` propad stop [instancename] `

To get a list of all your running/stopped instances: ` propad stat `

You can start a stopped instance using

` propad start [instancename] `

You can terminate a running instance using

` propad terminate [instancename] `

For more information on commands

` propad --help `

## Connecting to the Remote Host

To ssh into an instance simply use

` ssh [instancename] `

## Connecting through VS Code To connect to the instance using VS Code, install the [Visual Studio Code Remote Development](https://code.visualstudio.com/docs/remote/remote-overview).

Ctrl+Shift+P reload window then Ctrl+Shift+P Remote-SSH:Connect to Host and select the instance name from the menu

To access terminal on remote using VS Code simply use Ctrl+`

## AWS Cost Saving

Instances created with ProvisionPad will stop automatically after 20 minutes of low CPU activity, i.e. if the idle time percentage was over 98% and the gradient of CPU usage is less than 0.001. more options will be added

## How to get your AWS Access Key ID and Secret Access Key

If you don’t have AWS access credentials you can get them through AWS management console:

  • Log in to AWS management console
  • Click on user menu
  • Click on My Security Credentials
  • Section Access keys for CLI, SDK, & API access you can create one.

Before you can use/test this library you need to have AWS user account with the following permissions (You already have these permissions if you have root access (owner) or admin access to the AWS account.):

  • AmazonEC2FullAccess
  • IAMFullAccess
  • AmazonVPCFullAccess

## Contributing

Feel free to create issues or pull requests. More detailed guides are coming soon.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for provisionpad, version 0.0.3
Filename, size File type Python version Upload date Hashes
Filename, size provisionpad-0.0.3-py3-none-any.whl (28.2 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size provisionpad-0.0.3.tar.gz (17.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page