Sha256: 712a3e751ea0655dfd9a97a09b397fe45f63d05b5954c616f2495666c250e994
Contents?: true
Size: 730 Bytes
Versions: 3
Compression:
Stored size: 730 Bytes
Contents
module Workarea class BuildReleaseUndoChangesets include Sidekiq::Worker def perform(undo_release_id, release_id) release = Release.find(release_id) undo_release = Release.find(undo_release_id) existing_changesets = undo_release.changesets.to_a matching_changeset = ->(changeset, existing_changesets) do existing_changesets.any? do |cs| changeset.releasable_type == cs.releasable_type && changeset.releasable_id == cs.releasable_id end end release.changesets.each_by(500) do |changeset| next if matching_changeset.call(changeset, existing_changesets) changeset.build_undo(release: undo_release).save! end end end end
Version data entries
3 entries across 3 versions & 1 rubygems