Skip to content

Build Framework

Damian edited this page Jul 23, 2025 · 3 revisions

Build Framework (Proof-of-Concept)

Overview

A generic framework for projects (i.e. C#, PHP, etc.) to be able to get the latest build framework, update dependencies, and compile code at its core. The ability to interact with the test framework from command line would be helpful for backend services - setup, execute, and tear down automated tests.

Basic Framework Commands

Command Description
GetBuildFramework Update this set of build scripts
UpdateDependencies Update 2nd-party and 3rd-Party utilities into the /tools folder
CompileCode Compile the project(s). This requires UpdateDependencies to be ran first (if not already)
SetupAT Setup automated tests. Create the test database, create DDL, apply DML.
TeardownAT Tear down the automated tests and clear folders. Delete the test database from the system.

Advanced Commands

Create Software Development Kit

Create SDK will package up your Compiled Code into a ZIP file which is later consumed by other projects in their respective, "/lib/2nd_Party//" folder.

Command Description
CreateSDK Create a package library and copy artifacts onto your server. This will later be consumed by UpdateDepenencies

Outputs:

  • <ProjName>.ZIP
  • sdk_version.txt
  • Copies to, "$(ArtifactsDir)\Build $(AppVersion)\SDK"

Building Code

Command Description
BuildAndDeploy
BuildWithAllTests
BuildWithTests
CleanOutput
CompileCode
CompileDevCode

Database

Generic database

Command Description
CompileDb
CompileDbCode
CleanDbOutput
DropDB
DataDictionary
ValidateDb

Migrator

Command Description
MigratorCompile Compile the database
MigratorCompileDefault Compile the database
MigratorNamespace
MigratorSQLCop
MigratorSQLiteCop

Automated Testing

The following targets are used to kick off and tear down your automated testing environments

Command Description
SetupAT
SetupAutomatedTests
ExecuteAT
ExecuteATCI
ExecuteAutomatedTests
ExecutedIntegrationTests
ExecuteIT
ExecuteITCI
RunUnitTests
RunDevUnitTests
TearDownAT

Installer

The following targets will create an installer package for you.

NOTE: You must have NSIS, WIX, or Inno installer installed on your machine. The example below is coded for NSIS, so the command names may need updated.

Command Description
CreateInstallers Create installer executables (i.e. exe, msi, deb, rpm, etc.)
CreateCD Generate an .iso image (if applicable)
CompileNsi Compile the NSIS script
UpdateNsiFile Update NSIS script's Copyright and version info, etc.
StageInstaller
InstallLocal
InstallServer
Clone this wiki locally