Skip to main content

Actions Overview

AL-Go for GitHub provides a collection of reusable composite actions that handle common tasks in Business Central development workflows. These actions are the building blocks that power AL-Go workflows, handling everything from settings management to pipeline execution.

What are AL-Go Actions?

AL-Go actions are GitHub composite actions that encapsulate complex PowerShell logic into reusable, configurable components. Each action is designed to perform a specific task within the AL-Go automation framework, such as:
  • Reading and processing repository settings
  • Managing secrets and authentication tokens
  • Running build and test pipelines
  • Checking for and applying system updates
All actions are implemented as composite actions that invoke PowerShell scripts through the Invoke-AlGoAction.ps1 wrapper, which provides consistent error handling and logging across the framework.

How Actions Work

Each AL-Go action follows a standard pattern:
  1. Input Processing: Actions accept inputs through GitHub Actions parameters, with sensible defaults for most values
  2. Environment Setup: The action sets up environment variables from inputs to ensure proper parameter handling
  3. Script Execution: The main PowerShell script is invoked through the Invoke-AlGoAction.ps1 wrapper
  4. Output Generation: Actions produce outputs as environment variables or GitHub Actions outputs for use in subsequent steps
All AL-Go actions support both powershell and pwsh shells, allowing you to choose the PowerShell version that best fits your environment.

Common Features

All AL-Go actions share these common characteristics:

Shell Selection

Every action includes a shell input parameter that allows you to specify whether to run PowerShell scripts using:
  • powershell (Windows PowerShell 5.1) - Default
  • pwsh (PowerShell 7+)

Consistent Branding

Actions use consistent GitHub branding:
  • Icon: terminal
  • Color: blue

Author

All actions are authored and maintained by Microsoft Corporation.

Available Actions

Run Pipeline

Execute build and test pipelines for AL-Go projects with support for artifacts, baselines, and custom build modes.

Read Settings

Read and process AL-Go settings from repository and project configuration files.

Read Secrets

Retrieve and manage secrets from GitHub Secrets or Azure Key Vault for use in workflows.

Check For Updates

Check for updates to AL-Go system files and optionally apply them to your repository.

Using Actions in Workflows

To use an AL-Go action in your workflow, reference it using the standard GitHub Actions syntax:
- uses: microsoft/AL-Go/Actions/ReadSettings@main
  with:
    shell: pwsh
    project: '.'
When using AL-Go actions, ensure you’re referencing the correct version or branch. Using @main will always get the latest version, but may include breaking changes. Consider pinning to a specific release tag for production workflows.

Action Dependencies

Some actions depend on outputs from other actions:
  • Run Pipeline requires prior execution of both ReadSettings and ReadSecrets
  • Read Secrets requires prior execution of ReadSettings
Always ensure you execute actions in the correct order within your workflow.

Next Steps

Explore the detailed documentation for each action to understand their specific inputs, outputs, and use cases:

Build docs developers (and LLMs) love