Nexus は RestApi を提供していますが、一部の API はまだ Groovy と組み合わせて動作させる必要があります。バージョン 3.3 以降では機能強化されていますが、通常の RestApi と比較すると、まだいくつかの「使用上の特徴」があります。この記事では、raw リポジトリの作成を例に、関連する使用方法を確認します。 前提条件 動作するNexusを準備します。バージョン3.2.1はこちらです。 APIメカニズム この記事では、Nexus 3 が最初にリリースされたときの API の設計思想を紹介します。主に Groovy スクリプトを使用して関連機能を完成させます。つまり、ユーザーは Groovy スクリプトを自分で用意する必要があり、Nexus はスクリプトをアップロードして実行するためのインターフェイスを提供します。少し大まかですが、ほとんどの機能はユーザーが使用できるように残されています。強力な Groovy スクリプトにどのような機能を実装する必要があるかは、ユーザー自身のニーズによって異なります。ある程度、APIを作成できるAPIです 使い方 ステップ1: jsonファイルをキャリアとして使用して実行可能なGroovyスクリプトを作成する 形式はおおよそ次のようになります。 { "name": "スクリプト名", "タイプ": "グルーヴィー", "content": "Groovy ステートメント" } 注記:
ステップ2: jsonファイルをアップロードする Groovy操作を含む対応するJSONファイルをアップロードするには、次のメソッドとインターフェースを使用します。
ステップ3: Groovyファイルを実行する 次のインターフェースを使用して、手順 2 でアップロードした Groovy スクリプトを実行します。
スクリプト名も実行インターフェースの一部となるため、名前の付け方が非常に重要になることに注意してください。 使用例 ここでは上記の方法を使用して、Nexus で Raw タイプのリポジトリを作成する方法を説明します。 ステップ1: jsonファイルをキャリアとして使用して実行可能なGroovyスクリプトを作成する リポジトリ作成時に BLOB を指定する必要があるため、指定しない場合はデフォルトが使用されます。ただし、プロジェクト数が多い場合は、デフォルトは非常に大きくなります。前回の Nexus の使い方の紹介では、リポジトリごとに独自の BLOB を作成することも説明しましたので、ここでは次の json ファイルを作成します。 liumiaocn:~ liumiao$ cat rawrepotest1.json { "名前": "rawrepotest1", "タイプ": "グルーヴィー", "content": "def rawStore = blobStore.createFileBlobStore('rawrepotest1', 'raw'); repository.createRawHosted('rawrepotest1', rawStore.name);" } liumiao:~ liumiao$ を 提案: この Nexus の使用方法は完全な方法ではないため、BLOB とリポジトリの関係がより明確になるように、rawrepotest1 と同じように使用することをお勧めします。これは、無視できるサイズの json ファイルをさらにいくつかアップロードするだけです。 ステップ2: jsonファイルをアップロードする liumiaocn:~ liumiao$ curl -X POST -u admin:admin123 --header "Content-Type: application/json" http://localhost:32004/service/siesta/rest/v1/script -d @rawrepotest1.json liumiao:~ liumiao$ を ステップ3: Groovyファイルを実行する liumiaocn:~ liumiao$ curl -X POST -u admin:admin123 --header "Content-Type: text/plain" http://localhost:32004/service/siesta/rest/v1/script/rawrepotest1/run { "名前" : "rawrepotest1", "結果" : "RepositoryImpl$$EnhancerByGuice$$13e8178d{type=hosted、format=raw、name='rawrepotest1'}" }liumiao:~ liumiao$ 結果確認 ブロブの確認 対応する BLOB が生成されました: rawrepotest1 リポジトリの確認 対応する生のリポジトリが生成されました: rawrepotest1 まとめ Nexus と groovy を組み合わせることで API 統合を実現できますが、この方法はまだ多くの不変条件が使用されています。複数回実行中にエラーが発生するかどうかは、groovy スクリプトで確認する問題になっています。関連機能が強化されるかどうかは、Nexus の今後のバージョンのサポートに依存する可能性があります。groovy との組み合わせが機能移行期間中に対応する方法になるかどうかは、さらに観察する必要があります。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
<<: Centos6.9 インストール Mysql5.7.18 ステップ記録
>>: Vue2.x プロジェクトのパフォーマンス最適化のためのコード最適化の実装
この記事では、例を使用して、MySQL イベントの変更 (ALTER EVENT)、イベントの無効化...
HTML POST リクエストで a タグを使用する 2 つの例を次に示します。 1. ajaxを使...
<br />しばらくの間、多くの人が XHTML の使い方を知らないことに気付きました。...
目次1. Antデザインビュー1. 公式ウェブサイトアドレス2. 使い方3.電子書籍テーブルを表示す...
Apache Superset は、データを表示および探索する方法を提供する強力な BI ツールで...
1. インストール1. ダウンロードMySQLをダウンロードするには、MySQL公式サイトhttp:...
複数列のインデックスについては、理解が不足していることがよくあります。よくある間違いは、多数の列に独...
ここ2日間Javaを復習するつもりなので、練習にdubboを使ってショッピングモールプロジェクトを書...
この記事では、コードレイン効果を実現するためのキャンバスの具体的なコードを参考までに共有します。具体...
目次1. シナリオ2. 基盤となるAPIを簡素化する2.1 自動的に破棄を呼び出す2.2 VM値を作...
負荷分散とは何ですか?ドメイン名が複数の Web サーバーを指している場合は、nginx ロード バ...
この記事では、参考までに、テキストループスクロールを実現するアプレットの具体的なコードを例を挙げて紹...
悲観的ロック悲観的ロックは、データを悲観的であるとみなします。データをクエリするときに、ロックを追加...
1. ダウンロード参考: 2. D:\MySQL\mysql-5.7.24 などの固定の場所に解凍し...
まず質問させてください。HTML ページを作成するときに、外部から JS ファイルをインポートする場...