2016-11-25 7 views
0

だから少しの背景。 Amazon AWS S3でホストされ、CloudFrontを使用して配布されるWebサイト(js、jquery、less、node)があります。過去には、アプリケーション内のassetsフォルダに静的にリソースを格納していました(S3)。AWS:Webサイトの新しいインスタンスがデプロイされた場合の静的S3ファイルの処理

最近、Kinesisイベントをリッスンし、S3のassetsフォルダに保存されているjsonファイルを生成するノードlambdaを設定しました。現在、同じキーを持つバケット内のファイルは上書きされ、サイトは生成されたファイルを使用して上書きされます。

私の質問は、私たちのウェブサイトの新しいインスタンスを展開すると、そのjsonファイルはどうなりますか?ローカル資産フォルダからjsonファイルを削除しても、新しいプロジェクトがデプロイされたときにS3プロジェクトの資産ディレクトリ全体がデプロイメントによって上書きされた場合、jsonファイルが削除されますか?

ありがとうございます! 詳しい説明が必要な場合はお知らせください。

答えて

1

これはファイルの同期方法によって異なりますが、「sync」コマンドを使用して新しいファイルのみをアップロードし、リポジトリに存在しないファイルを削除するよう指定するS3に存在すると削除され、そうでない場合は削除されます。

たとえば、CLIコマンドのdocsを参照してください。http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html ...このように、--deleteを指定すると、ファイルが削除されます。

あなたのユースケースはよくわからないが、そのファイルを削除しますか?あなたはそれを望んでいないようです:)

+0

返信いただきありがとうございます。現在、サーバーレスのメタ同期を使用して環境変数を同期しています。他のすべては手動で管理され、プロジェクトに配備されています。 – androidtitan

+0

が見つかりましたので、あなたの質問に対する答えはNOです。手動で削除しない限り、ファイルは削除されません。これは、フォルダ構造を参照しても、S3はキー/値の格納場所なので(実際にはコンソールに「フォルダの作成」というボタンがあります)、フォルダ自体ではなく、キーの一部にすぎませんオブジェクト(ファイルになります)...だから、ディレクトリ全体をアップロードすると、キーに一致するオブジェクト(フォルダ構造+ファイル名)のみが置き換えられます。 –

関連する問題