Goals of this tutorial:
- deploy a new Rails app with capistrano
- make it fast (total process takes less than 5 minutes)
- make it simple (no unecessary config)
- manual ssh to the server not required
Rails application stack:
- nginx
- unicorn
- postgresql
| #!/bin/bash | |
| # | |
| # This script will create a 'backend.md' and 'frontend.md' containing | |
| # all the source code in the current directory. You can then upload these | |
| # files to a custom GPT. It's setup for my golang project but you can easily | |
| # modify it to suit your needs. | |
| # | |
| # This script requires 'fd' to be installed. | |
| set -e |
Goals of this tutorial:
Rails application stack:
This is primarily for my own record and knowledge. If it helps you, great! If it breaks something, don't say I didn't warn you - this is just documentation of what I did to get this to work at the time I wrote this on one particular machine.
c:\cygwin64 (possible in 32-bit too, I just messed up that install and it no longer works, so these were tested on my machine in a 64-bit install). I use my Cygwin setup scripts to simplify this part.| require 'cgi' | |
| require 'digest/md5' | |
| require 'net/https' | |
| require 'uri' | |
| module Jekyll | |
| class GistTag < Liquid::Tag | |
| def initialize(tag_name, text, token) | |
| super | |
| @text = text |
| Configurar Vono no X-Lite Beta 4.0 for Mac: | |
| 1) Abra "Preferences" | |
| 2) Vá em "Accounts" | |
| 3) Na aba General, preencha: | |
| User Details: | |
| User ID: [seu login] | |
| Domain: vono.net.br | |
| Password: [sua senha] | |
| Display name: [seu login] |
| @import "active_admin/mixins" | |
| @import "active_admin/components/links" | |
| body | |
| @include global-reset | |
| @import "active_admin/typography" | |
| @import "active_admin/header" | |
| @import "active_admin/forms" | |
| @import "active_admin/components/comments" | |
| @import "active_admin/components/flash_messages" |
| gem 'pg' | |
| group :development do | |
| gem 'ruby-debug' | |
| end | |
| gem 'rake', '~> 0.8.7' | |
| gem 'devise' | |
| gem 'oa-oauth', :require => 'omniauth/oauth' | |
| gem 'omniauth' | |
| gem 'haml' | |
| gem 'dynamic_form' |
| .highlight{background-color:#073642;color:#93a1a1}.highlight .c{color:#586e75 !important;font-style:italic !important}.highlight .cm{color:#586e75 !important;font-style:italic !important}.highlight .cp{color:#586e75 !important;font-style:italic !important}.highlight .c1{color:#586e75 !important;font-style:italic !important}.highlight .cs{color:#586e75 !important;font-weight:bold !important;font-style:italic !important}.highlight .err{color:#dc322f !important;background:none !important}.highlight .k{color:#cb4b16 !important}.highlight .o{color:#93a1a1 !important;font-weight:bold !important}.highlight .p{color:#93a1a1 !important}.highlight .ow{color:#2aa198 !important;font-weight:bold !important}.highlight .gd{color:#93a1a1 !important;background-color:#372c34 !important;display:inline-block}.highlight .gd .x{color:#93a1a1 !important;background-color:#4d2d33 !important;display:inline-block}.highlight .ge{color:#93a1a1 !important;font-style:italic !important}.highlight .gr{color:#aa0000}.highlight .gh{color:#586e |
| .highlight{background-color:#073642;color:#93a1a1}.highlight .c{color:#586e75 !important;font-style:italic !important}.highlight .cm{color:#586e75 !important;font-style:italic !important}.highlight .cp{color:#586e75 !important;font-style:italic !important}.highlight .c1{color:#586e75 !important;font-style:italic !important}.highlight .cs{color:#586e75 !important;font-weight:bold !important;font-style:italic !important}.highlight .err{color:#dc322f !important;background:none !important}.highlight .k{color:#cb4b16 !important}.highlight .o{color:#93a1a1 !important;font-weight:bold !important}.highlight .p{color:#93a1a1 !important}.highlight .ow{color:#2aa198 !important;font-weight:bold !important}.highlight .gd{color:#93a1a1 !important;background-color:#372c34 !important;display:inline-block}.highlight .gd .x{color:#93a1a1 !important;background-color:#4d2d33 !important;display:inline-block}.highlight .ge{color:#93a1a1 !important;font-style:italic !important}.highlight .gr{color:#aa0000}.highlight .gh{color:#586e |
| .highlight { background-color: #ffffcc } | |
| .highlight .c { color: #586E75 } /* Comment */ | |
| .highlight .err { color: #93A1A1 } /* Error */ | |
| .highlight .g { color: #93A1A1 } /* Generic */ | |
| .highlight .k { color: #859900 } /* Keyword */ | |
| .highlight .l { color: #93A1A1 } /* Literal */ | |
| .highlight .n { color: #93A1A1 } /* Name */ | |
| .highlight .o { color: #859900 } /* Operator */ | |
| .highlight .x { color: #CB4B16 } /* Other */ | |
| .highlight .p { color: #93A1A1 } /* Punctuation */ |