Giteaを使用してCI/CDパイプラインを構築する①

社内イントラネットで公開しているASP.NetアプリについてCI/CDパイプラインを構築したときの備忘録。環境としてアプリはWindowsServerIISで公開、開発はWindows11でおこなっている。

今回リポジトリ管理はGitHubライクなGiteaを使用し、あくまでイントラネット内だけで完結する仕組みとして構築する。

目次

各種ソフトウェアのダウンロード

まずは必要なソフトウェアの準備から始めましょう。

STEP
Git For Windows

https://git-scm.com/install/windows

Git本体ですね。まだインストールしていない場合はダウンロードしてインストールしましょう。

Git含め各種ソフトウェアはGiteaを設置するサーバーにインストールしていきます。

STEP
Gitea

https://about.gitea.com/products/gitea

Giteaの本体です。リポジトリ管理する場所に保存しますがIISの公開フォルダへアクセスするため同一のサーバーに設定します。(サーバーを分ける場合はアクセス権など各種設定が必要になりますね)

①giteaダウンロード

ダウンロードしたgiteaのバージョン等を削って「gitea.exe」にリネーム、フォルダを作成して保存します。

ここでは「C:\gitea\gitea.exe」に保存します。データフォルダも作成しておきます「C:\gitea\data」

②コマンドラインから起動

cd c:\gitea
gitea.exe web

③ブラウザを開いてURL「https://www.scra.co.jp/」を入力

サーバーのブラウザで開きます。初期画面が表示されたら管理者IDとパスワードを設定、メモしておきます。

各種設定は任意ですが、DBはSQLite3、データパスは先に作成したデータフォルダを指定しておきます。

Server Domainは「localhost」ではなく<LAN_IP>を設定しておきましょう、これ大事。

④設定ファイルの更新

設定内容は「C:\gitea\custom\conf\app.ini」に記載されています。

エディタで開いて下記二行がなければ追加しておきます。

[actions]
ENABLED = true

規定でtrueになっているようですが念のため。

次のact_runner設定のためコマンドラインは閉じずに稼働状態を維持しておきましょう。

STEP
act_runner

https://docs.gitea.com/usage/actions/act-runner

ソースコードをビルド、デプロイするためのランナーです。これもサーバーに設定します。

表示されたページから[download page]へ移動、Windows用の最新版をダウンロードします。

①フォルダを作成して保存

「C:\act_runner\act_runner.exe」

②PowerShellを起動してコマンドを入力、config.ymlを出力させる

cd c:\act_runner
act_runner.exe generate-config | Out-File config.yaml -Encoding utf8

③config.ymlをエディタで開いて編集

「labels:」を探して「- windows:host」を記述、保存します。

runner:
  labels:
    - windows:host

④ブラウザでGiteaにログインし、サイト管理→Actions→ランナーを選択、登録トークンを取得

黒塗りしていますが、右のコピーボタンで取得します。

⑤PowerShellで取得したトークンを登録

cd c:\act_runner
act_runner.exe --config .\config.yaml register --no-interactive --instance https://www.scra.co.jp/ --token <TOKEN> --name win-runner --labels windows:host

⑥PowerShellで手動実行

act_runner.exe daemon --config .\config.yaml

Giteaの画面表示を更新、画面上にランナーが追加されていてコンディショングリーンになっていれば設定完了です。

STEP
node.js

https://nodejs.org/ja

act_runnerを動作させるために必要ですので、事前にインストールしておきましょう。

STEP
Nuget.exe

VisualStudio付属のものでではなく、マイクロソフトのHPから単体ダウンロードした「nuget.exe」をダウンロードし保存します。

これは.Netソースコードのビルド時、Packageのダウンロードが必要な場合に利用されます。
※要インターネットアクセスのためイントラネットの制約に引っかかる可能性があります

「C:\Tools\nuget\NuGet.exe」に保存しておきましょう。

まとめ

まずはソフトウェアのダウンロードと保存、初期設定を行いました。

事前準備だけでもそれなりに時間を取られてしまいますが、基本的に一度設定してしまえばあとは利用するだけとなりますので是非ともトライしてみてください。

それでは次回以降はパイプラインの構築を行っていきたいと思います。

  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次