- ls コマンドに -json オプションを追加
- -json オプションを指定するとオブジェクトの一覧をJSON形式で表示します。
- 進行中のマルチパートアップロードを管理するコマンド uploads を追加
- uploads コマンドは一覧を表示する uploads ls とマルチパートアップロードを削除(Abort uploads)する uploads rm サブコマンドが利用できます。
- マルチパートアップロードの再開に使用する put コマンドの -upload-id オプションを追加
- マルチパートアップロードを使用したファイルのアップロードが途中で失敗した場合に -upload-id オプションにマルチパートアップロードのアップロードIDを指定することでマルチパートアップロードを再開させることができます。
- 失敗したマルチパートアップロードを自動削除する [storage] abortOnFailure オプションを追加 (default: true)
- 設定ファイルの [storage] セクションに abortOnFailure オプションを追加しました。このオプションに true を指定した場合は、マルチパートアップロードの失敗時に自動的にそのマルチパートアップロードを削除します。
- 上記のマルチパートアップロードを再開を使用する場合は false を指定してください。
HTTPのPOSTメソッドと一部のPUTメソッドのリクエスト処理を修正し、dagtools で発行される全てのリクエストでリトライ処理が実行されるように修正しました。 リトライ処理は以下のいずれかの条件を満たした場合に実行されます。
- REST APIエンドポイントの接続に失敗した場合
- REST APIエンドポイントの名前解決(IPアドレスの取得)に失敗した場合
- REST APIからのHTTPレスポンスのステータスコードが400以上の場合 (404 Not Foundは除く)
- ディレクトリ名を指定した時に末尾のスラッシュ(/)が補完されない問題を修正しました。
- リトライ機能を追加しました。
- HTTP/HTTPS リクエストに失敗した場合、指定回数の範囲で成功するまでリクエストを再実行します。
- [storage] retry オプションでリトライ回数(デフォルト: 2)を、[storage] retryInterval オプションでリトライの間隔(ミリ秒、デフォルト: 3000 = 3秒)を指定することができます。
- GET Bucket, List Objects 操作において、一定サイズを超えるレスポンスボディを受けた際に動作しない問題を修正しました。
- 大量のファイル操作を行なった時にエラー("no such host")が発生する問題を修正しました。
- スラッシュ(/)から始まるオブジェクトキーの表示(ls)および削除(rm)をできるように修正しました。
- オブジェクトキーに特殊文字("#"や"?"など)を含むオブジェクトの操作に失敗する問題を修正しました。
- 特定の条件においてマルチパートアップロードが停止する問題を修正しました。
- 標準入力からファイルをアップロードする時に一時ファイルの作成を制御し、 ローカルディスクの一時的な使用容量を削減するように修正しました。
- CentOS 5.X の環境において、標準入力からのファイルアップロードが動作しない問題を修正しました。
- 標準入力に空文字列(0 byte)を指定した時にエラーが発生する問題を修正しました。
- 空文字列(0 byte)の標準入力は無視されます。
- バケットまたはオブジェクトの存在を確認する exist コマンドを追加
- ls コマンドにオブジェクトの ETag を表示する -etag オプション を追加
- get コマンドにディレクトリを指定して一括で取得する -r オプションを追加
- ストレージの使用容量を取得する space コマンドを追加
- ストレージに対する日毎のネットワーク通信料を取得する traffic コマンドを追加
- ls コマンドにTSV形式の出力機能( -tsv オプション)を追加
- ls コマンドにおけるオブジェクトのサイズ表示をバイト単位に変更
- -h オプションを追加することで人間が読みやすい形式(Human-Readable)で表示します
- syncコマンドでローカルからDAGストレージへの同期を実行した時に、ファイルの更新日時もチェックするように修正
- ログの可読性の向上とデバッグモード時のログの出力内容を詳細化
- concurrency オプションを高い値に設定した時にプログラムが終了しない問題を修正
- 特定の条件でディレクトリの削除ができない問題を修正
- e.g., mybucket:test/aaa, mybucket:test2/bbb が存在する時に dagtools rm -r mybucket:test を実行
- SSL証明書エラーを無視するオプション([storage] insecureSkipVerify)を追加
- syncコマンドでローカルからDAGストレージへの同期を実行した時に、ファイルの更新日時もチェックするように修正
- ログの可読性の向上とデバッグモード時のログの出力内容を詳細化
- concurrency オプションを高い値に設定した時にプログラムが終了しない問題を修正
- 特定の条件でディレクトリの削除ができない問題を修正
- e.g., mybucket:test/aaa, mybucket:test2/bbb が存在する時に dagtools rm -r mybucket:test を実行
- concurrency オプション([dagtools] concurrency)を追加
- マルチパートアップロードの際に指定された並列度でパートのアップロードを行います
- マルチパートアップロードのパートのアップロードでエラーが発生した際に、再試行(最大3回)するように変更
- DAGストレージのAPIを呼び出す際に、HTTPリクエストヘッダの User-Agent に dagtools のバージョンを追加
- sync コマンドでカレントディレクトリを指定した時の挙動を修正
- put コマンドでカレントディレクトリを指定した時の挙動を修正
- バケットポリシーの操作を行う policy コマンドを追加
- マルチパートアップロードのパートサイズを指定する [storage] multipartChunkSize オプションを追加
- ls コマンドで、末尾がスラッシュ(/)のオブジェクトを表示するように改善
- いくつかのコマンドでエラー発生時に終了コード 0 を返している箇所を修正
- エラー発生時は終了コード 1 を返します
- 初期リリース