mina-traackr 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/.gitignore +10 -0
  2. data/.rspec +1 -0
  3. data/.travis.yml +12 -0
  4. data/CONTRIBUTING.md +124 -0
  5. data/Gemfile +10 -0
  6. data/HISTORY.md +304 -0
  7. data/LICENSE +23 -0
  8. data/Makefile +29 -0
  9. data/Notes.md +72 -0
  10. data/Rakefile +20 -0
  11. data/Readme.md +1009 -0
  12. data/bin/mina +65 -0
  13. data/data/deploy.rb +74 -0
  14. data/data/deploy.sh.erb +120 -0
  15. data/lib/mina.rb +23 -0
  16. data/lib/mina/bundler.rb +44 -0
  17. data/lib/mina/chruby.rb +49 -0
  18. data/lib/mina/default.rb +144 -0
  19. data/lib/mina/deploy.rb +138 -0
  20. data/lib/mina/deploy_helpers.rb +34 -0
  21. data/lib/mina/exec_helpers.rb +104 -0
  22. data/lib/mina/foreman.rb +78 -0
  23. data/lib/mina/git.rb +62 -0
  24. data/lib/mina/helpers.rb +383 -0
  25. data/lib/mina/output_helpers.rb +92 -0
  26. data/lib/mina/rails.rb +206 -0
  27. data/lib/mina/rake.rb +9 -0
  28. data/lib/mina/rbenv.rb +47 -0
  29. data/lib/mina/rvm.rb +88 -0
  30. data/lib/mina/settings.rb +32 -0
  31. data/lib/mina/ssh_helpers.rb +122 -0
  32. data/lib/mina/tools.rb +20 -0
  33. data/lib/mina/version.rb +5 -0
  34. data/lib/mina/whenever.rb +27 -0
  35. data/manual/index.md +15 -0
  36. data/manual/modules.md +2 -0
  37. data/mina.gemspec +17 -0
  38. data/spec/command_helper.rb +52 -0
  39. data/spec/commands/cleanup_spec.rb +16 -0
  40. data/spec/commands/command_spec.rb +71 -0
  41. data/spec/commands/custom_config_spec.rb +20 -0
  42. data/spec/commands/deploy_spec.rb +40 -0
  43. data/spec/commands/outside_project_spec.rb +35 -0
  44. data/spec/commands/real_deploy_spec.rb +54 -0
  45. data/spec/commands/ssh_spec.rb +14 -0
  46. data/spec/commands/verbose_spec.rb +21 -0
  47. data/spec/dsl/invoke_spec.rb +33 -0
  48. data/spec/dsl/queue_spec.rb +49 -0
  49. data/spec/dsl/settings_in_rake_spec.rb +39 -0
  50. data/spec/dsl/settings_spec.rb +55 -0
  51. data/spec/dsl/to_spec.rb +20 -0
  52. data/spec/fixtures/custom_file_env/custom_deploy.rb +15 -0
  53. data/spec/fixtures/empty_env/config/deploy.rb +15 -0
  54. data/spec/helpers/output_helper_spec.rb +38 -0
  55. data/spec/spec_helper.rb +21 -0
  56. data/support/Readme-footer.md +32 -0
  57. data/support/Readme-header.md +17 -0
  58. data/support/guide.md +297 -0
  59. data/support/index.html +53 -0
  60. data/support/to_md.rb +11 -0
  61. data/test_env/config/deploy.rb +72 -0
  62. metadata +157 -0
