Module: Datapimp::DataSync

Defined in:
lib/datapimp/cli/support/data_sync.rb

Class Method Summary collapse

Class Method Details

.sync_google_spreadsheet(options, *args) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/datapimp/cli/support/data_sync.rb', line 2

def self.sync_google_spreadsheet(options, *args)
  require 'google_drive' unless defined?(::GoogleDrive)

  raise 'Must setup google client' unless Datapimp::Sync.google.spreadsheets

  key = args.shift
  name = args.shift || "Spreadsheet"

  raise 'Must supply a spreadsheet key' unless key

  spreadsheet = Datapimp::Sources::GoogleSpreadsheet.new(name, key: key)

  if options.output
    Pathname(options.output).open("w+") do |fh|
      fh.write(spreadsheet.to_s)
    end
  else
    puts spreadsheet.to_s
  end
end