Skip to content

Quiketaz/workshop-alm

Repository files navigation

Here's a comprehensive README.md file for a Git repository focused on Power Platform ALM (Application Lifecycle Management) integration with GitHub Actions.

README.md

Power Platform ALM with GitHub Actions

This repository demonstrates the implementation of an effective ALM process for Microsoft Power Platform projects using GitHub Actions for CI/CD (Continuous Integration/Continuous Delivery).

Project Structure

  • .github/workflows: Contains the YAML files defining the various GitHub Actions workflows for automation (explained in more detail below).
  • Solutions: Contains the Power Platform solution files (.zip) in both unmanaged and managed forms.
  • Other Resources (Optional): Additional relevant files like images, documentation, or test scripts.

Workflows

The repository includes the following GitHub Actions workflows:

  • Solution Export and Import:
    • Exports solutions from a development environment as unmanaged solutions.
    • Unpacks the solution files.
    • Commits changes to a designated repository branch.
    • Imports the updated solution into a target environment (e.g., Test, UAT) as a managed solution.
  • Build Artifact Generation:
    • Creates a production-ready build artifact from the managed solution.
    • Stores the artifact for release deployment.
  • Release Deployment
    • Deploys the build artifact to a production environment.
    • Includes potential manual approval steps for controlled releases.

Setup

  1. Environments: Create the necessary Power Platform development, test/UAT, and production environments.
  2. Azure AD Application Registration: Create an Azure AD app registration with permissions to manage Dataverse environments (refer to documentation).
  3. GitHub Secrets: Store the following in your repository secrets:
    • APPLICATION_ID: App ID of the Azure AD app registration.
    • CLIENT_SECRET: Client secret of the Azure AD app registration.
    • TENANT_ID: Tenant ID of your Azure AD.
    • DEV_ENVIRONMENT_URL: URL of the development environment.
    • TARGET_ENVIRONMENT_URL: URL of the target environment(s).

Using the Workflows

  1. Modify Workflows: Adjust workflow files in .github/workflows to match your specific environment names, solution names, and deployment processes.
  2. Trigger Workflows: Workflows can be triggered manually, on code changes, or on a schedule.

References

Additional Considerations

  • Branching Strategy: Implement an effective branching strategy (e.g., GitFlow) to align with your project and team needs.
  • Testing: Integrate automated testing for your Power Platform components.
  • Manual Approvals: Consider adding manual approval steps in workflows for critical deployment stages.

Disclaimer

This README.md and associated workflows offer a starting point for your Power Platform ALM with GitHub Actions. You will need to make modifications to suit the structure of your solutions and your desired ALM process.

Let me know if you'd like an example workflow file or more detail on any of the sections above!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors