Merge pull request #762 from alefesta/powershell-installer
[Installation] - Improve Installation for Windows Users
This commit is contained in:
commit
66afb327d6
@ -35,6 +35,17 @@ You can then install it globally on your system:
|
|||||||
sudo mv ./bin/dagger /usr/local/bin
|
sudo mv ./bin/dagger /usr/local/bin
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Option 2 (Windows): Run a shell script
|
||||||
|
|
||||||
|
From a terminal, run the following command:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
curl https://releases.dagger.io/dagger/install.ps1 -OutFile install.ps1 ; ./install.ps1; rm install.ps1
|
||||||
|
```
|
||||||
|
|
||||||
|
We try to move the dagger binary under `C:\Windows\System32` but
|
||||||
|
in case use missing the necessary permission we'll save everything under `<your home folder>/dagger`
|
||||||
|
|
||||||
## Option 3: Download a binary release
|
## Option 3: Download a binary release
|
||||||
|
|
||||||
Open your web browser to [the latest release](https://github.com/dagger/dagger/releases/latest).
|
Open your web browser to [the latest release](https://github.com/dagger/dagger/releases/latest).
|
||||||
|
77
install.ps1
Normal file
77
install.ps1
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
# param (
|
||||||
|
# [Parameter(Mandatory)] $PersonalToken
|
||||||
|
# )
|
||||||
|
Clear-Host
|
||||||
|
@"
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------------
|
||||||
|
Author: Alessandro Festa
|
||||||
|
Dagger Installation Utility for Windows users
|
||||||
|
---------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
"@
|
||||||
|
|
||||||
|
# Since we are already authenticated we may directly download latest version.
|
||||||
|
$name="dagger"
|
||||||
|
$base="https://dagger-io.s3.amazonaws.com"
|
||||||
|
function http_download {
|
||||||
|
$version=Get_Version
|
||||||
|
$version=$version -replace '[""]'
|
||||||
|
$version=$version -replace '\n'
|
||||||
|
$fileName="dagger_v" + $version + "_windows_amd64"
|
||||||
|
Clear-Host
|
||||||
|
$url = $base + "/" + $name + "/releases/" + $version + "/" + $fileName + ".zip"
|
||||||
|
write-host $url
|
||||||
|
Pause
|
||||||
|
|
||||||
|
|
||||||
|
Invoke-WebRequest -Uri $url -OutFile $env:temp/$fileName.zip -ErrorAction Stop
|
||||||
|
Expand-Archive -Path $env:temp/$fileName.zip -DestinationPath $env:HOMEPATH/dagger -Force -ErrorVariable ProcessError;
|
||||||
|
If ($ProcessError)
|
||||||
|
{
|
||||||
|
Clear-Host
|
||||||
|
@"
|
||||||
|
Whoops apparently we had an issue in unzipping the file, please check
|
||||||
|
you have the right permission to do so and try to unzip manually the file.
|
||||||
|
Currently we saved Dagger at your temp folder.
|
||||||
|
"@
|
||||||
|
exit
|
||||||
|
} else {
|
||||||
|
Clear-Host
|
||||||
|
|
||||||
|
@"
|
||||||
|
|
||||||
|
Thank You for downloading Dagger!
|
||||||
|
|
||||||
|
-----------------------------------------------------
|
||||||
|
Dagger has been saved at <YOUR HOME FOLDER>/dagger/
|
||||||
|
Please add dagger.exe to your PATH in order to use it
|
||||||
|
----------------------------------------------------
|
||||||
|
|
||||||
|
"@
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function Get_Version {
|
||||||
|
$response = Invoke-RestMethod 'http://releases.dagger.io/dagger/latest_version' -Method 'GET' -Body $body -ErrorAction SilentlyContinue -ErrorVariable DownloadError
|
||||||
|
If ($DownloadError)
|
||||||
|
{
|
||||||
|
Clear-Host
|
||||||
|
@"
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
Houston we have a problem!
|
||||||
|
|
||||||
|
Apparently we had an issue in downloading the file, please try again
|
||||||
|
run the script and if it still fail please open an issue on the Dagger repo.
|
||||||
|
----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
"@
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
return $response
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
http_download
|
Reference in New Issue
Block a user