Deploys the containerized version of the migrator to Azure Container Instances
This script, available as Windows Batch script and as Linux Bash script, uses the public image on Docker Hub: n3wt0n/azdo2ghrepomigrator
Firs step is to replace the environment variables values in the deploy-aci.yaml file with your ones (see below).
Then just invoke:
- Windows: deployToACI.bat
- Linux / MacOS: deployToACI.sh
For big repositories (i.e. bigger than a few GBs) you probably want to use an external volume to store the migration files.
This repository contains the deployment files to use ACI with Azure Files, which uses the deploy-aci-azurefiles.yaml definition.
Other than the environment variables, you need to complete that file with your Azure File file share name, and the Azure Storage Account name and key.
Then just invoke:
- Windows: deployToACI-AzureFiles.bat
- Linux / MacOS: deployToACI-AzureFiles.sh
This script requires Azure CLI, which can be found here: Install the Azure CLI
The container needs the following environment variables (and values) to run.
Remember to change their values in the _deploy-aci.yaml file.
- AZDOPAT: PAT (Personal Access Token) in Azure DevOps with the Code > Read permissions granted
- AZDOORG: name of the Azure DevOps Organization where your source repository resides (the XXX in dev.azure.com/XXX or XXX.visualstudio.com)
- AZDOPRJ: name of the Azure DevOps Team Project where the source repository resides
- AZDOREPO: name of the Azure DevOps Source Repository to migrate
- GHPAT: PAT (Personal Access Token) in GitHub with the repo (Full control) permmissions granted
- GHUSER: GitHub Username or (Organization) with which you have created the destination repository
- GHREPO: name of the GitHub Destination Repository
For instruction on how to generate a PAT in Azure DevOps, take a look at the official documentation here
For instruction on how to generate a PAT in GitHub, take a look at the official documentation here
Please note that the Destination Repo must be empty and not be initialized.
If you decide to use the external volume on Azure Files, you also need:
- Azure File Share Name
- Azure Storage Account Name
- Azure Storage Account Key
Please note that the File Share must be empty or ar least must not container a folder named "AZUREDEVOPSREPONAME-Migration"