Aras DevOps

Appendix VII: Continuous Integration Pipeline Configuration

By default, Continuous Integration pipeline is configured to execute the following logical steps:

  1. Build artifacts with customizations
  2. Deploy Aras Innovator with customizations.
  3. Run integration tests
  4. Delete Aras Innovator.

You can view and run these steps by opening the CI pipeline, clicking the Run Pipeline button, and expanding the Stages section. The default pipeline consists of the following stages:

  • CommitStage – Builds artifacts with customizations.
  • DeployAndTests – Deploys Aras Innovator, runs integration tests, and deletes the instance afterward.

Automatic Triggering

CI pipelines are automatically triggered when there are changes to the following branches:

development, sit, uat, or prod, or when a Pull Request (PR) is targeted to any of them.

Note
CI pipelines will not trigger automatically for custom branches unless explicitly configured.

Use Case 1: Customize Build Validation Rules for Custom Branches

You may want to change the CI behavior for custom branches—for example, to trigger CI on PR creation or disable automatic CI runs.

  • Disable Automatic CI Pipeline (Optional for Release 1.10+)
Important
If you don’t have the necessary permissions, please create a ticket in the support portal so that the support team can assist you.

To prevent the CI pipeline from running automatically:

  1. Go to Project Settings → Pipelines → Settings
  2. In the Triggers section, enable Disable implied YAML CI trigger

Microsoft Docs: Prevent Unintended Pipeline Runs

CI pipelines for development, sit, uat, and prod will still trigger automatically, but for custom branches it will not.

  • Enable CI Pipeline for Custom Branches on Pull Requests
Important

If you don’t have the necessary permissions, please create a ticket in the support portal so that the support team can assist you.

To configure CI for a specific custom branch:

  1. Go to Project Settings → Repositories → Your repository
  2. Select the branch (e.g., FeatureDevelopment)
  3. Go to the Policies tab
  4. Under Build Validation, add or edit the validation rules

Microsoft Docs: Build Validation

Use Case 2: Develop in Custom Branch Without CI Pull Request Validation

If you’re developing in a custom branch and want to bypass CI validation during PRs, you can disable CI on PRs but still run it manually afterward.

  • Disabling CI Pipeline automatic run for Pull Requests to custom branch
    1. Create a custom branch (e.g., FeatureDevelopments)
    2. Configure policies:
Important

If you don’t have the necessary permissions to perform this step, please create a ticket in the support portal so that the support team can assist you.

  • Go to Project Settings → Repositories → Your repository → Your branch
  • Under Policies, find Build Validation
  • Either remove or disable the CI validation rule

This setup allows PRs to be merged without CI validation.

  • Run CI Pipeline with one stage manually after merge
    • Open the CI pipeline
    • Click Run Pipeline
    • Select your branch (e.g., FeatureDevelopments)
    • Click Stages to run, select only CommitStage
    • Click Use selected stages and Run pipeline

As soon as the pipeline passes it will be possible to deploy a new instance based on this CI pipeline run

  • Deploy using CI Artifacts with one stage
    1. Open the Deploy Innovator pipeline
    2. Click Run Pipeline
    3. Select the same branch (e.g., FeatureDevelopments)
    4. Click Resources → Select the CI pipeline run from the previous step

    5. Click Use selected stages, then Run pipeline

This allows rapid deployment based on the most recent merged changes.

Use Case 3: Fast Integration Without Repeating CI Validation

Each developer works in their own fork/branch and wants to integrate all branches with the development branch. You want to avoid running CI pipeline per each PR that can lead to multiple CI pipeline validation.

Steps:

  1. Create custom branch for integration (e.g. IntegrationBranch)
  2. Disable Build Validation rules for custom branch (see Use Case 2)
  3. Target all Pull Requests to IntegrationBranch
  4. Merge PRs without CI validation
  5. Create a PR from IntegrationBranch to developmentbranch
  6. Fix any issues until the CI pipeline passes (“green”) before merging

Use Case 4: Validate Deployability Before Merging a PR to custom branch (Without Waiting for Integration Tests)

If your PR doesn’t change any code covered by integration tests, you may want to validate deployability before merging it, skipping unnecessary test time.

Steps:

  • Open Project settings -> Repositories -> Your work repository (e.g. “Work”) -> Required branch (e.g. “FeatureDevelopments”) -> Policies
Important

If you don’t have the necessary permissions to perform this step, please create a ticket in the support portal so that the support team can assist you.

  • Make sure that Continuous Integration pipeline is configured as optional for custom branch in “Build Validation” section.
Important

If you don’t have the necessary permissions to perform this step, please create a ticket in the support portal so that the support team can assist you.

  • Create optional “Build Validation” policy for Deploy Innovator and Delete Innovator pipelines
Important

Important: If you don’t have the necessary permissions to perform this step, please create a ticket in the support portal so that the support team can assist you.

  • Create Pull Request
  • Click on “View 3 checks” link

  • Click on “Queue” button for the CI pipeline

  • If it is not necessary to run integration tests, then open triggered CI pipeline, cancel the triggered pipeline and click Run New button
  • In the opened window make sure that pipeline will be triggered on Pull Request branch and configure other parameters of CI pipeline following the steps from Use Case 2

  • Run pipeline
  • When CI pipeline is finished, repeat steps 6 for Deploy Innovator pipeline, cancel the triggered pipeline and click Run New button
  • In the opened window make sure that pipeline will be triggered on Pull Request branch

  • Click on Resources and select Continuous Integration pipeline from step 6 as a source
  • Configure other parameters as necessary
  • Run pipeline
  • After Deploy Innovator pipeline is finished, it is possible to do required validation.
  • Repeat steps 10-14 for Delete Innovator pipeline to clean up.