Building the Client Extension

Learn how to compile code as a Build Version that can be deployed

With an understanding of the Deployment Pipeline let's cover how client code is compiled into a Build Version ready for deployment.

Build Overview


The Client Extension Build Process creates a Docker Image by compiling client code and adding it to a Microsoft ASP.NET Core Docker Image. These docker images are stored in Directscale's private docker registry and are only used for deploying code to Stage and Production. See Deploying A Build Version. If a Client Developer wants to run code locally as a docker image they can build and run their own docker image.

How To Build A Version


🚧

Ready to create your first Build?

Before attempting to build a version make sure you have completed all steps in the Setting up the Client Extension article. Disregarding these steps will cause build failures or builds might not even be created.

  1. Log into your Corporate Admin.
  2. Select 'Tools' and then 'Developer Tools' from the main menu.
  3. Click on 'Deployment'
  4. Enter the name of the GitHub Repo branch to build in the text box next to the Queue New Build button. This is case sensitive
  5. Click the Queue New Build button.
1652

Figure 1: An image displaying where the Queue New Build button and text field are located on the Deployment Page.

A new Build Version should appear in the Builds List with a result of Queued or Processing. When the build has finished processing it should show a Success result. See Failed Builds if it does not.

1652

📘

The Result of a Build Version will be one of the following results

  • Processing
  • Success
  • Failed

Failed Builds


If a build is Failed then the Result text will be a hyperlink to see more information.

1652

Figure 2: An image displaying an example of the Failed result hyperlink on the Deployment Page.

The Build Issues modal displays the Last Known Status of the Build Version as well as any errors that occured during the build. Use the Build Statuses section as a reference to understand where the build failed. Use the ⚠ Errors displayed to further understand the issue that occurred.

593

Figure 3: An image showing the Build Issues Modal on the Deployment Page.


Build Statuses


Queued

Version number is assigned. Waiting for a background process to build the code.

CheckingOutSourceCode

Source code from the client GitHub Repo is cloned.

GatheringMetaDataFromProject

Things like the .NET TargetFramework are collected in preparation for building a Docker Image.

BuildingSourceCode

The client source code cloned from GitHub is compiled.

PushingContainer

A docker image is built and pushed to Directscale's private container registry by adding the client's compiled source code to a Microsoft ASP.NET Core Docker Image.

Success

Client source code was successfully compiled and built as a Docker Image.
Directscale adds the Build Version as a Git Tag on the latest commit that was cloned from the client GitHub repo.