Last active
July 14, 2016 01:01
-
-
Save snallami/5aa9ea2c57836a3b3635 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set-ExecutionPolicy Unrestricted | |
# Jenkins plugin will dynamically pass the server name and vm name. | |
# If your jenkins server is configured for security , make sure to edit command for how slave executes | |
# You may need to pass credentails or secret in the command , Refer to help by running "java -jar slave.jar --help" | |
$jenkinsserverurl = $args[0] | |
$vmname = $args[1] | |
# Download the file to a specific location | |
Write-Output "Downloading zulu SDK " | |
$source = "http://azure.azulsystems.com/zulu/zulu1.7.0_51-7.3.0.4-win64.zip?jenkins" | |
mkdir c:\azurecsdir | |
$destination = "c:\azurecsdir\zuluJDK.zip" | |
$wc = New-Object System.Net.WebClient | |
$wc.DownloadFile($source, $destination) | |
Write-Output "Unzipping JDK " | |
# Unzip the file to specified location | |
$shell_app=new-object -com shell.application | |
$zip_file = $shell_app.namespace($destination) | |
mkdir c:\java | |
$destination = $shell_app.namespace("c:\java") | |
$destination.Copyhere($zip_file.items()) | |
Write-Output "Successfully downloaded and extracted JDK " | |
# Downloading jenkins slaves jar | |
Write-Output "Downloading jenkins slave jar " | |
$slaveSource = $jenkinsserverurl + "jnlpJars/slave.jar" | |
$destSource = "c:\java\slave.jar" | |
$wc = New-Object System.Net.WebClient | |
$wc.DownloadFile($slaveSource, $destSource) | |
# execute slave | |
Write-Output "Executing slave process " | |
$java="c:\java\zulu1.7.0_51-7.3.0.4-win64\bin\java.exe" | |
$jar="-jar" | |
$jnlpUrl="-jnlpUrl" | |
$serverURL=$jenkinsserverurl+"computer/" + $vmname + "/slave-agent.jnlp" | |
$jnlpCredentialsFlag="-jnlpCredentials" | |
# syntax for credentials username:apitoken or username:password | |
# you can get api token by clicking on your username --> configure --> show api token | |
$credentails="username:apitoken" | |
& $java $jar $destSource $jnlpCredentialsFlag $credentails $jnlpUrl $serverURL | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment