Git Product home page Git Product logo

presto-admin's Introduction

presto-admin Build Status

presto-admin installs, configures, and manages Presto installations.

Comprehensive documentation can be found here.

Requirements

  1. Python 2.6 or 2.7
  2. Docker. (Only required for development, if you want to run the system tests)
    • If you DO NOT have Docker already installed, you can run the install-docker.sh script in the bin directory of this project. That script has only been tested on Ubuntu 14.04.

    • If you have Docker already installed, you need to make sure that your user has been added to the docker group. This will enable you to run commands without sudo, which is a requirement for some of the unit tests. To enable sudoless docker access run the following:

        $ sudo groupadd docker
        $ sudo gpasswd -a ${USER} docker
        $ sudo service docker restart
      

      If the user you added to the docker group is the same one you're logged in as, you will need to log out and back in so that the changes can take effect.

Building

Presto-admin makes use of make as its build tool. make in turn calls out to various utilities (e.g. tox, flake8, sphinx-apidoc, python) in order to perform the requested actions.

In order to get started with presto-admin,

  1. Fork the presto-admin repo on GitHub, https://github.com/prestodb/presto-admin.

  2. Clone your fork locally ::

     $ git clone [email protected]:your_name_here/presto-admin.git
    
  3. Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development ::

     $ mkvirtualenv prestoadmin
     $ cd prestoadmin/
     $ python setup.py develop
    
  4. Create a branch for local development ::

     $ git checkout -b name-of-your-bugfix-or-feature
    

    Now you can make your changes locally.

  5. When you're done making changes, check that your changes pass make clean lint test, which runs flake8 and the unit tests (which test both Python 2.6 and 2.7). To run the product tests tests (make test-all), you need docker installed. You may also need to run pip install wheel in your virtualenv. To install and start docker use ::

     $ wget -qO- https://get.docker.com/ | sh
    
     # Add current user to Docker group to run without sudo
     $ sudo gpasswd -a ${USER} docker
     $ sudo service docker restart
    

Building the installer

The two tasks used to build the presto-admin installer are dist and dist-offline. The dist task builds an installer that requires internet connectivity during installation. The dist-offline task builds an installer that does not require internet connectivity during installation. Instead the offline installer downloads all dependencies at build time and points pip to those dependencies during installation.

License

Free software: Apache License Version 2.0 (APLv2).

presto-admin's People

Contributors

cawallin avatar rschlussel-zz avatar kokosing avatar losipiuk avatar petroav avatar sopel39 avatar zachyee avatar yuokada avatar findepi avatar brianrickman avatar anusudarsan avatar ebd2 avatar sudarsanm94 avatar gorkemmulayim avatar maciejgrzybek avatar rschlussel 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.