Giter Site home page Giter Site logo

vishalkuo / dove Goto Github PK

View Code? Open in Web Editor NEW
24.0 2.0 1.0 21 KB

A command line utility to help manage your development server in Digital Ocean

License: MIT License

Python 100.00%
python digitalocean remote-dev-server remote droplet development-environment

dove's Introduction

Dove

PyPI version

A command line utility to help manage your development server in Digital Ocean

Why?

Developing on a remote environment provides several advantages over local development such as resource scaling, OS selection, security, and portability. However, as an unemployed student, paying 20-30 dollars a month for a hosted server directly impacts my food budget. Dove helps ease this burden by making it easy to snapshot/rebuild your environment. Given that snapshot pricing is 0.05/GB/month, dove helps reduce the cost of maintaining a remote environment when it's frequently idle.

How

  1. Generate an API access token on Digital Ocean here

  2. Install dove:

    pip install droplet_dove
    
  3. Initialize dove with dove init

  4. Start your droplet with dove up

  5. Clean up your droplet and take a snapshot with dove down

Additional help: dove --help

How Does It Work?

Dove maintains all of its configuration in ~/.dove_config.json. You can edit these values manually; however you can use dove init for an initial population. Note that all properties under the droplet key are passed directly to digital ocean (with exception to the sshkeys array), so if addiitonal configuration is required it can be edited there.

Dove Up

  1. Check for a running droplet with the name specified in the dove config, abort if one exists
  2. Find the latest snapshot for the prefix provided in dove config or use the default snapshot if none exist
  3. Create the droplet with the configuration params
  4. Wait for the droplet to start

Dove Down

  1. Get droplet based on name provided in dove config, abort if droplet not found
  2. Shutdown droplet and take a snapshot
  3. Destroy old snapshots with same prefix
  4. Destroy droplet

dove's People

Contributors

vishalkuo avatar vladislavbailovic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.