😰

embulk gem (v0.9.x)でプラグインが見つからない、あるはずなのに..そんな時は

2023/07/05に公開

embulk gemコマンドが動かない。

2023年6月5日に次のような投稿がありました。(Twitter仕様変更でツイートを埋め込んでもアカウントを持っていない人は参照できないようなので画像を貼り付けます。)

embulk gem コマンドでプラグインや依存gemがインストールできなくなった。

gem install jruby-openssl:0.10.7

================================== [ NOTICE ] ==================================
 Embulk v0.11.0 will be released soon, planned for June 2023.

 This v0.11.0 will contain a lot of incompatible changes from v0.9.
 Many plugins are expected to stop working with v0.11.0.

 Try v0.10.48 or later, Release Candidate for v0.11, before v0.11.0 is official.

 See: https://www.embulk.org/articles/2023/04/13/embulk-v0.11-is-coming-soon.html
================================================================================

2023-07-05 21:37:14.919 +0900: Embulk v0.9.25

Gem plugin path is: /home/user/.embulk/lib/gems

ERROR:  Could not find a valid gem 'jruby-openssl' (= 0.10.7) in any repository
ERROR:  Possible alternatives: JRuby-OpenSSL

原因

詳細は調査中ですが、rubygemsが一部のAPIの利用を停止したためと思われます。簡単にいうとembulkで使っているgem コマンドが古いため、RubyGemsのAPI削除の影響を受けたということになります。(だと思います。)

対応方法

案1 v0.11を使い新しいJRubyを使う(JRuby-9.3.0.0以降なら確実)

新しい安定版である、Embulk v0.11.0がリリースされております。詳細はこちらを参照ください。
Embulk v0.11 がまもなく出ます embulk v0.11.0はリリース済みです。v0.11.0で何かお困りのことがあればぜひ教えてください。(JRuby 9.2.X.Xでも大丈夫かもしれませんが未確認です。)

案2 v0.9を引き続き使いたい場合

ディレクトリを作って次のようなGemfileを用意して、embulk bundle コマンドで関連gemを入れてください。

source 'https://rubygems.org'

gem "jwt", "= 2.3.0"
gem "public_suffix", "= 4.0.7"
gem "multipart-post", "= 2.1.1"
gem "jruby-openssl", "= 0.10.7"
gem "embulk-output-bigquery", "= 0.6.9"
embulk bundle

================================== [ NOTICE ] ==================================
 Embulk v0.11.0 will be released soon, planned for June 2023.

 This v0.11.0 will contain a lot of incompatible changes from v0.9.
 Many plugins are expected to stop working with v0.11.0.

 Try v0.10.48 or later, Release Candidate for v0.11, before v0.11.0 is official.

 See: https://www.embulk.org/articles/2023/04/13/embulk-v0.11-is-coming-soon.html
================================================================================

2023-07-05 21:53:54.012 +0900: Embulk v0.9.25
Fetching gem metadata from https://rubygems.org/......
Fetching public_suffix 4.0.7
Installing public_suffix 4.0.7
Fetching addressable 2.8.4
Installing addressable 2.8.4
Using bundler 1.16.0
...

参考

@fagai さんありがとうございました。

Discussion