ファイルのアップロード

前提

"RescaleCLIのセットアップ方法" を実施済みであること

注釈

rescale.jar の保存先が /usr/local/bin/rescale.jar であることに注意してくださ

スクリプトのダウンロード

以下より rescalecli-upload をダウンロードしてください。

ダウンロードしたスクリプトに実行権限を付与します。

実行権限付与

chmod +x rescalecli-download

スクリプトの実行方法

対象とするジョブIDとダウロンドーロするファイル名を指定します。 複数ファイルも指定することができます。

アップロードファイルの決定

FILE_NAME='hoge1 hoge2'

スクリプトの実行

./rescalecli-upload ${FILE_NAME}

結果(返り値)

{
  "success": true,
  "startTime": 1491031738727,
  "endTime": 1491031744164,
  "files": [
    {
      "name": "hoge1",
      "storage": {
        "storageType": "S3Storage",
        "id": "pCTMk",
        "encryptionType": "default",
        "connectionSettings": {
          "region": "ap-northeast-1"
        }
      },
      "pathParts": {
        "path": "user/user_QbQWc/hoge1-839764b4-4f42-476b-9df3-2f35c7108670",
        "container": "jpprod-rescale-platform"
      },
      "isUploaded": true,
      "decryptedSize": 29,
      "encodedEncryptionKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "typeId": 1,
      "md5": "5827c7cb24d6d6f277b77e476a050cce",
      "id": "WAvaac"
    },
    {
      "name": "hoge2",
      "storage": {
        "storageType": "S3Storage",
        "id": "pCTMk",
        "encryptionType": "default",
        "connectionSettings": {
          "region": "ap-northeast-1"
        }
      },
      "pathParts": {
        "path": "user/user_QbQWc/hoge2-839764b4-4f42-476b-9df3-2f35c7108670",
        "container": "jpprod-rescale-platform"
      },
      "isUploaded": true,
      "decryptedSize": 29,
      "encodedEncryptionKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "typeId": 1,
      "md5": "3e1616467480589a8d461a375833cfde",
      "id": "xOBoPb"
    }
  ]
}

実践的なスクリプト実行例

ファイルアップロード後、ファイルIDを取得したい場合がよくあります。 上記JSONの黄色線がファイルIDに相当します。 もしアップロードと同時にこのIDを取得したい場合は下記のように実行します。 jqが必要です。

ファイルアップロードとそのFileIdの取得

JSON=$(./rescalecli-upload hoge1.txt hoge2.txt) && echo ${JSON} | jq -r .files[].id

結果(返り値)

WAvaac
xOBoPb

ソースコード例

ソースコード

#!/bin/sh 
 
declare -a files=($*)
 
# -e: To see an extended set of metadata, use the -e flag in the upload call: 
# --quiet: to suppress non-json output from the command. 
 
java -jar /usr/local/bin/rescale.jar \
-X https://platform.rescale.jp/ \
--quiet upload \
-p ${RESCALE_API_TOKEN} \
-f ${files[*]} \
-e

詳細情報

詳細情報は "File Transfer Manual " を参照してください