Why?
Because we wanted to achive the following while developing a webapp using websockets:
Static serving (nginx), Django application (gunicorn) and Websockets service (twisted)
- on the same IP
| { | |
| "type": "service_account", | |
| "project_id": "max-v2", | |
| "private_key_id": "edb744c66db9f8cf0b2454aa3136fa09305c3230", | |
| "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDg10zdfcJZ3zb1\n47WD6DoEyUMGIFBLaC+Pms2jNNxmparyPhQXnEJ3v7DQAptOsDoNC4hGVkfiWzy3\ncE/Ss46LaldMKQzAzUjCEoH7YJUJ1XFt05OByTPIj85FsibZMWIdIGC31vPhvN3z\nDyVG5e9hxyW3dwiyLlNMM+C7l0ahp38cGFXlQH6LTdTqIIIcZ/PVgY7zCeAqZVqJ\nsD9XmQWpTi2cpCqn2x8rG4LrEAh0ACVvjGlMe7LcA+UeHozx8md150AaWBtYTH5X\ngJwRXYwx9TA3EkQuxMVIay5MvwLrri1cb1LVbMl4Wyyu3MRmtySYdXlir0btGqUQ\nosJ4lt6hAgMBAAECggEAeGUxZqURrfglwPNG3jQ65Rc0SZKCDG7kkNwO4ybKIjjx\n2bc+IQpuWRsPPcM3kKIy44taVHedFGtQjtWYGLZHTQYLat/MUW1bWXh5m7ay98oQ\nbAPQR74KeYnvpUhpHwIfjIMq5yY1/5mXq7BfgKBdV5lA7AXUZT0DI5nf6/NsQeCi\nzJtyZlD/YLJ3MMaaRW2KGKiVim81Sq1syo5d1mjZp/0ivZ1ZaeYETOJP6pDJIVZx\n2q9X5Gyto4C+3KtEo0Tj3veITXfXzoRcDUPewEaPG0N3BvZPMwW7LBOO3evt0KuN\naC7u9XiQcT7GEMFOp9QHBSe6qBPa7niyQQroDE4xJQKBgQD4OHp39UR5EKcu3tdI\nP1LHoCaPjoSnHO2Aj+5GgCQrF3hxuoAkDbo8h+pq4Gk5rToSOGK/brLjE1aR9JGs |
This is how I configured the deploy of my rails apps to AWS Elastic Beanstalk through CircleCI.
On Project Settings > Environment Variables add this keys:
| var drivingSchedule = {}; | |
| var turnNumber = 0; | |
| var MIN_VISITS_PER_VEHICLE = 1; // to keep everyone busy | |
| var OPTIMIZE_EVERY_X_TURNS = 5; | |
| var turn = function(vehicles, people, buildings) { | |
| 'use strict'; | |
| if(turnNumber % OPTIMIZE_EVERY_X_TURNS === 0 && turnNumber < 1000) { | |
| // Parse data to be suitable for Routific's API |
| from __future__ import absolute_import, unicode_literals | |
| from celery import current_app | |
| from celery.bin import worker | |
| if __name__ == '__main__': | |
| app = current_app._get_current_object() | |
| worker = worker.worker(app=app) |
| @extends('layouts.base') | |
| @section('content') | |
| <div class="section no-pad-bot" id="index-banner"> | |
| <div class="container"> | |
| <br><br> | |
| <h1 class="header center orange-text">SIGN UP</h1> | |
| <div class="row center"> | |
| <h5 class="header col s12 light">GTB ONLINE EXAM PLATFORM</h5> | |
| </div> |
| @extends('layouts.base') | |
| @section('content') | |
| <div class="section no-pad-bot" id="index-banner"> | |
| <div class="container"> | |
| <br><br> | |
| <h1 class="header center orange-text">GTBEX</h1> | |
| <div class="row center"> | |
| <h5 class="header col s12 light">GTB ONLINE EXAM PLATFORM</h5> | |
| </div> |
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> | |
| <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0"/> | |
| <!-- CSRF Token --> | |
| <meta name="csrf-token" content="{{ csrf_token() }}"> | |
| <title>{{ config('app.name', 'GTB Exam') }}</title> |
I hereby claim:
To claim this, I am signing this object: