Build and Deploy App

🕓 10 minutes

What you’ll learn

How to deploy the application into the CodeNOW environment.

Prerequisites

Steps

Build application components

  1. Build a new component version
    • An application release has to contain only released components because it makes clear which fixed bugs and newly developed features are contained in a particular build.
    • A released component:
      • is tagged in git,
      • has updated its pom.xml descriptors,
      • is uploaded to the nexus artifact repository.
    • Developers can check the build progress in CI/CD Builds Overview.
  2. See the result of code quality check
    • SonarQube is the most popular open-source tool for static code analysis and is integrated into CodeNOW. See more about the SonarQube.
    • Let’s use the default oxus-java profile for the quality check.
    • Code quality check is a good first-line measure to evaluate overall code quality.
    • Defining quality gateways help for first glance decisions on whether the code is release-ready.
    • If the code quality is too low, improve your code and build a new component version (STEP 1)
  3. Repeat STEP 1 and STEP 2 for each improved application component

Deploy application

  1. Create an application package
    • Define application package version.
    • Select which components (and which version of components) to include in the application package.
      • An application package consists of an individual component released builds with individual build versions.
      • An application package is merely a descriptor, so far no real deployment exists.
      • An application as an orchestration of components is delivered to the selected environment as the whole package.
  2. Define deployment configuration
    • Select the target environment and application package version.
      • The default configuration uses application.yml from each component.
      • Explicit configuration for each environment should not be required if you use dns endpoint names, i.e. http://component-name
      • If required, configuration for local development is possible using profiles and the application-{profile}.yml configuration file.
    • If one or more of your components has any connected services, select the related service from the menu, so that CodeNow can automatically add the right values, and connect your application to the chosen service.
    • You can also change the runtime configuration of your application.
  3. Deploy the application.
  4. If you made some changes in your component project and want to know how these changes will affect the whole application, then you can create a preview build of the component.
    • You don't need to create a new application package and/or new deployment configuration.
      • Preview build will use the existing environment configuration and will be automatically propagated to the deployed application.

Screenshots

Step 1.1

dep1.1

Step 1.2

dep1.2

Step 1.3

dep1.3

Step 1.4

dep1.4

Step 1.5

dep1.5

Step 2.1

dep2.1

Step 2.2

dep2.2

Step 4.1

dep4.1

Step 4.2

dep4.2

Step 5.1

dep5.1

Step 5.2

dep5.2

Step 5.3

dep5.3

Step 5.4

dep5.4

Step 7.1

dep7.1

What’s next?

You might be interested in our other tutorials: