This migration process leaves your existing Azure DevOps repository untouched. You can continue working in Azure DevOps if needed while testing AL-Go for GitHub.
Overview
This migration method uses VS Code and File Explorer to copy files from your Azure DevOps repository to a new AL-Go for GitHub repository. It’s similar to setting up CI/CD for an existing app, but uses a more manual file transfer approach.Prerequisites
Before starting the migration, ensure you have:- Access to your Azure DevOps repository
- A GitHub account
- VS Code installed on your PC
- Git credentials configured for both Azure DevOps and GitHub
Migration Process
Clone Your Azure DevOps Repository
Navigate to your Azure DevOps repository and click the Clone button.
Clone the repository to your PC by selecting Clone in VS Code (or use your preferred cloning method). Once cloned, open the files in your file explorer.
Create a New GitHub Repository from Template
Choose the appropriate AL-Go template for your project:Click Use this template, select Create a new repository, and choose:
Per-Tenant Extension
Use this template for Per-Tenant Extensions (PTE)
AppSource App
Use this template for AppSource applications
- Repository owner
- Repository name
- Public or private visibility
Clone the New GitHub Repository
In your new GitHub repository, click the Code button (shown as
In VS Code:
<>) and copy the git URL.- Press
Ctrl+Shift+P - Select Git Clone
- Paste the git URL
- Select a location and clone the repository
- Open the cloned repository in VS Code
Copy Your Application Files
Return to the File Explorer window containing your cloned Azure DevOps files.Select all folders containing:
- Apps
- Test apps
- Other necessary files
Configure AL-Go Settings
Modify the necessary settings for your application. Common settings to configure:For AppSource Apps:
Repository Settings
Typical settings you may need to modify include:- appFolders - Specify folders containing your apps (documentation)
- testFolders - Specify folders containing test apps (documentation)
- runNumberOffset - Adjust build numbering (documentation)
Code Analysis Settings
- enableAppSourceCop - Enable AppSource validation (documentation)
- enablePerTenantExtensionCop - Enable PTE validation (documentation)
- enableCodeCop - Enable code analysis (documentation)
- enableUICop - Enable UI validation (documentation)
- rulesetFile - Specify custom ruleset (documentation)
- enableExternalRulesets - Allow external rulesets (documentation)
AppSource-Specific Settings
- appSourceMandatoryAffixes - Define required affixes (documentation)
Required Secrets
Secrets must be created in your GitHub repository settings under Settings > Secrets and variables > Actions.
LicenseFileUrl- Secure direct download URL to your license file
CodeSignCertificateUrl- Secure direct download URL to your PFX certificateCodeSignCertificatePassword- Password for the PFX certificate
Commit and Push Your Changes
In VS Code’s Source Control area:
- Click the + icon to Add all changed files to staging
- Enter a commit message (e.g., “Migrate from Azure DevOps”)
- Click Commit
- Click Sync Changes to push to GitHub
Verify the Migration
Navigate back to your GitHub repository to verify your files have been uploaded.
Monitor the CI/CD Workflow
Click Actions to see that the CI/CD workflow was automatically triggered by your commit.
Open the running workflow to monitor status and view the summary. Wait for the build to complete.
Review Build Artifacts and Test Results
Once the workflow completes, scroll down to view:
- Artifacts - Built app files ready for deployment
- Test Results - Automated test execution results
Next Steps
After successfully migrating your repository:Configure Environments
Set up deployment environments for your applications
Set Up Continuous Deployment
Configure automatic deployments to your environments
Add Collaborators
Invite team members to your GitHub repository
Explore AL-Go Actions
Learn about available workflows and automation
When to Use This Method
This migration approach is ideal when:- You don’t need to preserve commit history
- You want a clean start in GitHub
- You’re migrating a small to medium-sized project
- You want the simplest migration process
If you need to preserve your full commit history, use the migration with history guide instead.
Troubleshooting
Workflow Fails to Start
If the CI/CD workflow doesn’t automatically trigger:- Go to Settings > Actions > General
- Select Allow all actions and reusable workflows
- Click Save
- Manually trigger the workflow from the Actions tab
Build Errors
If the build fails:- Check that
appFoldersandtestFolderssettings are correct - Verify that all required secrets are configured
- Review the workflow logs for specific error messages
- Ensure your app.json files are valid
Missing Dependencies
If dependencies are missing:- Ensure all dependency apps are included in your repository
- Configure dependency download settings if using external dependencies
- Check that app dependencies are correctly specified in app.json files