Skip to content

Instantly share code, notes, and snippets.

@rudisimo
Last active August 29, 2015 13:56
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rudisimo/9210761 to your computer and use it in GitHub Desktop.
Save rudisimo/9210761 to your computer and use it in GitHub Desktop.
Developer Rakefile for Telemundo's Pub7
env_drush = ENV.key?("DRUSH") ? ENV["DRUSH"] : "drush"
env_id = ENV.key?("ENV") ? ENV["ENV"] : "nbcutelemundo.local"
env_profile = ENV.key?("PROFILE") ? ENV["PROFILE"] : "publisher"
env_db_url = ENV.key?("DB_URL") ? ENV["DB_URL"] : "mysql://root@localhost/publisher7_nbcutelemundo"
env_admin_user = ENV.key?("ADMIN_USER") ? ENV["ADMIN_USER"] : "admin"
env_admin_pass = ENV.key?("ADMIN_PASSWORD") ? ENV["ADMIN_PASSWORD"] : "Pa55word"
env_admin_email = ENV.key?("ADMIN_EMAIL") ? ENV["ADMIN_EMAIL"] : "admin@telemundo.com"
params_default = ["-y"]
params_install = [
env_profile,
"install_configure_form.division='TV Entertainment'",
"install_configure_form.brand='Telemundo Network'",
"--db-url=#{env_db_url}",
"--sites-subdir=nbcutelemundo",
"--site-name='Telemundo'",
"--site-mail=noreply@telemundo.com",
"--account-name=#{env_admin_user}",
"--account-pass=#{env_admin_pass}",
"--account-mail=#{env_admin_email}",
]
desc "Drops the site database"
task :rmsite, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} sql-drop #{params.join(" ")}")
end
desc "Performs a site installation"
task :ensite, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = params_install + params_default
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} site-install #{params.join(" ")}")
end
desc "Resets the site installation"
task :resetsite, :verbose do |t, args|
task(:rmsite).invoke(args[:verbose])
task(:ensite).invoke(args[:verbose])
end
desc "Applies any pending updates from core"
task :update, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} cache-clear drush #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} updatedb #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} cache-clear all #{params.join(" ")}")
end
desc "Cleans the site installation"
task :clean, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} cache-clear drush #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} updatedb #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} cache-clear all #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} features-revert-all #{params.join(" ")}")
end
desc "Removes the Telemundo Core module"
task :rmmod, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} cache-clear drush #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} pm-disable tlmd_core #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} pm-uninstall tlmd_core #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} cache-clear all #{params.join(" ")}")
end
desc "Installs the Telemundo Core module"
task :enmod, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} cache-clear drush #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} pm-enable tlmd_core #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} pm-enable tlmd_dev #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} cache-clear all #{params.join(" ")}")
end
desc "Resets the Telemundo Core module"
task :resetmod, :verbose do |t, args|
task(:rmmod).invoke(args[:verbose])
task(:enmod).invoke(args[:verbose])
end
desc "Initial installation"
task :install, :verbose do |t, args|
task(:ensite).invoke(args[:verbose])
task(:enmod).invoke(args[:verbose])
task(:clean).invoke(args[:verbose])
end
desc "Resets the whole installation"
task :reset, :verbose do |t, args|
task(:resetsite).invoke(args[:verbose])
task(:enmod).invoke(args[:verbose])
task(:clean).invoke(args[:verbose])
end
desc "Display watchdog log information"
task :log do |t, args|
Kernel.system("#{env_drush} @#{env_id} watchdog-show --tail")
end
desc "Execute cron job"
task :cron, :verbose do |t, args|
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
Kernel.system("#{env_drush} @#{env_id} cache-clear all #{params.join(" ")}")
Kernel.system("#{env_drush} @#{env_id} core-cron #{params.join(" ")}")
end
desc "Builds an Acquia release"
task :release, :publisher_tag, :telemundo_tag, :verbose do |t, args|
args.with_defaults(:publisher => nil)
args.with_defaults(:telemundo => nil)
args.with_defaults(:verbose => nil)
verbosity = 0
if !args[:verbose].nil?
verbosity = args[:verbose].to_i
end
params = Array.new(params_default)
if verbosity > 0 then
params.push("-v")
end
if verbosity > 1 then
params.push("-d")
end
if args[:publisher_tag].nil? or args[:telemundo_tag].nil?
raise "You must pass all required parameters (Publisher7 and Publisher7_nbcutelemundo tags)"
else
release_params = [
"NBCUOTS/Publisher7_nbcutelemundo",
args[:telemundo_tag],
"NBCUOTS/Publisher7",
args[:publisher_tag],
]
Kernel.system("#{env_drush} @#{env_id} pub-build nbcutelemundo #{release_params.join(" ")} releases #{params.join(" ")}")
end
end
# vi: syntax=ruby ts=2 sw=2 et :
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment