aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/tasks/tmp.rake
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/tasks/tmp.rake')
-rw-r--r--railties/lib/rails/tasks/tmp.rake45
1 files changed, 45 insertions, 0 deletions
diff --git a/railties/lib/rails/tasks/tmp.rake b/railties/lib/rails/tasks/tmp.rake
new file mode 100644
index 0000000000..116988665f
--- /dev/null
+++ b/railties/lib/rails/tasks/tmp.rake
@@ -0,0 +1,45 @@
+namespace :tmp do
+ desc "Clear session, cache, and socket files from tmp/ (narrow w/ tmp:sessions:clear, tmp:cache:clear, tmp:sockets:clear)"
+ task clear: [ "tmp:sessions:clear", "tmp:cache:clear", "tmp:sockets:clear"]
+
+ tmp_dirs = [ 'tmp/sessions',
+ 'tmp/cache',
+ 'tmp/sockets',
+ 'tmp/pids',
+ 'tmp/cache/assets/development',
+ 'tmp/cache/assets/test',
+ 'tmp/cache/assets/production' ]
+
+ tmp_dirs.each { |d| directory d }
+
+ desc "Creates tmp directories for sessions, cache, sockets, and pids"
+ task create: tmp_dirs
+
+ namespace :sessions do
+ # desc "Clears all files in tmp/sessions"
+ task :clear do
+ FileUtils.rm(Dir['tmp/sessions/[^.]*'])
+ end
+ end
+
+ namespace :cache do
+ # desc "Clears all files and directories in tmp/cache"
+ task :clear do
+ FileUtils.rm_rf(Dir['tmp/cache/[^.]*'])
+ end
+ end
+
+ namespace :sockets do
+ # desc "Clears all files in tmp/sockets"
+ task :clear do
+ FileUtils.rm(Dir['tmp/sockets/[^.]*'])
+ end
+ end
+
+ namespace :pids do
+ # desc "Clears all files in tmp/pids"
+ task :clear do
+ FileUtils.rm(Dir['tmp/pids/[^.]*'])
+ end
+ end
+end