Back to Documentation

GitHub Integration Guide

Store and manage your PSADT packages in a version-controlled repository.

Why Use GitHub Integration?

Version Control

Track changes to your deployment packages over time. Roll back to previous versions if needed.

Centralized Storage

All your packages in one place. Access from anywhere, share with your team.

Quick Retrieval

Browse and download existing packages directly from the tool without leaving the interface.

Backup & Recovery

Your packages are safely stored in the cloud. Never lose a deployment script again.

Setting Up GitHub Integration

1

Create a GitHub Repository

Create a new private repository on GitHub to store your PSADT packages. We recommend naming it something like intune-packages or psadt-deployments.

2

Generate a Personal Access Token

Create a Personal Access Token (PAT) with the following permissions:

  • repo - Full control of private repositories
  • workflow (optional) - If you plan to use GitHub Actions
3

Configure in PSADT Generator

In the PSADT Generator, go to "Ready to Use Repository" mode and enter your configuration:

Repository URL
https://github.com/username/intune-packages
Personal Access Token
ghp_xxxxxxxxxxxxxxxxxxxx
Branch (optional)
main
4

Test Connection

Click "Test Connection" to verify your configuration. If successful, you'll see a confirmation message and can start using the integration.

Using GitHub Integration

Committing Packages

After generating a PSADT script, you'll see a "Commit to GitHub" button. This will:

  • Create a folder structure: packages/AppName/Version/
  • Upload the complete PSADT package
  • Create a descriptive commit message
  • Include metadata.json with package information

Browsing Packages

In "Ready to Use Repository" mode, you can browse all packages in your repository:

  • View all applications and their versions
  • See package metadata (vendor, architecture, auto-update status)
  • Download packages directly as ZIP files
  • Refresh the list to see new packages

Repository Structure

your-repo/
├── packages/
├── Google Chrome/
├── 120.0.6099.130/
├── Invoke-AppDeployToolkit.ps1
├── AppDeployToolkit/
├── Files/
└── metadata.json
└── 121.0.6167.85/
└── ...
├── 7-Zip/
└── 23.01/
└── ...
└── Adobe Reader/
└── ...

Security Considerations

  • Private Repository: We recommend using a private repository to protect your deployment packages and any sensitive configurations.
  • Token Storage: Your Personal Access Token is encrypted before being stored. We never have access to the plaintext token.
  • Minimal Permissions: Only grant the minimum required permissions to your PAT.
  • Token Expiration: Consider setting an expiration date on your PAT and rotating it periodically.

Next Steps