blog

Middleman 4 の新機能を試す シリーズWercker の step-s3sync で起こった 「Parameter problem: Invalid source/destination」エラーの直し方(小ネタ)

    • Ryuichi Nonaka

    はじめに

    Wercker の step-s3sync を使っていて突然 Sync できないと思ったら step-s3sync のところでエラーが出ていた。

    /pipeline/.../s3cmd sync --encoding=utf-8 --delete-removed --verbose ./ whiskers.nukos.kitchen
    ERROR: Parameter problem: Invalid source/destination: './' 'whiskers.nukos.kitchen'
    

    どうやら s3cmd sync で S3 のバケット指定が上手くいっていないらしい。実際の指定はこれ。

    - s3sync:
      key_id: $AWS_ACCESS_KEY_ID
      key_secret: $AWS_SECRET_ACCESS_KEY
      bucket_url: $AWS_BUCKET_URL
      source_dir: build/
      delete-removed: true
      opts: --encoding=utf-8
    

    $AWS_BUCKET_URL には s3://whiskers.nukos.kitchen が入っているのになぜか whiskers.nukos.kitchen になってしまっている。

    修正方法

    以前、バケット URL をはじめて設定したときに whiskers.nukos.kitchen で設定したことがあったのを思い出して、キャッシュかなにかが残っている可能性があったので Wercker のキャッシュを削除してみたところ無事に動くことを確認できた。

    その他に試したこと

    step-s3sync の設定で明示的に delete-removed: true を指定していたが、これを削除した。step-s3sync のオプションでは明示的に指定しない場合、デフォルトでは true になっているし不要な設定だった。

    もう一つ --acl-public オプションを追加した。

    - s3sync:
      key_id: $AWS_ACCESS_KEY_ID
      key_secret: $AWS_SECRET_ACCESS_KEY
      bucket_url: $AWS_BUCKET_URL
      source_dir: build/
      opts: --encoding=utf-8 --acl-public
    

    このオプションを追加したことによって、何らかの理由でキャッシュがクリアされ正常に動作するようになったが再発したので根本的な解決案ではない。

    シリーズ

    1. Middleman 4 をインストールしてみる
    2. Middleman 4 で middleman-blog をインストールしてみる
    3. Browserify を試してみる
    4. Gulp から Browserify を実行する
    5. Watchify を使った Browserify の 変更監視と自動バンドル
    6. Gulp から Watchify と Browserify を使う
    7. Middleman 4 の External Pipeline(外部パイプライン)を試す
    8. Middleman 4 の External Pipeline を活用した Sass のプリコンパイルと Browserify のバンドル
    9. Middleman 4 で middleman-syntax を使った Syntax Highlight(小ネタ)
    10. gulp-sass で Font Awesome を導入する方法(Bourbon, Neat 対応)
    11. Middleman 4 の External Pipeline に対応した Skeleten(テンプレート)「middleman-tail」 を作った
    12. Wercker の step-s3sync で起こった 「Parameter problem: Invalid source/destination」エラーの直し方(小ネタ)

    コメント・フィードバック