-
Notifications
You must be signed in to change notification settings - Fork 34
Continuous Integration AppVeyor
The Boost Unit Test Adapter project is currently being built using AppVeyor's continuous integration services. The main repository includes appveyor.yml which should allow for easier setup of an AppVeyor project.
The AppVeyor build procedure is defined in appveyor.yml, available within the main repository. The YAML file should define all the necessary configuration parameters for setting up the build machine, build the project, run the tests and produce the VSIX installer.
As described in the Building article, the Boost Unit Test Adapter project requires Visual Studio 2015 for proper VSIX generation. AppVeyor's build machine Windows Server 2012 RC image contains the necessary development environment and should be able to build the project straight out of the proverbial box.
Prior to building the project (i.e. before_build
), the revision component of the version defined VSIX manifest file is updated and all NuGet packages are downloaded. VSIX version update are done using madskristensen ExtensionScripts.
The rest of the build procedure is fairly standard - each project defined in the BoostTestAdapter
solution is built and if the build is successful, tests defined within the BoostTestAdapterNunit.dll
and VisualStudioAdapterNunit.dll
modules are executed using NUnit. If all tests succeed, the VSIX installer generated by the BoostTestPlugin
project is recorded as an artifact.
In case the build fails, the build machine environment (i.e. environment variables and installed programs) are logged and pushed as an artifact for later inspection.
- Log in to AppVeyor using your GitHub credentials.
- Create a new project and point it to the Boost Unit Test Adapter main repository or your fork of choice.
- (Optional) From the General tab of the project settings, check 'Pull Requests do not increment build number'.
- (Optional) From the General tab of the project settings, check 'Skip branches without
appveyor.yml
'. - Start a new build.
During AppVeyor setup, build environment differences were encountered which required further inspection of the build machine and the build environment. In such cases, modify appveyor.yml
to suit your needs. Recommended approaches are:
- Increase
build
verbosity
fromminimal
tonormal
or higher. - Add additional output logs (e.g. environment variables) in either the
install
,before_build
,on_finish
,on_success
oron_failure
sections. - Dump RDP connection details as recommended in AppVeyor's RDP to build worker article and inspect the build machine.
For further information, refer to AppVeyor's Documentation.
In order to download an in-development build, simply:
- Navigate to the project's AppVeyor page.
- Select a build from the
History
tab. Alternatively, make use of theLatest Build
tab which is selected by default. - Select a build job. Currently
Release
andDebug
are available, each of which represents a release and debug compilation respectively. - From the
Artifacts
tab, download the produced VSIX.
Please use in-development builds with caution. We recommend that on public release, an in-development build is uninstalled and the official release is downloaded and installed from the Visual Studio gallery.