Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Rake Task Management Essentials

You're reading from   Rake Task Management Essentials Deploy, test, and build software to solve real-world automation challenges using Rake.

Arrow left icon
Product type Paperback
Published in Apr 2014
Publisher
ISBN-13 9781783280773
Length 122 pages
Edition Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Andrey Koleshko Andrey Koleshko
Author Profile Icon Andrey Koleshko
Andrey Koleshko
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Rake Task Management Essentials
Credits
About the Author
Acknowledgements
About the Reviewers
www.PacktPub.com
Preface
1. The Software Task Management Tool – Rake FREE CHAPTER 2. Working with Files 3. Working with Rules 4. Cleaning Up a Build 5. Running Tasks in Parallel 6. Debugging Rake Tasks 7. Integration with Rails 8. Testing Rake Tasks 9. Continuous Integration 10. Relentless Automation Index

Understanding the duplication of the file tasks


In the previous chapter, we successfully created the blog builder. Let's revise the Rakefile that we've written to do it:

require_relative 'blog_generator'

articles = Rake::FileList.new('**/*.md',
                 '**/*.markdown') do |files|
             files.exclude('~*')
             files.exclude(/^temp.+\//)
             files.exclude do |file|
               File.zero?(file)
             end
           end

task :default => 'blog.html'

articles.ext.each do |article|
  file "#{article}.html" => "#{article}.md" do
    sh "pandoc -s #{article}.md -o #{article}.html"
  end

  file "#{article}.html" => "#{article}.markdown" do
    sh "pandoc -s #{article}.markdown -o #{article}.html"
  end
end

FileUtils.rm('blog.html', force: true)

file 'blog.html' => articles.ext('.html') do |t|
  BlogGenerator.new(t).perform
end

The following problems arise with the highlighted chunk of code:

  • First of all, it contains the duplication of the...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image