@@ -0,0 +1,53 @@
1
+ <html>
2
+ <head>
3
+ <meta charset='utf-8'>
4
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
5
+ <meta name="viewport" content="width=device-width">
6
+
7
+ <title>Mina</title>
8
+
9
+ <!-- Flatdoc -->
10
+ <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
11
+ <script src='http://rstacruz.github.io/flatdoc/v/0.8.0/legacy.js'></script>
12
+ <script src='http://rstacruz.github.io/flatdoc/v/0.8.0/flatdoc.js'></script>
13
+
14
+ <!-- Flatdoc theme -->
15
+ <link href='http://rstacruz.github.io/flatdoc/v/0.8.0/theme-white/style.css' rel='stylesheet'>
16
+ <script src='http://rstacruz.github.io/flatdoc/v/0.8.0/theme-white/script.js'></script>
17
+
18
+ <!-- Meta -->
19
+ <meta content="Mina" property="og:title">
20
+ <meta content="Mina deployer tool." name="description">
21
+
22
+ <!-- Initializer -->
23
+ <script>
24
+ Flatdoc.run({
25
+ fetcher: location.hostname.match(/localhost/) ? Flatdoc.file('../Readme.md') : Flatdoc.github('nadarei/mina')
26
+ });
27
+ </script>
28
+ </head>
29
+ <body role='flatdoc'>
30
+
31
+ <div class='header'>
32
+ <div class='left'>
33
+ <h1>Mina</h1>
34
+ <ul>
35
+ <li><a href='https://github.com/nadarei/mina'>View on GitHub</a></li>
36
+ <li><a href='https://github.com/nadarei/mina/issues'>Issues</a></li>
37
+ </ul>
38
+ </div>
39
+ <div class='right'>
40
+ <!-- GitHub buttons: see http://ghbtns.com -->
41
+ <iframe src="http://ghbtns.com/github-btn.html?user=nadarei&amp;repo=mina&amp;type=watch&amp;count=true" allowtransparency="true" frameborder="0" scrolling="0" width="110" height="20"></iframe>
42
+ </div>
43
+ </div>
44
+
45
+ <div class='content-root'>
46
+ <div class='menubar'>
47
+ <div class='menu section' role='flatdoc-menu'></div>
48
+ </div>
49
+ <div role='flatdoc-content' class='content'></div>
50
+ </div>
51
+
52
+ </body>
53
+ </html>
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+ c = /(?:#|\/\/)/ # Comment prefix
3
+ lang = "ruby" # Default language
4
+ blocks = STDIN.read.scan(/(?:^[ \t]*#{c} [^\n]*\n)+/) # Read contiguous comments
5
+ blocks.map! { |s| s.gsub!(/(?:^|\n)+[ \t]*#{c} /, "\n") } # Strip out prefixes
6
+
7
+ # Code blocks
8
+ md = blocks.join("")
9
+ md.gsub!(/((?:^ .*\n+)+)/) { |f| "~~~ #{lang}\n" + f.gsub(/^ /, '').gsub(/\s*$/, '') + "\n~~~\n\n" }
10
+
11
+ puts md
@@ -0,0 +1,72 @@
1
+ # NOTE:
2
+ # Yes, you can deploy this project. It will deploy into the ./deploy/
3
+ # directory. The commands have been stubbed, so it's harmless. No rails or
4
+ # bundler magic will happen.
5
+
6
+ # ASSUMPTIONS:
7
+ # - You have git installed. (of course you do)
8
+ # - You have SSH enabled. In OS X, this is "Remote Login" under the Sharing pref pane.
9
+ # - You have your own SSH key added to your own user so you can SSH to your own machine.
10
+
11
+ # In fact, let's make that folder right now.
12
+ require 'fileutils'
13
+ FileUtils.mkdir_p "#{Dir.pwd}/deploy"
14
+ FileUtils.mkdir_p "#{Dir.pwd}/deploy/config"
15
+ File.open("#{Dir.pwd}/deploy/config/database.yml", 'w') { |f| f.write "Hello" }
16
+
17
+ # -- Stubs end, deploy script begins! --------------
18
+
19
+ require 'mina/rails'
20
+ require 'mina/bundler'
21
+ require 'mina/git'
22
+
23
+ set :domain, 'localhost'
24
+ set :deploy_to, "#{Dir.pwd}/deploy"
25
+ set :repository, "#{Mina.root_path}"
26
+ set :shared_paths, ['config/database.yml']
27
+
28
+ set :keep_releases, 2
29
+
30
+ task :environment do
31
+ queue %[echo "-----> Loading env"]
32
+ end
33
+
34
+ desc "Deploys."
35
+ task :deploy => :environment do
36
+ queue "bundle() { true; }" # Stub the bundle command.
37
+
38
+ deploy do
39
+ queue %[ruby -e "\\$stderr.write \\\"This is stdout output\n\\\""]
40
+ invoke :'git:clone'
41
+ invoke :'deploy:link_shared_paths'
42
+ invoke :'bundle:install'
43
+ invoke :'rails:db_migrate'
44
+
45
+ to :build do
46
+ queue "touch build.txt"
47
+ end
48
+ to :launch do
49
+ invoke :'passenger:restart'
50
+ end
51
+ end
52
+ end
53
+
54
+ desc "Restarts the passenger server."
55
+ task :restart do
56
+ invoke :'passenger:restart'
57
+ end
58
+
59
+ namespace :passenger do
60
+ task :restart do
61
+ queue %{
62
+ echo "-----> Restarting passenger"
63
+ #{echo_cmd %[mkdir -p tmp]}
64
+ #{echo_cmd %[touch tmp/restart.txt]}
65
+ }
66
+ end
67
+ end
68
+
69
+ task :get_password do
70
+ set :term_mode, :pretty
71
+ queue %[echo "-> Getting password"; echo -n "Password: "; read x; echo ""; echo out: $x;]
72
+ end
metadata ADDED
@@ -0,0 +1,157 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mina-traackr
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Rico Sta. Cruz
9
+ - Michael Galero
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2014-04-04 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rake
17
+ requirement: !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: '0'
31
+ - !ruby/object:Gem::Dependency
32
+ name: open4
33
+ requirement: !ruby/object:Gem::Requirement
34
+ none: false
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ type: :runtime
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rspec
49
+ requirement: !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ description: Really fast deployer and server automation tool.
64
+ email:
65
+ - rico@nadarei.co
66
+ - mikong@nadarei.co
67
+ executables:
68
+ - mina
69
+ extensions: []
70
+ extra_rdoc_files: []
71
+ files:
72
+ - .gitignore
73
+ - .rspec
74
+ - .travis.yml
75
+ - CONTRIBUTING.md
76
+ - Gemfile
77
+ - HISTORY.md
78
+ - LICENSE
79
+ - Makefile
80
+ - Notes.md
81
+ - Rakefile
82
+ - Readme.md
83
+ - bin/mina
84
+ - data/deploy.rb
85
+ - data/deploy.sh.erb
86
+ - lib/mina.rb
87
+ - lib/mina/bundler.rb
88
+ - lib/mina/chruby.rb
89
+ - lib/mina/default.rb
90
+ - lib/mina/deploy.rb
91
+ - lib/mina/deploy_helpers.rb
92
+ - lib/mina/exec_helpers.rb
93
+ - lib/mina/foreman.rb
94
+ - lib/mina/git.rb
95
+ - lib/mina/helpers.rb
96
+ - lib/mina/output_helpers.rb
97
+ - lib/mina/rails.rb
98
+ - lib/mina/rake.rb
99
+ - lib/mina/rbenv.rb
100
+ - lib/mina/rvm.rb
101
+ - lib/mina/settings.rb
102
+ - lib/mina/ssh_helpers.rb
103
+ - lib/mina/tools.rb
104
+ - lib/mina/version.rb
105
+ - lib/mina/whenever.rb
106
+ - manual/index.md
107
+ - manual/modules.md
108
+ - mina.gemspec
109
+ - spec/command_helper.rb
110
+ - spec/commands/cleanup_spec.rb
111
+ - spec/commands/command_spec.rb
112
+ - spec/commands/custom_config_spec.rb
113
+ - spec/commands/deploy_spec.rb
114
+ - spec/commands/outside_project_spec.rb
115
+ - spec/commands/real_deploy_spec.rb
116
+ - spec/commands/ssh_spec.rb
117
+ - spec/commands/verbose_spec.rb
118
+ - spec/dsl/invoke_spec.rb
119
+ - spec/dsl/queue_spec.rb
120
+ - spec/dsl/settings_in_rake_spec.rb
121
+ - spec/dsl/settings_spec.rb
122
+ - spec/dsl/to_spec.rb
123
+ - spec/fixtures/custom_file_env/custom_deploy.rb
124
+ - spec/fixtures/empty_env/config/deploy.rb
125
+ - spec/helpers/output_helper_spec.rb
126
+ - spec/spec_helper.rb
127
+ - support/Readme-footer.md
128
+ - support/Readme-header.md
129
+ - support/guide.md
130
+ - support/index.html
131
+ - support/to_md.rb
132
+ - test_env/config/deploy.rb
133
+ homepage: http://github.com/nadarei/mina
134
+ licenses: []
135
+ post_install_message:
136
+ rdoc_options: []
137
+ require_paths:
138
+ - lib
139
+ required_ruby_version: !ruby/object:Gem::Requirement
140
+ none: false
141
+ requirements:
142
+ - - ! '>='
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ required_rubygems_version: !ruby/object:Gem::Requirement
146
+ none: false
147
+ requirements:
148
+ - - ! '>='
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
151
+ requirements: []
152
+ rubyforge_project:
153
+ rubygems_version: 1.8.24
154
+ signing_key:
155
+ specification_version: 3
156
+ summary: Really fast deployer and server automation tool.
157
+ test_files: []