2

実行中のプロジェクトのフォルダー構造は次のとおりserverless-plugin-typescriptです。

<root>
  - services
    - common
    - sample-service

sample-serviceserverless.yml とすべてのエンドポイントを格納します。commonいくつかのエンティティ/サービス/ユーティリティ/などをホストします。からファイルをインポートしてからオフラインまたはパッケージ コマンドを実行commonするsample-serviceと、出力フォルダー構造が次のように変更されます (これが必要です)。

<build root>
  - endpoints
    - ...files

これに(これは私が望んでいないことです):

<build root>
  - common
    - ...files
  - sample-service
    - endpoints
      - ...files

API エンドポイントにアクセスしようとすると、ハンドラー ファイルが見つからないというエラーが表示されます (sample-service/endpointsルートendpointsディレクトリではなくディレクトリにあるため)。この場合、 param をserverless-offline渡してフォルダーを指定することで、これを回避できます。しかし、これを AWS にデプロイすると、本来よりも深いフォルダであるため、エンドポイントが見つからないという同じ問題が発生します。--locationsample-service

Typescript プロジェクト参照を使用してみましたが、うまくいきませんでした。も使用してみserverless-webpackましたが、残念ながらかなり大きなメモリ リークが発生しているため、別のビルド システムを試すことにしました。

Typescript またはサーバーレス プラグインのいずれかの構成を変更して、探しているビルド構造 (最初のもの) を模倣する方法についての洞察はありますか? それとも、プロジェクト参照を正しい方法で実装しなかったのでしょうか?

4

0 に答える 0