mirror of https://github.com/abpframework/abp
				
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							87 lines
						
					
					
						
							2.2 KiB
						
					
					
				
			
		
		
	
	
							87 lines
						
					
					
						
							2.2 KiB
						
					
					
				param(
 | 
						|
  [string]$branchName,
 | 
						|
  [string]$version,
 | 
						|
  [string]$isRcVersion,
 | 
						|
  [string]$isDraft,
 | 
						|
  [string]$gitHubApiKey
 | 
						|
) 
 | 
						|
 | 
						|
. ..\nupkg\common.ps1
 | 
						|
 | 
						|
Write-Info "Publishing GitHub Release..." ##  Further info see https://docs.github.com/en/rest/reference/releases
 | 
						|
 | 
						|
if ($isRcVersion -eq "")
 | 
						|
{
 | 
						|
	$isRcVersion = Read-Host "Is this a RC/Preview version? (y/n)"	
 | 
						|
}
 | 
						|
 | 
						|
if ($gitHubApiKey -eq "")
 | 
						|
{
 | 
						|
	$gitHubApiKey = Read-File "github-api-key.txt"
 | 
						|
	echo "GitHub API Key assigned from github-api-key.txt"
 | 
						|
}
 | 
						|
 | 
						|
if(!$gitHubApiKey)
 | 
						|
{
 | 
						|
	$gitHubApiKey = Read-Host "Enter the GitHub API Key"
 | 
						|
}
 | 
						|
 | 
						|
if ($version -eq "")
 | 
						|
{
 | 
						|
	$version = Get-Current-Version # The version number for this release
 | 
						|
}
 | 
						|
 | 
						|
if ($branchName -eq "")
 | 
						|
{
 | 
						|
	$branchName = Get-Current-Branch # The branch name also the tag name
 | 
						|
}
 | 
						|
 | 
						|
if ($isDraft -eq "")
 | 
						|
{
 | 
						|
	$draft = $FALSE
 | 
						|
}
 | 
						|
else
 | 
						|
{
 | 
						|
	$draft =  [boolean]::Parse($isDraft)
 | 
						|
}
 | 
						|
 | 
						|
##############################################################################
 | 
						|
$preRelease = ( ($isRcVersion -eq "true") -or ($isRcVersion -eq "y") -or ($isRcVersion -eq "rc") ) # Set to true to mark this as a pre-release version
 | 
						|
$gitHubUsername = 'abpframework' # The github username
 | 
						|
$gitHubRepository = 'abp' # The github repository name
 | 
						|
$releaseNotes = '' # The notes to accompany this release, uses the commit message in this case 
 | 
						|
##############################################################################
 | 
						|
 | 
						|
echo "Current version: $version"
 | 
						|
echo "Current branch: $branchName"
 | 
						|
echo "Preview version: $preRelease"
 | 
						|
echo "Draft: $draft"
 | 
						|
 | 
						|
##############################################################################
 | 
						|
 | 
						|
$releaseData = @{
 | 
						|
   tag_name = $version;
 | 
						|
   target_commitish = $branchName; 
 | 
						|
   name = $version;
 | 
						|
   body = $releaseNotes;
 | 
						|
   draft = $draft;
 | 
						|
   prerelease = $preRelease;
 | 
						|
 }
 | 
						|
 | 
						|
$releaseParams = @{
 | 
						|
   Uri = "https://api.github.com/repos/$gitHubUsername/$gitHubRepository/releases";
 | 
						|
   Method = 'POST';
 | 
						|
   Headers = @{
 | 
						|
     Authorization = 'Basic ' + [Convert]::ToBase64String(
 | 
						|
     [Text.Encoding]::ASCII.GetBytes($gitHubApiKey + ":x-oauth-basic"));
 | 
						|
   }
 | 
						|
   ContentType = 'application/json';
 | 
						|
   Body = (ConvertTo-Json $releaseData -Compress)
 | 
						|
 }
 | 
						|
 | 
						|
$response = Invoke-RestMethod @releaseParams 
 | 
						|
 | 
						|
echo  "---------------------------------------------"
 | 
						|
echo "$version has been successfully released."
 | 
						|
 |