module Paperclip::GoogleDrive::Rake
Public Instance Methods
authorize(client_secret_path, application_name)
click to toggle source
Ensure valid credentials, either by restoring from the saved credentials files or intitiating an OAuth2 authorization. If authorization is required, the user's default browser will be launched to approve the request.
@param client_secret_path [ String ] with the location of the JSON file downloaded from Google console @param application_name [ String ] given in the Google console > credentials > OAuth 2.0 client IDs section @return [Google::Auth::UserRefreshCredentials] OAuth2 credentials
# File lib/paperclip/google_drive/rake.rb, line 17 def authorize(client_secret_path, application_name) client = Paperclip::GoogleDrive::Session.from_config(client_secret_path, application_name: application_name) # # List the 10 most recently modified files. # response = client.list_files(page_size: 10, fields: 'nextPageToken, files(id, name)') # puts 'Files:' # puts 'No files found' if response.files.empty? # response.files.each do |file| # puts "#{file.name} (#{file.id})" # end if client puts "\nAuthorization completed.\n\n" puts "The credentials were saved into #{ client_secret_path}.\n" puts "You can use these credentials as follows: \n" puts "Paperclip::GoogleDrive::Session.from_config(#{client_secret_path}, application_name: #{application_name})" puts "\n" else raise 'There where something wrong in the initialization of the google client (Google::Apis::DriveV3::DriveService)' end end