Sha256: be8a41ad7dd322e1706ef227e2364fad56823ea33325ab8840f7200ef77776c5

Contents?: true

Size: 1.27 KB

Versions: 16

Compression:

Stored size: 1.27 KB

Contents

# When upgrading jets, automatically rm -rf /tmp/jets/project in case the structure has changed.
class Jets::Builders
  class Purger
    def initialize
      @project_name = Jets.config.project_name
      @version_file = "/tmp/jets/#{@project_name}/jets_version.txt"
    end

    def purge
      if version_changed?
        last_version = @last_version || "unknown"
        puts "The jets version has changed enough since the last build to merit freshing the build cache."
        puts "Current jets version: #{Jets::VERSION} Last built jets version: #{last_version}"
        puts "Removing /tmp/jets/#{@project_name} to start fresh."
        FileUtils.rm_rf("/tmp/jets/#{@project_name}")
      end
      write_version
    end

    # When jets changes versions major or minor version consider it a big enough can to purge the cache
    def version_changed?
      return true unless File.exist?(@version_file)

      @last_version = IO.read(@version_file).strip
      last_major, last_minor, _ = @last_version.split('.')
      current_major, current_minor, _ = Jets::VERSION.split('.')
      last_major != current_major || last_minor != current_minor
    end

    def write_version
      FileUtils.mkdir_p(File.dirname(@version_file))
      IO.write(@version_file, Jets::VERSION)
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
jets-1.4.5 lib/jets/builders/purger.rb
jets-1.4.4 lib/jets/builders/purger.rb
jets-1.4.3 lib/jets/builders/purger.rb
jets-1.4.2 lib/jets/builders/purger.rb
jets-1.4.1 lib/jets/builders/purger.rb
jets-1.4.0 lib/jets/builders/purger.rb
jets-1.3.9 lib/jets/builders/purger.rb
jets-1.3.8 lib/jets/builders/purger.rb
jets-1.3.7 lib/jets/builders/purger.rb
jets-1.3.6 lib/jets/builders/purger.rb
jets-1.3.5 lib/jets/builders/purger.rb
jets-1.3.4 lib/jets/builders/purger.rb
jets-1.3.3 lib/jets/builders/purger.rb
jets-1.3.2 lib/jets/builders/purger.rb
jets-1.3.1 lib/jets/builders/purger.rb
jets-1.3.0 lib/jets/builders/purger.rb