dundo.farm/tasks/application.rake

33 lines
893 B
Ruby

desc 'Run the DundoFarms site'
task :s do
system 'rackup -p 8978'
end
namespace :ig do
desc 'update ig media cache'
task :media_sync do
client = InstagramBasicDisplayAPI.client(access_token: ENV['DUNDO_FARMS_IG_TOKEN'])
media = client.user_recent_media[:data].reduce([]) do |media, media_item|
if media_item[:media_type] == 'CAROUSEL_ALBUM'
media.concat client.media_children(media_item[:id])[:data]
media
else
media.append media_item
end
end
media.each do |media_item|
IGMedia.update(
id: media_item[:id],
media_url: media_item[:media_url],
media_type: media_item[:media_type],
thumbnail_url: media_item[:thumbnail_url],
permalink: media_item[:permalink],
caption: media_item[:caption],
timestamp: DateTime.parse(media_item[:timestamp])
)
end
end
end