Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)

無料無料技术资料

这篇内容可直接阅读,适合用于基础学习和検索引流。

Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)

前の記事

最近、GitLab CI/CDを使用する際に“スムーズではない”使用シナリオが見つかりました。具体的には:
開発者として、複数のフロントエンドプロジェクトを同時にデプロイする必要がある場合があります。
バグ修正後、テスト環境にデプロイする必要があります。
プロジェクトbのバグ修正後、テスト環境にデプロイする必要があります。
。。。。

さまざまな理由により、このシナリオのデプロイは自動的ではなく、担当者が手動でデプロイメントパイプラインを作成する必要があります。たとえば、テスターに信頼性の高い安定したテスト環境を提供するために、手動デプロイメント環境が使用されます。

これは、まずプロジェクトAに入り、パイプラインをクリックしてブランチを選択し、パイプラインを作成する必要がある問題につながります。
次にBに進み、これを繰り返します。
GitLabは個々のOwerプロジェクトのパイプライン管理を提供していないため、プロセスは面倒です。
これは、国内のDevOpsツールと同様です。
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图

個人的な観点からのパイプライン管理がないため、プロジェクトのパイプラインを作成する必要があります。(近い将来、このような機能があるかもしれません。

この問題の解決策は、GitLab Open APIを使用してパイプラインを管理し、プロジェクトごとにパイプラインをクエリしたり、パイプラインを新規作成したり、再実行したりするという簡単な方法です。しかし、いくつかのページを書くには、バックエンドがGitLabのデータをクエリするコードを送信する必要があります。

具体的なアイデアは非常に簡単ですが、残念ながら私の空き時間はあまりないので、ある日私は気まぐれに、Node-REDこの低コードツールを使用して、このグローバルパイプライン管理機能を実現できるかどうかを考えました。

Node-REDは、IBMのオープンソースIoTプロジェクトです。これは、Nodejs上に構築された低コードのイベント駆動型アプリケーションです。
豊富なノードでできることはたくさんあります。
HTTPノードを使用して、HTTPリクエストの送信、プロジェクト情報の照会、パイプラインのリスト、またはプロジェクトのパイプラインのトリガーを行うことができます。
ダッシュボードノードを使用して、ページパネル機能を提供できます。
開発プロセス全体を通じて、必要なパラメータを設定し、JSコードのごく一部を記述するだけで済み、その他のデータパイプラインはNode-REDに処理されます。

Node-REDとGitLab Open APIを使用してDevOpsパイプライン管理を実現しましょう。

ターゲットは

予備分析によると、この機能は主に以下の4つのコア機能を含む。

  • 個人すべての者アイテムリストの照会
  • プロジェクトからプロジェクト下の分岐リストを照会する
  • プロジェクトパイプラインの検索と表示
  • 新しいパイプラインの建設
  • パイプラインの再起動

開始前の準備

Node-REDのインストール

Node-REDのインストールは簡単です。

docker run -it -p 1880:1880 --name mynodered nodered/node-red

ブラウザのアクセス http://127.0.0.1:1880/ 体験できます。ここではあまり紹介しませんが、興味のある方はNode-REDコラムに移動してください。
Node-REDエディタのアクションページ
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图1

他のインストール方法でアドレスを確認できます。 https://nodered.org/docs/getting-started/

トークンの作成

個人的な視点でリソースをクエリしたいので、Personal Access Tokenを作成します。
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图2

下の写真は
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图3
あなたと彼が一緒にいることを忘れないでください。

使用するAPI。

個人プロジェクトを照会するAPI(携帯が必要)?owned=true。現在のユーザーすべての者のアイテムのみをクエリすることを示します。

GET /projects

プロジェクトパイプラインのクエリAPI

GET /projects/:id/pipelines

新規パイプライン(プロジェクトIDに加えて、パラメータrefブランチまたはtagを渡す必要があります)

POST /projects/:id/pipeline

パイプラインの再起動

POST /projects/:id/pipelines/:pipeline_id/retry

実践の実践

インターフェイスのベースアドレスとトークンをストリーム変数として保存し、ストリーム全体からアクセスできます。
ストリームが実行された後、最初にアイテムのリストを要求します。 dropdown新しいページに表示されます。
ユーザーがプロジェクトを選択すると、プロジェクト分岐リストを要求し、別のプロジェクトに渡す dropdownページに表示されます。
ユーザーがブランチを選択したら、そのブランチの下のパイプラインをリクエストして使用します。tableノードがページに表示されます。
ユーザーがパイプラインテーブルの行をクリックすると、そのパイプラインが再実行されます。成功後に通知されます。
最後のクリック。create pipeline ボタンを押すと、現在選択されているプロジェクトとブランチを使用して新しいパイプラインが作成され、成功すると通知されます。

最終的なフローロジック図はこんな感じです
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图4

プロセス操作の完全な動的図
Polar Fox GitLab Open APIとローコードNode-REDをベースにした個人プロジェクトの開発パイプライン管理(パイプラインのクエリ、パイプラインの作成、パイプラインの再トリガー)插图5

Node-REDは、ストリームデータをJSONデータとしてエクスポートして保存することをサポートしており、プロセスが作成されたら、共有、配布、JSONデータのエクスポート、ドメイン名、トークンの設定が非常に簡単になります。ストリームファイルが必要な学生は、記事にメッセージを残してください。

概要まとめ

創造は仕事を容易にする。役に立つことを願う。

関連タグ
この資料を実際のプロジェクトに活用しませんか?

ツールセンターで電文解析、CRCチェック、デバイスデバッグを行うか、要件を送信して選定と接続のアドバイスを受けましょう。

エンジニア会員

この記事を実行可能なデバッグ資料に

登録すると、高度な電文解析、資料パックのダウンロード、コード例、エンジニアリングケース、優先技術サポートが利用可能に。実際のプロジェクト納品に最適です。

高度なツール無制限
資料パックとコードパック
完全なエンジニアリングケースライブラリ
優先技術サポート窓口

发表回复

あなたのメールアドレスアドレス不会被公开。 必須項目已用 * 标注