class Contentful::Scheduler::Tasks::Publish
Public Class Methods
perform(space_id, entry_id, token)
click to toggle source
# File lib/contentful/scheduler/tasks/publish.rb, line 12 def self.perform(space_id, entry_id, token) logger = ::Contentful::Scheduler.config[:logger] access_token = ::Contentful::Scheduler.config[:spaces][space_id][:delivery_token] client = Contentful::Client.new( space: space_id, access_token: access_token ) clientManagement = ::Contentful::Management::Client.new( token, raise_errors: true, application_name: 'contentful.scheduler', application_version: Contentful::Scheduler::VERSION ) linked_entries = client.entries(links_to_entry: entry_id) if !linked_entries.raw["includes"].nil? && !linked_entries.raw["includes"]["Entry"].nil? linked_entries_ids = Taskshelper.extract_element_ids(linked_entries.raw["includes"]["Entry"]) logger.info("Linked enteries for entry_id ==>> #{entry_id} are ==>> #{linked_entries_ids}") linked_entries_ids.each do |id| logger.info"Publishing linked entry with id #{id}" clientManagement.entries.find(space_id, id).publish end end clientManagement.entries.find(space_id, entry_id).publish end