DUICUO

89, 89); margin: 0px; padding: 0px; background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0);">resource ( s )
2022/07/02 13:17:33 1 つのリソース作成しています
2022/07/02 13:17:33 1 つのリソース作成しています
2022/07/02 13:17:33 検出キャッシュをクリアしています
2022/07/02 13:17:33 タイムアウト1 4つのリソース待機開始
2022/07/02 13:17:39 43個のリソースを作成しています s
2022/07/02 13:17:39 5分0 タイムアウト43のリソース待機を開始
2022/07/02 13:17:40 デプロイメントの準備できていません: argocd / argocd - applicationset - controller 予想される1 個ポッドうち0 個準備ができています
2022/07/02 13:17:42 デプロイメントの準備できていません: argocd / argocd - applicationset - controller 予想される1 個ポッドうち0 個準備ができています
……
2022/07/02 13:19:44 デプロイメントの準備できていません: argocd / argocd - applicationset - controller 予想される1 個ポッドうち0 個準備ができています
2022/07/02 13:38:27 デプロイメントの準備できていません: argocd / argocd - dex - server 1 個ポッドうち0 個準備完了です
2022/07/02 13:38:30 リリースインストールに成功しました: argocd / argo - cd - 4.9.11
2022-07-02 13:38:30 [ 成功] ツール( argocd / default ) 作成が完了しまし
2022 - 07 - 02 13 : 38 : 30 [ 情報] -------------------------- [ 処理の進行状況: 4/4 ] --------------------------
2022 - 07 - 02 13 : 38 : 30 [ INFO ] 処理中: ( argocdapp / default ) -> 作成...
2022-07-02 13:38:31 [ INFO ] application . argoproj . io / dtm - test - go が作成されました
2022-07-02 13:38:31 [ 成功] ツール( argocdapp / default ) 作成が完了しまし
2022-07-02 13:38:31 [ 情報] -------------------- [ 処理が完了しました ] --------------------
2022-07-02 13:38:31 [ 成功] すべてのプラグインが正常適用ました
2022-07-02 13:38:31 [ 成功] 申請完了まし

適用プロセス中、実行状態は定義された状態バックエンドストレージに保存されます。例えば、ローカルストレージを使用している場合、実行状態はルートディレクトリのdevstream.stateファイルに保存されます。合計4つのツールチェーンがあり、最初の2つが完了し、最後の2つが認識された場合、最初の2つのプラグインの状態がこのファイルに保存されます。次回の再適用時には、最後の2つのツールチェーンのみを実行する必要があります。

上記で定義したツールチェーンは、最終的に GitHub 上に Golang Web 用のスキャフォールディングされたアプリケーション コード リポジトリを作成します。

GitHub Actions は、CI 操作と Docker イメージの構築に使用されます。

CI プロセスは最終的にイメージを Docker Hub にプッシュします。

その後、ArgoCD が Kubernetes にデプロイされます。

 $ kubectl get pods -n argocd
名前準備完了ステータス再起動年齢
argocd - アプリケーション- コントローラー- 0 1 / 1 実行中0 5 分55秒
argocd - アプリケーションセット- コントローラー- 64 d8c477f4 - 2 wrg6 1 / 1 実行中0 5 分55秒
argocd - dex - サーバー- dbdbf5499 - krmfz 1 / 1 実行中0 5 分35秒
argocd - 通知- コントローラー- b67c4bdb4 - 22 t9l 1 / 1 実行中0 5 分55秒
argocd - redis - df9db799b - 8 gbpv 1 / 1 実行中0 5 分55秒
argocd - リポジトリ- サーバー- 56769 cdd47 - zs65j 1 / 1 実行中0 5 分55秒
argocd - サーバー- 7 d4745f689 - w5pp7 1 / 1 実行中0 5 分55秒

最後に、ArgoCDを使用してCD操作を実行し、サンプルアプリケーションをKubernetesクラスターにデプロイします。基本的には、ArgoCDアプリケーションオブジェクトを作成します。

 $ kubectl アプリケーションを取得- n argocd
名前同期ステータスヘルスステータス
dtm - テスト- go 不明健康

ArgoCD を通じて、デプロイされたアプリケーションの詳細を表示することもできます。

最後に、ツールチェーン全体を削除する場合は、`dtm delete` コマンドを実行するだけです。

プロセス全体は非常にスムーズでした(ただし、何らかの理由でGitHubへのアクセスが非常に遅かった点を除けば)。必要なプラグインを設定ファイルで定義するだけで済みます。プラグインの設定方法の詳細については、公式ドキュメント(https://docs.devstream.io/en/latest/plugins/plugins-list/)をご覧ください。

YAML設定ファイルに必要なDevOpsツールを定義するだけで、たった1つのコマンドでDevOpsツールチェーンとSDLCワークフロー全体を構築できます。DevStreamはまさに魔法のツールと言っても過言ではありません。

Git リポジトリ: https://github.com/devstream-io/devstream。