Docs Menu
Docs Home
/
Atlas
/ / /

外部依存関係

外部依存関係は、自分で実装できない、または実装したくないコードを含むライブラリです。 たとえば、外部サービスには公式のライブラリを使用したり、データ構造やアルゴリズムのカスタム実装を使用したりできます。

Atlas は依存関係を自動的に変換し、ほとんどの組み込みNode.jsモジュールもサポートします。

注意

独自のモジュールを作成

ほとんどの npm モジュールはサードパーティによって記述されていますが、アプリケーション固有のロジックを格納するために、独自の npm モジュールを作成して公開することもできます。 モジュールを Node.js Community で使用できるようにしたり、プライベート使用のために予約したりすることもできます。 詳細については、 のレジストリへのパッケージの貢献 に関する npm のガイドをご覧ください。

外部依存関係をインポートして使用するには、まずアプリケーションに依存関係を追加する必要があります。 名前を使用してパッケージを追加するか、依存関係のディレクトリをアップロードできます。

重要

既存の依存関係の上書き

アプリが使用できる外部パッケージを指定するには、一度に 1 つの方法のみを使用できます。 依存関係を指定するために使用した最新の方法は真実のソースであり、以前の指定を上書きします。

たとえば、UI を介して名前を追加したパッケージは、アップロードされた依存関係ディレクトリにあるパッケージを含め、以前に追加した同じパッケージのコピーを上書きします。

npm レジストリ からパッケージを追加できます アプリの名前を使用して特定のバージョンを追加するか、最新バージョンを使用できます。

1
  1. Triggersページに移動する

    警告

    ナビゲーションの改善が進行中

    現在、新しく改良されたナビゲーション エクスペリエンスを導入中です。次の手順が Atlas UI の表示と一致しない場合は、プレビュー ドキュメントを参照してください。

    1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

    2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

    3. サイドバーで、 Services見出しの下のTriggersをクリックします。

      Triggersページが表示されます。

  2. 依存関係を追加する trigger を選択します。

  3. Edit Trigger ページで、Function セクションにGoし、Add Dependency をクリックします。

2
  1. Add Dependencyモーダルウィンドウに、次の情報を含めます。

    フィールド
    説明

    パッケージ名を定義する

    npm パッケージの名前。

    パッケージ バージョン

    任意。 使用する依存関係の特定のバージョン。 デフォルトでは 、Atlas 関数は利用可能な最新バージョンを使用します。

  2. パッケージを追加するには、 Addをクリックします。

依存関係を追加する状況は、ウィンドウの下部にある進行状況追跡で追跡できます。 進行状況追跡は、パッケージが成功したか失敗したかを示すメッセージを提供します。 失敗メッセージには、パッケージを追加できなかった理由に関する追加情報が含まれています。

3

依存関係を正常に追加すると、メインのTriggersページのDependenciesタブの依存関係のリストに表示されます。

圧縮された node_modulesディレクトリのパッケージをアプリにアップロードできます。 圧縮された依存関係ディレクトリは 15 MB を超えることはできません。

重要

既存の依存関係の上書き

アーカイブをインポートすると、既存の依存関係がすべて削除されます。

1

外部依存関係をアップロードするには、まず少なくとも 1 つの Node.js パッケージを含むローカルnode_modulesフォルダーが必要です。 次のコード スニペットを使用して、アップロードする依存関係をローカルにインストールできます。

npm install <package name>

node_modulesフォルダがまだ存在しない場合、このコマンドはそれを自動的に作成します。

注意

インストールの代替方法

また、 package.jsonを構成し、 npm installコマンドを実行して、 package.jsonにリストされているすべてのパッケージ(およびその依存関係)をインストールすることもできます。

npm とnode_modules の詳細については、 npm ドキュメント を参照してください 。

2

すべてのnpmモジュールをダウンロードしたので、Atlas にアップロードできるように、アーカイブにパッケージ化する必要があります。 Atlas は、 .tar.tar.gz.tgz.zipアーカイブ形式をサポートしています。

node_modulesフォルダーを含むアーカイブを作成します。

tar -czf node_modules.tar.gz node_modules/
3

依存関係を含むアーカイブを作成したら、Atlas UIを使用して依存関係アーカイブをアップロードできます。

  1. Triggersページに移動します

    警告

    ナビゲーションの改善が進行中

    現在、新しく改良されたナビゲーション エクスペリエンスを導入中です。次の手順が Atlas UI の表示と一致しない場合は、プレビュー ドキュメントを参照してください。

    1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

    2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

    3. サイドバーで、 Services見出しの下のTriggersをクリックします。

      Triggersページが表示されます。

  2. Dependencies タブを選択します。

  3. [Upload Folder] をクリックします。

  4. [] モーダルで、[ node_modules.tar.gz Upload Folder ] をクリックし、作成した [] アーカイブを選択します。

  5. [ Addをクリックします。 Atlas は アーカイブファイルをアップロードします。これには、インターネット接続の速度と依存関係アーカイブのサイズによっては、数分かかる場合があります。

  6. Atlas は、操作の成功または失敗を示すバナーを表示します。 成功した場合、 Dependenciesタブには依存関係アーカイブに含めた依存関係のリストが表示されます。

    • 配置案が有効になっている場合は、これらの変更を適用するためにReview & Deployもクリックする必要があります。

    • 配置案が無効になっている場合、依存関係アーカイブのサイズに応じて、 5から60秒以内に変更が有効になります。

アプリに追加した組み込みモジュールと外部パッケージをインポートし、関数で使用できます。 パッケージをインポートするには、関数本体内からパッケージ名を指定してrequire()を呼び出します。

重要

モジュールをインポートするには

Node.jsプロジェクトは通常、各ファイルのグローバル スコープにrequire()呼び出しを配置しますが、Atlas はこのパターンをサポートしていません。 関数のスコープ内でrequire()呼び出しを配置する必要があります。

exports = () => {
const R = require("ramda");
return R.map(x => x*2, [1,2,3]);
}
exports = function(arg){
const cloneDeep = require("lodash/cloneDeep");
var original = { name: "Deep" };
var copy = cloneDeep(original);
copy.name = "John";
console.log(`original: ${original.name}`);
console.log(`copy: ${copy.name}`);
return (original != copy);
};

戻る

Global Modules

項目一覧