imagekit-developer/imagekit-ruby

Uploading Videos with `ActiveStorage`

Closed this issue · 5 comments

I am trying to upload a video to ImageKit using ActiveStorage I got this error ArgumentError: remote_file_url is required.
here is the Stack Trace

imagekitio (2.0.1) lib/imagekitio/api_service/file.rb in stream_file at line 129
imagekitio (2.0.1) lib/imagekitio/client.rb in stream_file at line 104
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in stream_file at line 182
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in block in download at line 84
activesupport (6.1.0) lib/active_support/notifications.rb in block in instrument at line 203
activesupport (6.1.0) lib/active_support/notifications/instrumenter.rb in instrument at line 24
activesupport (6.1.0) lib/active_support/notifications.rb in instrument at line 203
activestorage (6.1.0) lib/active_storage/service.rb in instrument at line 155
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in download at line 83
activestorage (6.1.0) lib/active_storage/downloader.rb in download at line 32
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in block in open at line 8
activestorage (6.1.0) lib/active_storage/downloader.rb in open_tempfile at line 24
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in open at line 7
imagekitio (2.0.1) lib/active_storage/service/image_kit_io_service.rb in open at line 139
activestorage (6.1.0) app/models/active_storage/blob.rb in open at line 268
activestorage (6.1.0) lib/active_storage/analyzer.rb in download_blob_to_tempfile at line 33
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in probe at line 107
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in streams at line 99
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in video_stream at line 95
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in tags at line 91
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in angle at line 52
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in rotated? at line 68
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in width at line 31
activestorage (6.1.0) lib/active_storage/analyzer/video_analyzer.rb in metadata at line 26
activestorage (6.1.0) app/models/active_storage/blob/analyzable.rb in extract_metadata_via_analyzer at line 51
activestorage (6.1.0) app/models/active_storage/blob/analyzable.rb in analyze at line 29
activestorage (6.1.0) app/jobs/active_storage/analyze_job.rb in perform at line 11
activejob (6.1.0) lib/active_job/execution.rb in block in perform_now at line 48
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 117
sentry-rails (4.5.0) lib/sentry/rails/active_job.rb in capture_and_reraise_with_sentry at line 28
sentry-rails (4.5.0) lib/sentry/rails/active_job.rb in block (3 levels) in included at line 12
sentry-ruby-core (4.5.0) lib/sentry/hub.rb in with_scope at line 56
sentry-ruby-core (4.5.0) lib/sentry-ruby.rb in with_scope at line 167
sentry-rails (4.5.0) lib/sentry/rails/active_job.rb in block (2 levels) in included at line 11
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
i18n (1.9.1) lib/i18n.rb in with_locale at line 328
activejob (6.1.0) lib/active_job/translation.rb in block (2 levels) in <module:Translation> at line 9
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
activesupport (6.1.0) lib/active_support/core_ext/time/zones.rb in use_zone at line 66
activejob (6.1.0) lib/active_job/timezones.rb in block (2 levels) in <module:Timezones> at line 9
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
activejob (6.1.0) lib/active_job/instrumentation.rb in block in instrument at line 21
activesupport (6.1.0) lib/active_support/notifications.rb in block in instrument at line 203
activesupport (6.1.0) lib/active_support/notifications/instrumenter.rb in instrument at line 24
activesupport (6.1.0) lib/active_support/notifications.rb in instrument at line 203
activejob (6.1.0) lib/active_job/instrumentation.rb in instrument at line 28
activejob (6.1.0) lib/active_job/instrumentation.rb in block (2 levels) in <module:Instrumentation> at line 14
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
activejob (6.1.0) lib/active_job/logging.rb in block in tag_logger at line 22
activesupport (6.1.0) lib/active_support/tagged_logging.rb in block in tagged at line 99
activesupport (6.1.0) lib/active_support/tagged_logging.rb in tagged at line 37
activesupport (6.1.0) lib/active_support/tagged_logging.rb in tagged at line 99
activejob (6.1.0) lib/active_job/logging.rb in tag_logger at line 22
activejob (6.1.0) lib/active_job/logging.rb in block (2 levels) in <module:Logging> at line 15
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in run_callbacks at line 137
activejob (6.1.0) lib/active_job/execution.rb in perform_now at line 47
activejob (6.1.0) lib/active_job/execution.rb in block in execute at line 25
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 117
activejob (6.1.0) lib/active_job/railtie.rb in block (4 levels) in <class:Railtie> at line 47
activesupport (6.1.0) lib/active_support/execution_wrapper.rb in wrap at line 88
activesupport (6.1.0) lib/active_support/reloader.rb in block in wrap at line 72
activesupport (6.1.0) lib/active_support/execution_wrapper.rb in wrap at line 84
activesupport (6.1.0) lib/active_support/reloader.rb in wrap at line 71
activejob (6.1.0) lib/active_job/railtie.rb in block (3 levels) in <class:Railtie> at line 46
activesupport (6.1.0) lib/active_support/callbacks.rb in instance_exec at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in block in run_callbacks at line 126
activesupport (6.1.0) lib/active_support/callbacks.rb in run_callbacks at line 137
activejob (6.1.0) lib/active_job/execution.rb in execute at line 23
activejob (6.1.0) lib/active_job/queue_adapters/sidekiq_adapter.rb in perform at line 42
sidekiq (6.2.1) lib/sidekiq/processor.rb in execute_job at line 196
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (2 levels) in process at line 164
sidekiq (6.2.1) lib/sidekiq/middleware/chain.rb in invoke at line 133
sidekiq (6.2.1) lib/sidekiq/processor.rb in block in process at line 163
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (6 levels) in dispatch at line 136
sidekiq (6.2.1) lib/sidekiq/job_retry.rb in local at line 112
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (5 levels) in dispatch at line 135
sidekiq (6.2.1) lib/sidekiq/rails.rb in block in call at line 14
activesupport (6.1.0) lib/active_support/execution_wrapper.rb in wrap at line 88
activesupport (6.1.0) lib/active_support/reloader.rb in block in wrap at line 72
activesupport (6.1.0) lib/active_support/execution_wrapper.rb in wrap at line 88
activesupport (6.1.0) lib/active_support/reloader.rb in wrap at line 71
sidekiq (6.2.1) lib/sidekiq/rails.rb in call at line 13
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (4 levels) in dispatch at line 131
sidekiq (6.2.1) lib/sidekiq/processor.rb in stats at line 257
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (3 levels) in dispatch at line 126
sidekiq (6.2.1) lib/sidekiq/job_logger.rb in call at line 13
sidekiq (6.2.1) lib/sidekiq/processor.rb in block (2 levels) in dispatch at line 125
sidekiq (6.2.1) lib/sidekiq/job_retry.rb in global at line 79
sidekiq (6.2.1) lib/sidekiq/processor.rb in block in dispatch at line 124
sidekiq (6.2.1) lib/sidekiq/logger.rb in with at line 11
sidekiq (6.2.1) lib/sidekiq/job_logger.rb in prepare at line 33
sidekiq (6.2.1) lib/sidekiq/processor.rb in dispatch at line 123
sidekiq (6.2.1) lib/sidekiq/processor.rb in process at line 162
sidekiq (6.2.1) lib/sidekiq/processor.rb in process_one at line 78
sidekiq (6.2.1) lib/sidekiq/processor.rb in run at line 68
sidekiq (6.2.1) lib/sidekiq/util.rb in watchdog at line 43
sidekiq (6.2.1) lib/sidekiq/util.rb in block in safe_thread at line 52

any Ideas?

Please share the code you are using for the same.

config/initializers/imagekitio.rb
ImageKitIo.configure do |config|
  if Rails.env.development?
    config.public_key = 'public_***'
    config.private_key = 'private_f/*****'
    config.url_endpoint = 'https://ik.imagekit.io/*****'
  end
  config.service = :active_storage
end

and added config.active_storage.service = :magekitio to my enviroments file

it works well with Images
but it failed with videos

@bishosilwal Please look into this.

Version 2.1.0 fix this.

it is solved, Thanks @imagekitio