Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
class AddProject #Defines Path to Save Configuration Files writepath = "/etc/apache2/projects/" #Defines Authorization File authfile = "/etc/apache2/authfile" #Defines Base SVN Path basesvn = "/var/svn/" #Defines Base Trac Path basetrac = "/var/lib/trac/" print "Project Name " while projectname = STDIN.gets projectname.chop! break end print "Project Directory Name " while projectshortname = STDIN.gets projectshortname.chop! break end puts "" puts "" puts "Project Name = " + projectname puts "Project Short Name = " + projectshortname puts "SVN Path = " + basesvn + projectshortname puts "Trac Path = " + basetrac + projectshortname puts "" print "Write File #{writepath}#{projectshortname}.conf? " while answer = STDIN.gets answer.chop! if answer == "y" or answer == "Y" puts "WRITING FILES ;)" myfile = File.new(writepath + projectshortname + ".conf", "w") myfile.puts "<Location /svn/#{projectshortname}>" myfile.puts " SSLRequireSSL" myfile.puts " AuthType Basic" myfile.puts " AuthName \"#{projectname} Subversion Repository\"" myfile.puts " AuthUserFile #{authfile}" myfile.puts " Require valid-user" myfile.puts " DAV svn" myfile.puts " SVNPath #{basesvn}#{projectshortname}" myfile.puts "</Location>" myfile.puts "" myfile.puts "ScriptAlias /#{projectshortname} /var/www/localhost/cgi-bin/trac.fcgi" myfile.puts "<Location /#{projectshortname}>" myfile.puts " SSLRequireSSL" myfile.puts " AuthType Basic" myfile.puts " AuthName \"#{projectname} Trac\"" myfile.puts " AuthUserFile #{authfile}" myfile.puts " Require valid-user" myfile.puts " SetEnv TRAC_ENV \"#{basetrac}#{projectshortname}\"" myfile.puts "</Location>" myfile.close puts "Creating Subversion Repository" system("svnadmin create #{basesvn}#{projectshortname}") puts "Apache should own it!" system("chown -R apache #{basesvn}#{projectshortname}") system("chgrp -R apache #{basesvn}#{projectshortname}") puts "Trac Env Init, set svn path to /var/svn/#{projectshortname}" system("trac-admin #{basetrac}#{projectshortname} initenv") puts "Set Apache as Owner/Group" system("chown -R apache #{basetrac}#{projectshortname}") system("chgrp -R apache #{basetrac}#{projectshortname}") break else puts "ABORTING" break end end end
This paste will be private.
From the Design Piracy series on my blog: