Session in Rails 5.2
-
Expiration:
-
Absolute age
-
In config/initializers/session_store.rb:
Rails.application.config.session_store :cookie_store, key: '_cirrus_session', expire_after: 1.days, ...
-
-
class Edge | |
attr_reader :start, :to, :dist | |
def initialize(start:, to:, dist:) | |
@start = start | |
@to = to | |
@dist = dist | |
end | |
end |
I needed a tool to add latitude and longitude to seeds.rb in a Rails application. | |
geocoder.rb uses the Google geocode api. An apikey is required. For limited use it is free. The apikey should be protected from prying eyes. (encryption, .gitignore, ...) | |
Geocoder#geocode takes an address string in canonical form ( "#{number} #{street} #{city} #{state}" ) as input. It returns latitude and longitude as a hash: { lat: 30.0000, lng: -90.000 } | |
seed_geocoder.rb extracts the address string from seeds.rb, requests the geocode hash from the Geocoder obj and writes the newseeds.rb file. | |
The newseeds file does need some minor additional work to make it a functional seeds.rb. |
Copy the 4 scripts to /home/<user> | |
From /home/<user>: | |
./setup_rootca.sh | |
./setup_blacklakeca.sh | |
ipaddr=$(ip route get 8.8.8.8 | awk '{print $7}') | |
SUBJ_IP=$ipaddr ./stratus_server_cert.sh | |
This will: |
# Redis sysctl configuration | |
vm.overcommit_memory = 1 |
Rails.application.config.session_store :cookie_store,
key: '_cirrus_session',
expire_after: 1.days,
...
[loco@td2 ~]$ sudo cat certfiles.txt | |
[sudo] password for loco: | |
total 8 | |
4 -rw-r--r--. 1 root root 2240 Oct 21 23:21 stratuscert.pem | |
4 -rw-r--r--. 1 root root 2496 Oct 21 23:21 blacklakecacert.pem |
# Defines our Vagrant environment | |
# | |
# -*- mode: ruby -*- | |
# vi: set ft=ruby : | |
require_relative 'bridged_interfaces' | |
Vagrant.configure("2") do |config| | |
# create wisp node | |
config.vm.define :wisp do |wisp| |
# Diff of the original cc_phone_home and the slightly modified version that supports | |
# including the server pub_keys in the phone_home payload | |
# Original: https://github.com/number5/cloud-init/blob/master/cloudinit/config/cc_phone_home.py | |
# A couple of typos in comment lines in the original were elided to make the diff a bit clearer. | |
# The Centos7 distros I am using do not provide pub_key_dsa. | |
# I am talking to a Rails app with phone_home. | |
# A dummy X-CSRF-Token: 1234567890 in the headers simplifies the code on the Rails side. | |
# I authenticate the phone_home payload by including a token provided in the |
E:\Projects\otto-getting-started>otto dev | |
2016/04/08 12:50:33 [INFO] Otto version: 0.2.0 4ff0dce79f07008dcebcf34f118e8ec3dc4f96a5+CHANGES | |
2016/04/08 12:50:33 [DEBUG] Starting plugin: C:\otto_0.2.0_windows_386\otto.exe []string{"C:\\otto_0.2.0_windows_386\\otto.exe", "plugin-builtin", "app-ruby"} | |
2016/04/08 12:50:33 [DEBUG] Waiting for RPC address for: C:\otto_0.2.0_windows_386\otto.exe | |
2016/04/08 12:50:33 [DEBUG] otto.exe: 2016/04/08 12:50:33 [INFO] Otto version: 0.2.0 4ff0dce79f07008dcebcf34f118e8ec3dc4f96a5+CHANGES | |
2016/04/08 12:50:33 [DEBUG] otto.exe: 2016/04/08 12:50:33 Plugin address: tcp 127.0.0.1:10000 | |
2016/04/08 12:50:33 [DEBUG] reading IP, cache path: E:\Projects\otto-getting-started\.otto\data\dev_ip | |
2016/04/08 12:50:33 [DEBUG] read ip from cache: 100.70.190.63 | |
2016/04/08 12:50:33 [INFO] Loading app implementation for Tuple: ("ruby", "aws", "simple") | |
2016/04/08 12:50:33 [DEBUG] core walking app: otto-getting-started |