Jump to content

QESTNET Internal:Developer Setup QESTNET 4.3

From QESTonline

QESTNET 4.3

QESTNET Repository

Complete the following steps within GitHub to fetch the QESTNET repository:

  • Change the directory to your root GitHub folder (eg. cd /c/dev)
  • Clone the qestnet repository (git clone git@github.com:spectraqest/qestnet.git).
  • Change the directory to the new qestnet folder (cd qestnet/)
  • Fetch the branch to be used for development (git fetch origin branch_name).
  • Checkout the branch (git checkout branch_name).
App Configuration

Config files often have ever changing information specific to your setup in them. As such files with extension .config are ignored by git. See .gitignore files for other files git will ignore. All config files have an associated default file. e.g., app.config has app.config.default. This will give a new setup a starting template. If you add additional configuration properties make sure the .default file is updated as this is the only one committed to git.

  • Run the batch file ~\qestnet\QESTNET\copy_default_config.bat
  • The batch file will go through the qestnet repository and create .config files from the .default files.
Unhandled Login Fault Exception
  • Open ~\qestnet\QESTNET\QESTNET.sln
  • Go to Debug > Exceptions
    • Find System.ServiceModel.FaultException`1
    • Uncheck User-unhandled.
      This will stop the debugger breaking on a fault exception catch every time you login. It is on a "to do" list somewhere to fix... really I (DL) promise.
Pre-Requisites
  • Microsoft Powershell 3 must be installed before continuing this process.
    • If the installed version of Powershell is wrong, build errors will occur in QESTLab.Workflow\Refrences\Castle.Core and Castle.Windsor
  • A restart of the computer may be needed after updating to Powershell 3.
QESTLab Configuration Setup
  • Open ~\qestnet\QESTNET\QESTNET.sln
    • Open the app.config file in the project QESTNET.Service\QESTNET.
    • Edit the QESTLab_Data connection string to point to the QESTLab database you want to connect to.

      <add name="QESTLab_Data" connectionString="metadata=res://*/Spectra.QESTLab.Data.Entities.QESTLabModel.csdl|res://*/Spectra.QESTLab.Data.Entities.QESTLabModel.ssdl|res://*/Spectra.QESTLab.Data.Entities.QESTLabModel.msl;provider=System.Data.SqlClient;provider connection string="data source=ADLD0031;initial catalog=fugro_20150320_qestlab;integrated security=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />

  • Open ~\qestnet\QESTNET\QESTNET.Service\QESTNET\app.config
  • Open ~\qestnet\QESTNET\QESTNET.Service\QESTNET.Sessions\app.config
  • Open ~\qestnet\QESTNET\QESTNET.Custom\QESTNET.Custom.Fugro.DataBackbone.Tests\app.config
  • Open ~\qestnet\QESTNET\QESTNET.Sessions.Lab\Tester\app.config
    • Check or change the storage location.

      <add key="fileStorePath" value="C:\NEEDSTOEXIST" />

  • Open the program Windows PowerShell ISE with Administrator rights.
    • Enter set-executionpolicy remotesigned into the console
    • This comes up, click Yes

  • In Visual Studio, right-click the GenerateDataSchema.ps1 file under QESTNET.Sessions.Lab\QESTLab.Data\Entities and select Open With
    • Click add new program (“Add...”)
    • Enter the PowerShell Executable (C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell_ise.exe)
    • Click OK?
    • Click “set as default” on the open with window.
    • Click OK.

The file can now be run using PowerShell by double clicking on it in Visual Studio. Run this file.

Build QESTNET
  • Open ~\qestnet\QESTNET\QESTNET.sln
  • Build the solution. If there are only errors which start "The command mkdir and end with "NET START QESTNET exited with code 2.", continue on to the next step. Any other errors will need to be fixed before continuing.
Create QESTNET Service
  • Run ~\qestnet\QESTNET\install_qestnet_debug.bat. This will create a QESTNET windows service on your machine.
    • The batch file assumes naively that InstallUtil.exe is installed at "C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe". If it is not, you will need to change the batch file to suit your local machine. Do not commit these changes.
  • Open Services from the control panel.
  • Right click the QESTNET service and select properties. Change the Log On permissions to your account ("sqaus\your.name") or the windows NETWORK SERVICE account. If you use the NETWORK SERVICE account you will need to ensure it has the necessary permissions to ports and files the qestnet service will use.
  • Start the service



  • Check that the service is running. If the service is not running check the Event Viewer logs to determine why.
Rebuild QESTNET
  • Open ~\qestnet\QESTNET\QESTNET.sln
  • Build the solution. If there are no errors the QESTNET service has been successfully built and the service restarted.