thunder_punch 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/CHANGELOG.mdown CHANGED
@@ -1,3 +1,11 @@
1
+ == 0.0.5 (June 28, 2010)
2
+
3
+ * Rename example config to amazon.yml [Bob Burbach - github.com/peregrinator]
4
+ * Change key names in config file [Bob Burbach - github.com/peregrinator]
5
+ * Remove name-spacing of lib under critical juncture [Bob Burbach - github.com/peregrinator]
6
+ * Add deployment recipes for a git-based deployment stategy [Bob Burbach - github.com/peregrinator]
7
+ * Add recipes for bundler and database tasks (fixing bundle and downloading db) [Bob Burbach - github.com/peregrinator]
8
+
1
9
  == 0.0.4 (March 8, 2010)
2
10
 
3
11
  * Add ability to exclude specific files and directories from ami bundling [Bob Burbach - github.com/peregrinator]
data/README.mdown CHANGED
@@ -12,8 +12,8 @@ Because this collection of recipes is for Capistrano and run with the cap comman
12
12
 
13
13
  * Capistrano >=2.5.5
14
14
  * In your deploy.rb file:
15
- * Add line 'require critical\_juncture/thunder_punch'
16
- * Add line 'set :ec2\_config\_location, File.join(File.dirname(__FILE__), "ec2\_config.yml")'
15
+ * Add line 'require thunder_punch'
16
+ * Add line 'set :ec2\_config\_location, File.join(File.dirname(__FILE__), "amazon.yml")'
17
17
 
18
18
  ##Recipes
19
19
 
@@ -21,11 +21,11 @@ By creating a central and organized system for our tasks we can reduce the conte
21
21
 
22
22
  ###EC2
23
23
 
24
- * Requires a yaml file named ec2_config.yml with the appropriate passwords, etc. See the example file.
24
+ * Requires a yaml file named amazon.yml with the appropriate passwords, etc. See the example file.
25
25
 
26
26
  ####ami.rb
27
27
  * recipes for uploading necessary keys to server, bundling new AMI, uploading to S3, and registering a AMI
28
- * exclude files and directories from bundling by putting them in an array in ec2_config.yml
28
+ * exclude files and directories from bundling by putting them in an array in amazon.yml
29
29
  * `ami_excluded_items: ['/home/my_user', '/var/some_secret_stuff']`
30
30
 
31
31
  ##Known Issues
data/Rakefile CHANGED
@@ -8,7 +8,7 @@ begin
8
8
  gem.summary = "Collection of capistano recipes for deployment and server tasks"
9
9
  gem.description = "Collection of capistano recipes for deployment and server tasks"
10
10
  gem.email = "govpulse@gmail.com"
11
- gem.homepage = "http://github.com/govpulse/thunder_punch"
11
+ gem.homepage = "http://github.com/trifecta/thunder_punch"
12
12
  gem.authors = ["Bob Burbach"]
13
13
  gem.add_development_dependency "thoughtbot-shoulda", ">= 0"
