Closed8

Blazor WASM を github.io で公開する

たくのろじぃ | Takumi Okawaたくのろじぃ | Takumi Okawa

Visual Stduio の場合、csproj ファイルにこの記述が必要になる。

<PropertyGroup>
  <GHPages>true</GHPages>
</PropertyGroup>
t13801206t13801206

後々の-p:GHPages=trueがあれば、csprojファイルの変更は不要かと思いました。いかがでしょうか?よろしくお願いいたします。

たくのろじぃ | Takumi Okawaたくのろじぃ | Takumi Okawa

コメントありがとうございます。
ご指摘の通り、workflow ファイルにて dotnet コマンドを使用して発行しているので、ファイル変更は不要でした。(最初は VS から直接発行していたので、メモがてら残していました。)

たくのろじぃ | Takumi Okawaたくのろじぃ | Takumi Okawa

ビルド時には生成されないが、指定したディレクトリに発行すれば wwwroot ディレクトリ内に、ひととおりのファイルが生成される。

たくのろじぃ | Takumi Okawaたくのろじぃ | Takumi Okawa

ただ、毎回発行するのが非常に面倒なので、workflow ファイルを作成して自動化してしまうことにする。

プロジェクト直下に github/workflows ディレクトリを作成してワークフローファイルを記述する。

書き方は参考サイトにあるが、少しバージョンを変更して書き換えてみる。また、今回はソリューションとプロジェクトを区別せずに作成したので、プロジェクトディレクトリの指定は必要なくなる。

gh-pages.yml
name: Deploy Portfolio Site

on:
  push:
    branches:
      - master

jobs:
  deploy:
    runs-on: ubuntu-20.04
    steps:
      # Checkout the code
      - uses: actions/checkout@v2

      # Install .NET Core SDK
      - name: Setup .NET Core
        uses: actions/setup-dotnet@v1
        with:
          dotnet-version: 6.0.201

      # Publish the site
      - name: Publish
        run: dotnet publish TakunologyPortfolio.csproj -p:GHPages=true -c:Release -o:publish

      # Deploy the site
      - name: Deploy
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: publish/wwwroot
          force_orphan: true
たくのろじぃ | Takumi Okawaたくのろじぃ | Takumi Okawa

公開可能な状態になったら、ソースに worlflow で作成された gh-pages リポジトリを指定してあげればOK

とりあえず、github.io に公開できたので、あとはひたすら作り込んでいってプッシュするだけで自動的にデプロイされる次第。めでたし、めでたし。

このスクラップは2022/03/20にクローズされました