AppVeyor とは
AppVeyor は GitHub などのアカウントと連携して使う CI・CD のマネージドな IaaS・SaaS です。
Continuous Integration and Deployment service for Windows, Linux and macOS | AppVeyor
近いサービスとして、次のようなものがあります:
- CircleCI
- GitHub Actions
- Travis CI
参考: What are some alternatives to Appveyor? - StackShare
公開リポジトリーの場合は無料で利用できます。
Pricing | AppVeyor
AppVeyor を使うべき場面
AppVeyor を使う場面はかなり限られます。
例として、次のような場面があります:
- Vagrant の Box イメージをビルドしたい場合
Vagrant の Box イメージをビルドしたい場合
AppVeyor の Build environment では VirtualBox が使えます。
Software pre-installed on Linux build VMs | AppVeyor
VirtualBox は仮想マシンにはインストールできないため、
たとえば Vagrant の Box イメージをビルドしたいとき、
GitHub Actions の GitHub-hosted runners や AWS の EC2 インスタンスなどを使うことはできません。
AppVeyor を利用する場面を限定する理由
基本的に、ジョブを並列実行できない
Appveyor は基本的にジョブを並列で実行することができず、
Premium Plan でも並列実行ジョブは 2 つまでです
すぐにビルドでキューが詰まり、生産性に影響が出ます。
Windows を使える CI・CD サービスが増えた
かつて Appveyor は Build environment に Windows が使えるということで利用されましたが、
今は GitHub Actions でも Windows を使うことができ、最大 20 ジョブまで同時実行できます。
参考: AppVeyor を捨てて Azure Pipelines に全て移行した話 - しばやん雑記
GitHub と組み合わせた AppVeyor の使い方
1. GitHub アカウントで Sign in します
2. 新しいプロジェクトを作成し、リポジトリーと関連付けます
2-1.
AppVeyor のダッシュボードを開きます。
Projects - AppVeyor
2-2.
[+] NEW PROJECT
をクリック
2-3.
画面右の Cloud で GitHub が選択されていることを確認して、
[Authorize as GitHub App] の [Install AppVayor App] をクリック
対象リポジトリーとして All repositories
が選択されていますが、
Only select repositories
の方がセキュアです。
Select repositories
で必要なリポジトリーを選択して Install
ボタンをクリックします。
2-4.
GitHub のパスワードを入力します。
2-5.
「Select repository for your new project」と表示されるので、
リポジトリーにカーソルをあわせると [+] ADD
と表示されるので、クリックします。
3. プロジェクトに appveyor.yml
を追加します
詳しい書き方は次のリファレンスを確認します:
appveyor.yml Reference | AppVeyor
GitHub で利用例を見てみるのも良いかもしれません。
たとえば、on_success
の使われ方は次の検索結果で確認できます:
Search · filename:appveyor.yml on_success
並行実行できない欠点を補うための設定
テスト対象を master ブランチと master ブランチへの PR だけに限定します。
並行実行できないので、ジョブの実行を少しでも減らすためです。
appveyor.yml
:
branches:
only:
- master