14
14
  gem.add_dependency('capistrano', '>= 2.5.5')
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.4
1
+ 0.0.5
@@ -0,0 +1,10 @@
1
+ #examples from Amazon documentation
2
+ aws_key_location: ~/.ssh #or whereever you store you aws keys - no trailing slash
3
+ ec2_private_key: pk-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem
4
+ ec2_x509_cert: cert-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem
5
+ aws_account_id: 495219933132
6
+ ec2_architecture: i386 #or x86_64
7
+ access_key_id: <aws-access-key-id>
8
+ secret_access_key: <aws-secret-access-key>
9
+ ec2_s3_bucket_name: some_bucket_for_your_ami_images
10
+ ami_excluded_items: [] #you may want to exclude files or directories like /home/my_user, etc.
File without changes
@@ -0,0 +1,10 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+
3
+ namespace :bundler do
4
+ desc "Install and lock bundle"
5
+ task :fix_bundle, :roles => [:app, :worker] do
6
+ run "cd #{current_path} && bundle install"
7
+ end
8
+ end
9
+
10
+ end
@@ -0,0 +1,72 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ #############################################################
3
+ # Check for Existing Database
4
+ #############################################################
5
+
6
+ namespace :database do
7
+ desc "Check to see if database exists"
8
+ task :check_database_existence, :roles => [:database], :only => { :primary => true } do
9
+ db_exists = false
10
+ run "mysql -u root -e \"SELECT COUNT(SCHEMA_NAME) FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '#{database_to_check}';\" --batch --reconnect --show-warning --silent" do |ch, stream, data|
11
+ if stream == :err
12
+ abort "capured output on STDERR when verifying database #{database_to_check} exists: #{data}"
13
+ elsif stream == :out
14
+ return_value = data.split("\n").first.chomp
15
+
16
+ if ['0','1'].include?(return_value)
17
+ db_exists = return_value == '0' ? false : true
18
+ else
19
+ abort "Invalid response from db when checking if database exists. Expected 0 or 1, got a count of #{return_value}"
20
+ end
21
+ puts db_exists
22
+ end
23
+ end
24
+ db_exists
25
+ end
26
+ end
27
+
28
+ #############################################################
29
+ # Backup Database
30
+ #############################################################
31
+
32
+ namespace :database do
33
+ desc "Dump the current database"
34
+ task :backup, :roles => [:database], :only => { :primary => true } do
35
+ set :database_to_check, remote_db_name # used by the check_database_existence task
36
+ db_exists = find_and_execute_task('database:check_database_existence')
37
+
38
+ if db_exists
39
+ sudo "sudo mkdir -p #{db_path}"
40
+ run "mysqldump -u root --opt #{remote_db_name} > #{sql_file_path}"
41
+ else
42
+ abort "There is no database named #{remote_db_name} to backup"
43
+ end
44
+ end #end task :backup
45
+ end #end namspace
46
+
47
+ #############################################################
48
+ # Load Remote Staging Database to Local Machine
49
+ #############################################################
50
+
51
+ namespace :database do
52
+
53
+ desc "Backup remote database and load locally"
54
+ task :load_remote, :roles => [:database], :only => { :primary => true } do
55
+ backup
56
+ copy
57
+ load_copy
58
+ end
59
+
60
+ desc "Copy the current database"
61
+ task :copy, :roles => [:database], :only => { :primary => true } do
62
+ `mkdir -p tmp`
63
+ download(sql_file_path, "tmp/", :via=> :scp)
64
+ end
65
+
66
+ desc "Load the staging database locally"
67
+ task :load_copy, :roles => [:database], :only => { :primary => true } do
68
+ `script/dbconsole -p < tmp/#{remote_db_name}.sql`
69
+ end
70
+
71
+ end #end namspace
72
+ end
@@ -0,0 +1,3 @@
1
+ Dir["#{File.dirname(__FILE__)}/deployment/*.rb"].each { |lib|
2
+ Capistrano::Configuration.instance.load {load(lib)}
3
+ }
@@ -0,0 +1,60 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ namespace :deploy do
3
+ desc "Deploy the app"
4
+ task :default, :roles => [:app, :static, :worker] do
5
+ update
6
+ restart
7
+ cleanup
8
+ end
9
+
10
+ desc "Setup a GitHub-style deployment."
11
+ task :setup, :roles => [:app, :static, :worker], :except => { :no_release => true } do
12
+ run "git clone #{repository} #{current_path}"
13
+ end
14
+
15
+ desc "Update the deployed code."
16
+ task :update_code, :roles => [:app, :static, :worker], :except => { :no_release => true } do
17
+ run "cd #{current_path}; git fetch origin; git reset --hard #{branch}; git submodule update --init"
18
+ end
19
+
20
+ # "rollback" is actually a namespace with a default task
21
+ namespace :rollback do
22
+ desc "Rollback a single commit."
23
+ task :code, :roles => [:app, :static, :worker], :except => { :no_release => true } do
24
+ set :branch, "HEAD^"
25
+ deploy.default
26
+ end
27
+
28
+ task :default, :roles => [:app, :static, :worker] do
29
+ rollback.code
30
+ end
31
+ end
32
+
33
+ end
34
+
35
+ #############################################################
36
+ # Set Rake Path
37
+ #############################################################
38
+
39
+ namespace :deploy do
40
+ desc "Set rake path"
41
+ task :set_rake_path, :roles => [:app, :worker] do
42
+ run "which rake" do |ch, stream, data|
43
+ if stream == :err
44
+ abort "captured output on STDERR when setting rake path: #{data}"
45
+ elsif stream == :out
46
+ set :rake_path, data.to_s.strip
47
+ end
48
+ end
49
+ end
50
+ end
51
+
52
+
53
+ # Turn of capistrano's restart in favor of passenger restart
54
+ namespace :deploy do
55
+ desc "Remove deploy:restart In Favor Of passenger:restart Task"
56
+ task :restart do
57
+ end
58
+ end
59
+
60
+ end
@@ -0,0 +1,34 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ namespace :deploy do
3
+ desc <<-DESC
4
+ Run the migrate rake task. By default, it runs this in most recently \
5
+ deployed version of the app. However, you can specify a different release \
6
+ via the migrate_target variable, which must be one of :latest (for the \
7
+ default behavior), or :current (for the release indicated by the \
8
+ `current' symlink). Strings will work for those values instead of symbols, \
9
+ too. You can also specify additional environment variables to pass to rake \
10
+ via the migrate_env variable. Finally, you can specify the full path to the \
11
+ rake executable by setting the rake variable. The defaults are:
12
+
13
+ set :rake, "rake"
14
+ set :rails_env, "production"
15
+ set :migrate_env, ""
16
+ set :migrate_target, :latest
17
+ DESC
18
+ task :migrate, :roles => :worker, :only => { :primary => true } do
19
+ rake = fetch(:rake, "rake")
20
+ rails_env = fetch(:rails_env, "production")
21
+ migrate_env = fetch(:migrate_env, "")
22
+ migrate_target = fetch(:migrate_target, :latest)
23
+
24
+ directory = case migrate_target.to_sym
25
+ when :current then current_path
26
+ when :latest then current_release
27
+ else raise ArgumentError, "unknown migration target #{migrate_target.inspect}"
28
+ end
29
+
30
+ run "cd #{directory}; #{rake} RAILS_ENV=#{rails_env} #{migrate_env} db:migrate"
31
+ end
32
+ end #namespace
33
+
34
+ end
@@ -0,0 +1,28 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ #############################################################
3
+ # Passenger Restart
4
+ #############################################################
5
+
6
+ namespace :passenger do
7
+ desc "Restart Application"
8
+ task :restart, :roles => [:app] do
9
+ run "touch #{current_path}/tmp/restart.txt"
10
+ end
11
+ end
12
+
13
+ #############################################################
14
+ # Passenger Status Checks
15
+ #############################################################
16
+
17
+ namespace :passenger do
18
+ desc "Check Passenger Status"
19
+ task :status, :roles => [:app] do
20
+ sudo 'passenger-status'
21
+ end
22
+
23
+ desc "Check Apache/Passenger Memory Usage"
24
+ task :memory_stats, :roles => [:app] do
25
+ sudo 'passenger-memory-stats'
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,39 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ # these are the usual suspects (for rails)
3
+ set :standard_symlinks, {
4
+ 'log' => 'log',
5
+ 'config/database.yml' => 'config/database.yml',
6
+ 'public/system' => 'system',
7
+ 'tmp' => 'tmp'
8
+ }
9
+
10
+ # these are project specific but still reside in shared
11
+ # e.g., 'backups' => 'db/backups'
12
+ # ==> rm -rf #{release_path}/backups && ln -s #{shared_path}/db/backups #{release_path}/backups
13
+ _cset :custom_symlinks, {}
14
+
15
+ # these are project specific but need full 'from' paths
16
+ # eg 'foo' => '/var/www/apps/project/foo'
17
+ # creates the command "rm -rf #{release_path}/foo && ln -s /var/www/apps/project/foo #{release_path}/foo"
18
+ _cset :other_symlinks, {}
19
+
20
+ namespace :symlinks do
21
+ desc "Create all sylinks (removes directories/files if they exist first)"
22
+ task :create, :roles => [:app, :static, :worker], :except => { :no_release => true } do
23
+
24
+ commands = standard_symlinks.map do |to, from|
25
+ "rm -rf #{current_path}/#{to} && ln -s #{shared_path}/#{from} #{current_path}/#{to}"
26
+ end
27
+
28
+ commands += custom_symlinks.map do |to, from|
29
+ "rm -rf #{current_path}/#{to} && ln -s #{shared_path}/#{from} #{current_path}/#{to}"
30
+ end
31
+
32
+ commands += other_symlinks.map do |to, from|
33
+ "rm -rf #{current_path}/#{to} && ln -s #{from} #{current_path}/#{to}"
34
+ end
35
+
36
+ run "cd #{current_path} && #{commands.join(" && ")}"
37
+ end
38
+ end
39
+ end
File without changes
@@ -6,28 +6,28 @@ Capistrano::Configuration.instance(:must_exist).load do |configuration|
6
6
 
7
7
  task :load_ec2_config, :roles => :app do
8
8
  alert_user('You need to set :ec2_config_location in your deploy file', :abort => true) unless ec2_config_location
9
- alert_user("You must configure your ec2 settings in config/ec2_config.yml", :abort => true) unless File.exist?(ec2_config_location)
9
+ alert_user("You must configure your ec2 settings in config/amazon.yml", :abort => true) unless File.exist?(ec2_config_location)
10
10
 
11
11
  ec2_config = YAML.load( File.open(ec2_config_location, 'r') )
12
12
 
13
- set :aws_key_location, ec2_config['aws_key_location']
14
- set :ec2_private_key, ec2_config['ec2_private_key']
15
- set :ec2_x509_cert, ec2_config['ec2_x509_cert']
16
- set :aws_account_id, ec2_config['aws_account_id']
17
- set :ec2_architecture, ec2_config['ec2_architecture']
18
- set :aws_access_key, ec2_config['aws_access_key']
19
- set :aws_secret_access_key, ec2_config['aws_secret_access_key']
20
- set :ec2_s3_bucket_name, ec2_config['ec2_s3_bucket_name']
21
- set :ami_excluded_items, ec2_config['ami_excluded_items']
13
+ set :aws_key_location, ec2_config['aws_key_location']
14
+ set :ec2_private_key, ec2_config['ec2_private_key']
15
+ set :ec2_x509_cert, ec2_config['ec2_x509_cert']
16
+ set :aws_account_id, ec2_config['aws_account_id']
17
+ set :ec2_architecture, ec2_config['ec2_architecture']
18
+ set :access_key_id, ec2_config['access_key_id']
19
+ set :secret_access_key, ec2_config['secret_access_key']
20
+ set :ec2_s3_bucket_name, ec2_config['ec2_s3_bucket_name']
21
+ set :ami_excluded_items, ec2_config['ami_excluded_items']
22
22
 
23
- alert_user('You need to set :aws_key_location in config/ec2_config.yml', :abort => true) unless :key_location
24
- alert_user('You need to set :ec2_private_key in config/ec2_config.yml', :abort => true) unless :ec2_private_key
25
- alert_user('You need to set :ec2_x509_cert in config/ec2_config.yml', :abort => true) unless :ec2_x509_cert
26
- alert_user('You need to set :aws_account_id in config/ec2_config.yml', :abort => true) unless :aws_account_id
27
- alert_user('You need to set :ec2_architecture to either "i386" or "x86_64" in config/ec2_config.yml', :abort => true) unless :ec2_architecture
28
- alert_user('You need to set :aws_access_key in config/ec2_config.yml', :abort => true) unless :aws_access_key
29
- alert_user('You need to set :aws_secret_access_key in config/ec2_config.yml', :abort => true) unless :aws_secret_access_key
30
- alert_user('You need to set :ec2_s3_bucket_name in config/ec2_config.yml', :abort => true) unless :ec2_s3_bucket_name
23
+ alert_user('You need to set :aws_key_location in config/amazon.yml', :abort => true) unless :key_location
24
+ alert_user('You need to set :ec2_private_key in config/amazon.yml', :abort => true) unless :ec2_private_key
25
+ alert_user('You need to set :ec2_x509_cert in config/amazon.yml', :abort => true) unless :ec2_x509_cert
26
+ alert_user('You need to set :aws_account_id in config/amazon.yml', :abort => true) unless :aws_account_id
27
+ alert_user('You need to set :ec2_architecture to either "i386" or "x86_64" in config/amazon.yml', :abort => true) unless :ec2_architecture
28
+ alert_user('You need to set :access_key_id in config/amazon.yml', :abort => true) unless :access_key_id
29
+ alert_user('You need to set :secret_access_key in config/amazon.yml', :abort => true) unless :secret_access_key
30
+ alert_user('You need to set :ec2_s3_bucket_name in config/amazon.yml', :abort => true) unless :ec2_s3_bucket_name
31
31
 
32
32
  set :ec2_config_loaded, true
33
33
  end
@@ -86,7 +86,7 @@ Capistrano::Configuration.instance(:must_exist).load do |configuration|
86
86
  task :upload_ami_to_s3, :roles => :app do
87
87
  load_ec2_config unless ec2_config_loaded
88
88
  alert_user("You need to set :bundle_name via the command line\n `cap ec2:upload_to_s3 -s bundle_name=sample`", :abort => true) unless configuration[:bundle_name]
89
- sudo "ec2-upload-bundle -b #{ec2_s3_bucket_name} -m /mnt/#{bundle_name}.manifest.xml -a #{aws_access_key} -s #{aws_secret_access_key}"
89
+ sudo "ec2-upload-bundle -b #{ec2_s3_bucket_name} -m /mnt/#{bundle_name}.manifest.xml -a #{access_key_id} -s #{secret_access_key}"
90
90
  end
91
91
 
92
92
  desc 'Register your bundled and upload (to S3) AMI'
@@ -0,0 +1,19 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do |configuration|
2
+
3
+ namespace :jekyll do
4
+ desc "Build static files from jekyll files"
5
+ task :build do
6
+ alert_user "Building static files from jekyll files"
7
+ run_locally "jekyll"
8
+ end
9
+
10
+ desc "Create site (less and jekyll)"
11
+ task :create do
12
+ alert_user "[START] Creating site [START]"
13
+ find_and_execute_task('less:build')
14
+ find_and_execute_task('jekyll:build')
15
+ alert_user "[END] Creating site [END]"
16
+ end
17
+ end
18
+
19
+ end
@@ -0,0 +1,18 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do |configuration|
2
+
3
+ namespace :less do
4
+ desc "Build css files from .less files"
5
+ task :build do
6
+ _cset :less_directory, '_less'
7
+ _cset :css_directory, 'css'
8
+ Dir.glob(less_directory + '/*.less').each do |file|
9
+ if File.file?(file)
10
+ file_name = file.split('/').last.split('.').first
11
+ alert_user("Creating css file for less file named #{file_name}" )
12
+ run_locally("lessc #{less_directory}/#{file_name}.less #{css_directory}/#{file_name}.css")
13
+ end
14
+ end
15
+ end
16
+ end
17
+
18
+ end
@@ -0,0 +1,52 @@
1
+ Capistrano::Configuration.instance(:must_exist).load do
2
+ namespace :thinking_sphinx do
3
+
4
+ desc "Generate the Sphinx configuration file"
5
+ task :configure, :roles => [:app, :worker] do
6
+ rake "thinking_sphinx:configure"
7
+ end
8
+
9
+ desc "Index data"
10
+ task :index, :roles => :worker do
11
+ rake "thinking_sphinx:index"
12
+ end
13
+
14
+ desc "Start the Sphinx daemon"
15
+ task :start, :roles => :worker do
16
+ configure
17
+ rake "thinking_sphinx:start"
18
+ end
19
+
20
+ desc "Stop the Sphinx daemon"
21
+ task :stop, :roles => :worker do
22
+ configure
23
+ rake "thinking_sphinx:stop"
24
+ end
25
+
26
+ desc "Stop and then start the Sphinx daemon"
27
+ task :restart, :roles => :worker do
28
+ stop
29
+ start
30
+ end
31
+
32
+ desc "Stop, re-index and then start the Sphinx daemon"
33
+ task :rebuild, :roles => :worker do
34
+ stop
35
+ index
36
+ start
37
+ end
38
+
39
+ desc "Add the shared folder for sphinx files for the production environment"
40
+ task :shared_sphinx_folder, :roles => [:app, :worker] do
41
+ run "mkdir -p #{shared_path}/db/sphinx/production"
42
+ end
43
+
44
+ def rake(*tasks)
45
+ rails_env = fetch(:rails_env, "production")
46
+ rake = fetch(:rake, "rake")
47
+ tasks.each do |t|
48
+ run "if [ -d #{release_path} ]; then cd #{release_path}; else cd #{current_path}; fi; #{rake} RAILS_ENV=#{rails_env} #{t}"
49
+ end
50
+ end
51
+ end
52
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{thunder_punch}
8
- s.version = "0.0.4"
8
+ s.version = "0.0.5"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Bob Burbach"]
12
- s.date = %q{2010-03-08}
12
+ s.date = %q{2010-07-02}
13
13
  s.description = %q{Collection of capistano recipes for deployment and server tasks}
14
14
  s.email = %q{govpulse@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -25,20 +25,30 @@ Gem::Specification.new do |s|
25
25
  "Rakefile",
26
26
  "TODO.mdown",
27
27
  "VERSION",
28
- "example/ec2_config.yml",
29
- "lib/critical_juncture/recipes.rb",
30
- "lib/critical_juncture/recipes/ec2.rb",
31
- "lib/critical_juncture/recipes/ec2/ami.rb",
32
- "lib/critical_juncture/thunder_punch.rb",
33
- "lib/critical_juncture/utilities/utilities.rb",
28
+ "example/amazon.yml",
29
+ "lib/recipes.rb",
30
+ "lib/recipes/bundler.rb",
31
+ "lib/recipes/database.rb",
32
+ "lib/recipes/deployment.rb",
33
+ "lib/recipes/deployment/deployment.rb",
34
+ "lib/recipes/deployment/migration.rb",
35
+ "lib/recipes/deployment/passenger.rb",
36
+ "lib/recipes/deployment/symlinks.rb",
37
+ "lib/recipes/ec2.rb",
38
+ "lib/recipes/ec2/ami.rb",
39
+ "lib/recipes/jekyll/jekyll.rb",
40
+ "lib/recipes/less/less.rb",
41
+ "lib/recipes/thinking_sphinx.rb",
42
+ "lib/thunder_punch.rb",
43
+ "lib/utilities/utilities.rb",
34
44
  "test/helper.rb",
35
45
  "test/test_thunder_punch.rb",
36
46
  "thunder_punch.gemspec"
37
47
  ]
38
- s.homepage = %q{http://github.com/govpulse/thunder_punch}
48
+ s.homepage = %q{http://github.com/trifecta/thunder_punch}
39
49
  s.rdoc_options = ["--charset=UTF-8"]
40
50
  s.require_paths = ["lib"]
41
- s.rubygems_version = %q{1.3.5}
51
+ s.rubygems_version = %q{1.3.6}
42
52
  s.summary = %q{Collection of capistano recipes for deployment and server tasks}
43
53
  s.test_files = [
44
54
  "test/helper.rb",
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thunder_punch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 0
8
+ - 5
9
+ version: 0.0.5
5
10
  platform: ruby
6
11
  authors:
7
12
  - Bob Burbach
@@ -9,29 +14,35 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-03-08 00:00:00 -08:00
17
+ date: 2010-07-02 00:00:00 -07:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: thoughtbot-shoulda
17
- type: :development
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
23
29
  version: "0"
24
- version:
30
+ type: :development
31
+ version_requirements: *id001
25
32
  - !ruby/object:Gem::Dependency
26
33
  name: capistrano
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
34
+ prerelease: false
35
+ requirement: &id002 !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - ">="
32
38
  - !ruby/object:Gem::Version
39
+ segments:
40
+ - 2
41
+ - 5
42
+ - 5
33
43
  version: 2.5.5
34
- version:
44
+ type: :runtime
45
+ version_requirements: *id002
35
46
  description: Collection of capistano recipes for deployment and server tasks
36
47
  email: govpulse@gmail.com
37
48
  executables: []
@@ -50,17 +61,27 @@ files:
50
61
  - Rakefile
51
62
  - TODO.mdown
52
63
  - VERSION
53
- - example/ec2_config.yml
54
- - lib/critical_juncture/recipes.rb
55
- - lib/critical_juncture/recipes/ec2.rb
56
- - lib/critical_juncture/recipes/ec2/ami.rb
57
- - lib/critical_juncture/thunder_punch.rb
58
- - lib/critical_juncture/utilities/utilities.rb
64
+ - example/amazon.yml
65
+ - lib/recipes.rb
66
+ - lib/recipes/bundler.rb
67
+ - lib/recipes/database.rb
68
+ - lib/recipes/deployment.rb
69
+ - lib/recipes/deployment/deployment.rb
70
+ - lib/recipes/deployment/migration.rb
71
+ - lib/recipes/deployment/passenger.rb
72
+ - lib/recipes/deployment/symlinks.rb
73
+ - lib/recipes/ec2.rb
74
+ - lib/recipes/ec2/ami.rb
75
+ - lib/recipes/jekyll/jekyll.rb
76
+ - lib/recipes/less/less.rb
77
+ - lib/recipes/thinking_sphinx.rb
78
+ - lib/thunder_punch.rb
79
+ - lib/utilities/utilities.rb
59
80
  - test/helper.rb
60
81
  - test/test_thunder_punch.rb
61
82
  - thunder_punch.gemspec
62
83
  has_rdoc: true
63
- homepage: http://github.com/govpulse/thunder_punch
84
+ homepage: http://github.com/trifecta/thunder_punch
64
85
  licenses: []
65
86
 
66
87
  post_install_message:
@@ -72,18 +93,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
72
93
  requirements:
73
94
  - - ">="
74
95
  - !ruby/object:Gem::Version
96
+ segments:
97
+ - 0
75
98
  version: "0"
76
- version:
77
99
  required_rubygems_version: !ruby/object:Gem::Requirement
78
100
  requirements:
79
101
  - - ">="
80
102
  - !ruby/object:Gem::Version
103
+ segments:
104
+ - 0
81
105
  version: "0"
82
- version:
83
106
  requirements: []
84
107
 
85
108
  rubyforge_project:
86
- rubygems_version: 1.3.5
109
+ rubygems_version: 1.3.6
87
110
  signing_key:
88
111
  specification_version: 3
89
112
  summary: Collection of capistano recipes for deployment and server tasks
@@ -1,10 +0,0 @@
1
- #examples from Amazon documentation
2
- aws_key_location: ~/.ssh #or whereever you store you aws keys - no trailing slash
3
- ec2_private_key: pk-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem
4
- ec2_x509_cert: cert-HKZYKTAIG2ECMXYIBH3HXV4ZBZQ55CLO.pem
5
- aws_account_id: 495219933132
6
- ec2_architecture: i386 #or x86_64
7
- aws_access_key: <aws-access-key-id>
8
- aws_secret_access_key: <aws-secret-access-key>
9
- ec2_s3_bucket_name: some_bucket_for_your_ami_images
10
- ami_excluded_items: [] #you may want to exclude files or directories like /home/my_user, etc.