Sha256: 17e1853abe263a8abd43cc97845ff91558ca2b4657eb0def5232f8c821e6886f

Contents?: true

Size: 857 Bytes

Versions: 8

Compression:

Stored size: 857 Bytes

Contents

# encoding: utf-8

usage   'sync'
summary 'sync data sources'
description <<-EOS
Sync data source data. This command is useful for updating local item caches
for data sources which rely on slow external APIs.
EOS

module Nanoc::CLI::Commands

  class Sync < ::Nanoc::CLI::CommandRunner

    def run
      # Check arguments
      if arguments.size != 0
        raise Nanoc::Errors::GenericTrivial, "usage: #{command.usage}"
      end

      # Make sure we are in a nanoc site directory
      require_site

      # Update all syncable data sources
      site.data_sources.each do |data_source|
        unless data_source.method(:sync).owner == Nanoc::DataSource
          puts "Syncing #{data_source.config[:type]} data source: #{data_source.items_root}"
          data_source.sync
        end
      end
    end

  end

end

runner Nanoc::CLI::Commands::Sync

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
nanoc-3.7.3 lib/nanoc/cli/commands/sync.rb
nanoc-3.7.2 lib/nanoc/cli/commands/sync.rb
nanoc-3.7.1 lib/nanoc/cli/commands/sync.rb
nanoc-3.7.0 lib/nanoc/cli/commands/sync.rb
nanoc-3.6.11 lib/nanoc/cli/commands/sync.rb
nanoc-3.6.10 lib/nanoc/cli/commands/sync.rb
nanoc-3.6.9 lib/nanoc/cli/commands/sync.rb
nanoc-3.6.8 lib/nanoc/cli/commands/sync.rb