Skip to content
Alexander Schulz edited this page Apr 11, 2018 · 12 revisions

Developer Build

You need:

You should:

  • Add C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin to PATH-Variable (buildscripts need to use MSBuild.exe from this path)

Build dotnet-packages (3rd Party Libraries)

1.) Open cygwin-Konsole

2.) cd dotnet-packages (root folder)

3.) ./build.sh

4.) The libraries should now be in _build\output

Build

1.) Copy content of dotnet-packages\_build\output\dotnet46 to <path-to-repo>\packages

2.) (optional branding) Open cygwin-Konsole, execute <path-to-repo>/branding-xcp-ng/brand-to-xcp-ng.sh

2.) Open XenAdmin.sln

3.) Build and enjoy


The information presented below may be incorrect, so handle with care 👮‍♂️

(Only for testing purposes) you also need NUnit libraries which can be obtained from http://www.nunit.org:

  • nunit.framework.dll
  • Moq.dll

Build with CI (Jenkins) [work in progress]

You need:

  • Jenkins with some plugins: Pipline,...
  • Buildnode (same environment as described in Developer Build)
  • Jenkins Workspace path without spaces in pathname

Build with buildscripts [work in progress]

You need

Prepare build environment

  • start configure.cmd from root folder
  • add cygwin path (C:\cygwin64\bin) to windows PATH variable

Startscript

Execute in cygwin terminal from workspace BUILD_NUMBER=1 mk/xenadmin-build.sh

Internal structure

  1. clean build folder
  2. branding (Branding/branding.sh, mk/re-branding.sh) - sets version numbers, product name and company name from branding repo
  3. build
  4. WIX (https://de.wikipedia.org/wiki/Windows_Installer_XML)
  5. build/sign installers (mk/build-installers.sh)
  6. ...do some ressource and validators stuff...
  7. prepare stuff for iso