Strategy One

Mosaic Model Version Control with GitHub

Starting in Strategy One (March 2026), you can manage Mosaic models as version-controlled artifacts using GitHub. Leverage Git workflows for auditability, collaboration, and rollback.

The initial Strategy One (March 2026) release supports GitHub as the Git provider and allows one Git integration per environment.

Prerequisites

GitHub Repository

  1. In GitHub, click Create new... and choose New repository.

  2. Type a Repository name and note the URL.

    For example, https://github.com/{github_account}/mosaic_versioning.

  3. Toggle on Add README.

  4. Click Create repository.

  5. Ensure you have a main branch.

GitHub OAuth Application

You must create a GitHub OAuth App so Strategy can authenticate with GitHub on behalf of users.

  1. Sign in to GitHub.

  2. Click your profile picture to open the user navigation menu.

  3. Choose Settings.

  4. In the left navigation, click Developer Settings and OAuth Apps.

  5. Click New OAuth app.

  6. Enter values in the following fields:

    • Application name: Type any name. This value is displayed to users on authorization windows.

    • Homepage URL: Type a URL. This value is the main URL of your app or site (for example, http://localhost).

    • Application description: Optionally type a short explanation of what your application does.

    • Authorization callback URL: Type the URL where GitHub will send users after they authorize. You can update this value according to your Library URL (for example, https://host.company.com/MicroStrategyLibrary/auth/DIOAuthRedirect.jsp). This field is required.

  7. The Client ID displays on the app page. Note this value.

    This value will be referred to as GITHUB_CLIENT_ID in future steps.

  8. Click Generate a new client secret. Copy this value and securely store it (for example, using environment variables or a secret manager).

    This value will be referred to as GITHUB_CLIENT_SECRET in future steps.

Privileges

Your Strategy account must have the Manage Git Integration and Use Git Integration privileges.

Configure Strategy

Create an Identity and Access Management (IAM) Object

Create an IAM configuration is Workstation using the GitHub OAuth App credentials you noted above.

  1. Open Workstation.

  2. In the Navigation pane, click , next to Enterprise Security.

  3. Choose your Environment.

  4. In Type, choose Gateway Authorization.

  5. Click Next.

  6. Type a Display Name.

  7. In 1. Select an identity provider, choose GitHub.

  8. In 3. Strategy Configuration add the following values in these fields:

    • Client ID: Enter the GITHUB_CLIENT_ID value from the GitHub OAuth App you noted above.

    • Client Secret: Enter the GITHUB_CLIENT_SECRET value from the GitHub OAuth App you noted above.

    • OAuth URL: Type https://github.com/login/oauth/authorize.

    • Token URL?

  9. Click Save.

Configure Git Integration in Library

  1. In Library, click Account settings.

  2. Choose Git Integrations.

  3. Click Add New Integration.

  4. Type a Display Name.

  5. Confirm GitHub is selected in 1. Select a Git Provider.

  6. In 2. Repository Configuration, enter values in the following fields:

    • Repository URL: Enter the GitHub repository URL (for example, https://github.com/<github_account>/mosaic_versioning).

    • Branch: Type the branch you want to use with Mosaic.

  7. In 3. Authentication Configuration, choose the IAM object you created above.

  8. Click Save.

Use Git with Mosaic Studio

Save to Git

Save your Mosaic model to Git to serialize the current model to YAML and commit it to GitHub.

You must have the Use Git Integration privilege, Read access to the model, and Git integration must be configured for the environment.

  1. In Library, right-click the model.

  2. Choose Save to Git.

  3. Type a commit message.

  4. Confirm the push to GitHub.

    If the operation fails (for example, permission or connectivity issues), an error displays.

Restore from Git

Pull a version of the model from GitHub and apply it to Strategy.

You must have the Use Git Integration privilege, Write access to the model, and Git integration must be configured for the environment.

  1. In Library, right-click the model.

  2. Choose Restore from Git.

  3. Choose a version from History.

  4. Confirm the import.

    Strategy validates YAML and semantic dependencies. Invalid or incompatible definitions are rejected and error details display.