Giter VIP home page Giter VIP logo

leastauthority.com's Introduction

= leastauthority.com =

This website is a twisted web server with a set of static files.
In addition it has some web-application logic for interacting with
Amazon's services (AWS), such as devpay, ec2, and s3 on behalf of LAE
customers.


== Preparatory Configuration =

For this website to function correcly, Amazon Web Services (AWS) and
SSL certificates must also be correctly configured.

Configuring a correct deployment requires these steps:

0. FIXME: This procedure will be changing rapidly as we develop the site.  Please remember to update this list.
1. Sign up for Amazon devpay: http://aws.amazon.com/devpay/
1a. Enter the configuration necessary for the LAE product line.  This directly affects customer facing details and revenue flow.
1b. You will be asked for the "Product Redirect URL".  That will be "https://${deployment_hostname}/devpay-complete".  FIXME: URL handler is not implemented;  FIXME: https not yet configured.
1c. Enter the product code, product token, and purchase url in the configuration file as described below.  FIXME: Maybe all these do not need to be in the config file.  FIXME: only purchase url is currently implemented.
2. Configure SSL certificates.  FIXME: This is not implemented.
3. FIXME: Not implemented: configure the ec2 and s3 goo to auto-deploy tahoe services.


== Initial Webserver Deployment ==  XXX Should break this into two sections: Deploy EC2 and Deploy Webserver

1. Deploy the correct ec2 image.
2. Checkout the website repository into the correct place.
    The repo is at:
         - 'leastauthority.com:/home/website/leastauthority.com'
    By default /home/website is the parent repo.  This directory contains:
         - leastauthority.com/:  The parent directory of the server code
         - signup.furl:   The furl for the flappserver signup service
         - lae_site_config.json: Contains the available product info.
         - lae_automation_config.json:  Contains product secrets, credential paths.
3. Install the correct dependencies.
         - foolscap:  for the flappserver
         - jinja2:    handles webserver templates         
4. Set up the correct website user account.
         - 'website'
5. Checkout the website configuration repository for the target deployment environment.
         - 'leastauthority.com:/home/website'	 
6. Run the webserver.
         - You can do this by modifying: 'setuplocalserver.sh' to your system.  XXX Obviously much remains to be done here.
7. Ensure the instance has a static IP address.
8. Test the website in your browser by its IP address.
9. Update the DNS entry for the website host to point to the new IP address.


== Configuration File ==

This website requires a configuration file in the home directory of the
user which runs the webserver, named "lae_website_config.json" which is
in JSON format.  It must define these keys:

"purchase_url" :
This should be the "purchase URL" found on the devpay site after you
have set up a particular application and billing configuration.


== Upgrade ==

Follow the same steps as for "initial deployment", except you will have
a new instance with a new IP.  In the last step, you will cause new DNS
requests to target the new server instance.

Wait the appropriate amount of time before taking down the old instance
because remote browsers may be relying on cached DNS entries.

leastauthority.com's People

Contributors

zancas avatar nejucomo avatar sirvaliance avatar aldeka avatar

Watchers

 avatar James Cloos 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.