diff options
Diffstat (limited to 'PxShared/buildtools/packman')
10 files changed, 0 insertions, 430 deletions
diff --git a/PxShared/buildtools/packman/packman b/PxShared/buildtools/packman/packman deleted file mode 100644 index 4d0c292..0000000 --- a/PxShared/buildtools/packman/packman +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash - -PM_PACKMAN_VERSION=4.2-rc2 - -# Specify where configuration file could exist -export PM_CONFIG_PATH=$(dirname ${BASH_SOURCE})/packman_config.txt - -# The packages root may already be configured by the user -if [ -z "$PM_PACKAGES_ROOT" ]; then - # Set variable permanently using .profile for this user - echo "export PM_PACKAGES_ROOT=\$HOME/packman-repo" >> ~/.profile - # Set variable temporarily in this process so that the following execution will work - export PM_PACKAGES_ROOT="${HOME}/packman-repo" -fi - -# Ensure the packages root path exists: -if [ ! -d "$PM_PACKAGES_ROOT" ]; then - echo "Creating packman packages repository at $PM_PACKAGES_ROOT" - mkdir -p "$PM_PACKAGES_ROOT" -fi - -# The packman module may be externally configured -if [ -z "$PM_MODULE_EXT" ]; then - PM_MODULE_DIR="$PM_PACKAGES_ROOT/packman-common/$PM_PACKMAN_VERSION" - export PM_MODULE="$PM_MODULE_DIR/packman.py" -else - export PM_MODULE="$PM_MODULE_EXT" -fi - -fetch_file_from_s3() -{ - SOURCE=$1 - SOURCE_URL=http://packman.s3.amazonaws.com/$SOURCE - TARGET=$2 - echo "Fetching $SOURCE from S3 ..." - if command -v wget >/dev/null 2>&1; then - wget --quiet -O$TARGET $SOURCE_URL - else - curl -o $TARGET $SOURCE_URL -s -S - fi -} - -# Ensure the packman package exists: -if [ ! -f "$PM_MODULE" ]; then - PM_MODULE_PACKAGE="packman-common@$PM_PACKMAN_VERSION.zip" - TARGET="/tmp/$PM_MODULE_PACKAGE" - # We always fetch packman from S3: - fetch_file_from_s3 $PM_MODULE_PACKAGE $TARGET - if [ "$?" -eq "0" ]; then - echo "Unpacking ..." - mkdir -p "$PM_MODULE_DIR" - unzip -q $TARGET -d "$PM_MODULE_DIR" - rm $TARGET - else - echo "Failure while fetching packman module from S3!" - exit 1 - fi -fi - -# Generate temporary file name for environment variables: -PM_VAR_PATH=`mktemp -u -t tmp.XXXXX.$$.pmvars` - -python "$PM_MODULE" $* --var-path="$PM_VAR_PATH" -exit_code=$? - -# Export the variables if the file was used and remove the file: -if [ -f "$PM_VAR_PATH" ]; then - while read -r line - do - if [ ${#line} -gt 0 ]; then - export "$line" - fi - done < "$PM_VAR_PATH" - rm -f "$PM_VAR_PATH" -fi - -# Return the exit code from python -if [ "$exit_code" != 0 ]; then - exit $exit_code -fi diff --git a/PxShared/buildtools/packman/packman.cmd b/PxShared/buildtools/packman/packman.cmd deleted file mode 100644 index 8e98015..0000000 --- a/PxShared/buildtools/packman/packman.cmd +++ /dev/null @@ -1,41 +0,0 @@ -:: Reset errorlevel status so we are not inheriting this state from the calling process:
-@call :RESET_ERROR
-:: You can remove the call below if you do your own manual configuration of the dev machines
-@call "%~dp0\win-bootstrap\configure.bat"
-@if errorlevel 1 exit /b 1
-:: Everything below is mandatory
-@if not defined PM_PYTHON goto :PYTHON_ENV_ERROR
-@if not defined PM_MODULE goto :MODULE_ENV_ERROR
-
-:: Generate temporary path for variable file
-:TEMP_VAR_PATH_LOOP
-@set "PM_VAR_PATH=%tmp%\tmp.%RANDOM%.pmvars"
-@if exist "%PM_VAR_PATH%" goto :TEMP_VAR_PATH_LOOP
-
-@"%PM_PYTHON%" "%PM_MODULE%" %* --var-path="%PM_VAR_PATH%"
-@if errorlevel 1 goto :eof
-
-:: Marshall environment variables into the current environment if they have been generated and remove temporary file
-@if exist "%PM_VAR_PATH%" (
- @for /F "usebackq tokens=*" %%A in ("%PM_VAR_PATH%") do @set "%%A"
- @if errorlevel 1 goto :VAR_ERROR
- @del /F "%PM_VAR_PATH%"
-)
-@set PM_VAR_PATH=
-@goto :eof
-
-:: Subroutines below
-:PYTHON_ENV_ERROR
-@echo User environment variable PM_PYTHON is not set! Please configure machine for packman or call configure.bat.
-@exit /b 1
-
-:MODULE_ENV_ERROR
-@echo User environment variable PM_MODULE is not set! Please configure machine for packman or call configure.bat.
-@exit /b 1
-
-:VAR_ERROR
-@echo Error while processing and setting environment variables!
-@exit /b 1
-
-:RESET_ERROR
-@exit /b 0
\ No newline at end of file diff --git a/PxShared/buildtools/packman/packman_config.txt b/PxShared/buildtools/packman/packman_config.txt deleted file mode 100644 index a0a912b..0000000 --- a/PxShared/buildtools/packman/packman_config.txt +++ /dev/null @@ -1,5 +0,0 @@ -PM_PACKAGES_SOURCE=gtl -PM_GTL_USER=svcgtlautomate -PM_GTL_KEY=QHV0ME1AdDNHVEwkY3IxcHQk -PM_S3_READ_KEY_ID=AKIAJHPSPBMWMTZS6TJA -PM_S3_READ_SECRET_KEY=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 diff --git a/PxShared/buildtools/packman/win-bootstrap/configure.bat b/PxShared/buildtools/packman/win-bootstrap/configure.bat deleted file mode 100644 index b6b079b..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/configure.bat +++ /dev/null @@ -1,104 +0,0 @@ -@set PM_PACKMAN_VERSION=4.2-rc2 - -:: Specify where config file could exist -@set PM_CONFIG_PATH=%~dp0..\packman_config.txt - -:: The external root may already be configured and we should do minimal work in that case -@if defined PM_PACKAGES_ROOT goto ENSURE_DIR - -:: If the folder isn't set we assume that the best place for it is on the drive that we are currently -:: running from -@set PM_DRIVE=%CD:~0,2% - -@set PM_PACKAGES_ROOT=%PM_DRIVE%\packman-repo - -:: We use *setx* here so that the variable is persisted in the user environment -@echo Setting user environment variable PM_PACKAGES_ROOT to %PM_PACKAGES_ROOT% -@setx PM_PACKAGES_ROOT %PM_PACKAGES_ROOT% -@if errorlevel 1 goto ERROR - -:: The above doesn't work properly from a build step in VisualStudio because a separate process is -:: spawned for it so it will be lost for subsequent compilation steps - VisualStudio must -:: be launched from a new process. We catch this odd-ball case here: -@if defined PM_DISABLE_VS_WARNING goto ENSURE_DIR -@if not defined VSLANG goto ENSURE_DIR -@echo The above is a once-per-computer operation. Unfortunately VisualStudio cannot pick up environment change -@echo unless *VisualStudio is RELAUNCHED*. -@echo If you are launching VisualStudio from command line or command line utility make sure -@echo you have a fresh launch environment (relaunch the command line or utility). -@echo If you are using 'linkPath' and referring to packages via local folder links you can safely ignore this warning. -@echo You can disable this warning by setting the environment variable PM_DISABLE_VS_WARNING. -@echo. - -:: Check for the directory that we need. Note that mkdir will create any directories -:: that may be needed in the path -:ENSURE_DIR -@if not exist "%PM_PACKAGES_ROOT%" ( - @echo Creating directory %PM_PACKAGES_ROOT% - @mkdir "%PM_PACKAGES_ROOT%" - @if errorlevel 1 goto ERROR_MKDIR_PACKAGES_ROOT -) - -:: The Python interpreter may already be externally configured -@if defined PM_PYTHON_EXT ( - @set PM_PYTHON=%PM_PYTHON_EXT% - @goto PACKMAN -) - -@set PM_PYTHON_DIR=%PM_PACKAGES_ROOT%\python\2.7.6-windows-x86 -@set PM_PYTHON=%PM_PYTHON_DIR%\python.exe - -@if exist "%PM_PYTHON%" goto PACKMAN - -@set [email protected] -@for /f "delims=" %%a in ('powershell -ExecutionPolicy ByPass -NoLogo -NoProfile -File "%~dp0\generate_temp_file_name.ps1"') do @set TEMP_FILE_NAME=%%a -@set TARGET=%TEMP_FILE_NAME%.exe -@call "%~dp0fetch_file_from_s3.cmd" %PM_PYTHON_PACKAGE% %TARGET% -@if errorlevel 1 goto ERROR - -@echo Unpacking ... -@%TARGET% -o"%PM_PYTHON_DIR%" -y 1> nul -@if errorlevel 1 goto ERROR - -@del %TARGET% - -:PACKMAN -:: The packman module may already be externally configured -@if defined PM_MODULE_EXT ( - @set PM_MODULE=%PM_MODULE_EXT% - @goto END -) - -@set PM_MODULE_DIR=%PM_PACKAGES_ROOT%\packman-common\%PM_PACKMAN_VERSION% -@set PM_MODULE=%PM_MODULE_DIR%\packman.py - -@if exist "%PM_MODULE%" goto END - -@set PM_MODULE_PACKAGE=packman-common@%PM_PACKMAN_VERSION%.zip -@for /f "delims=" %%a in ('powershell -ExecutionPolicy ByPass -NoLogo -NoProfile -File "%~dp0\generate_temp_file_name.ps1"') do @set TEMP_FILE_NAME=%%a -@set TARGET=%TEMP_FILE_NAME% -@call "%~dp0fetch_file_from_s3.cmd" %PM_MODULE_PACKAGE% %TARGET% -@if errorlevel 1 goto ERROR - -@echo Unpacking ... -@"%PM_PYTHON%" "%~dp0\install_package.py" %TARGET% "%PM_MODULE_DIR%" -@if errorlevel 1 goto ERROR - -@del %TARGET% - -@goto END - -:ERROR_MKDIR_PACKAGES_ROOT -@echo Failed to automatically create packman packages repo at %PM_PACKAGES_ROOT%. -@echo Please set a location explicitly that packman has permission to write to, by issuing: -@echo. -@echo setx PM_PACKAGES_ROOT {path-you-choose-for-storing-packman-packages-locally} -@echo. -@echo Then launch a new command console for the changes to take effect and run packman command again. -@exit /B 1 - -:ERROR -@echo !!! Failure while configuring local machine :( !!! -@exit /B 1 - -:END diff --git a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_gtl.ps1 b/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_gtl.ps1 deleted file mode 100644 index d4ae86b..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_gtl.ps1 +++ /dev/null @@ -1,43 +0,0 @@ -param( -[Parameter(Mandatory=$true)][string]$sourceGUID=$null, -[string]$output="out.exe" -) -$source = "http://nvgtl/download/" + $sourceGUID -$filename = $output -$key64 = 'QHV0ME1AdDNHVEwkY3IxcHQk' -$key = [System.Text.Encoding]::GetEncoding(1252).GetString([Convert]::FromBase64String($key64)) -$key = $key | ConvertTo-SecureString -asPlainText -Force -$credential = New-Object System.Management.Automation.PSCredential('svcgtlautomate', $key) -$cache = New-Object System.Net.CredentialCache -$cache.Add( "http://sso.nvidia.com", "NTLM", $credential) - -$req = [System.Net.httpwebrequest]::Create($source) -$req.cookiecontainer = New-Object System.net.CookieContainer -$req.Credentials = $cache -Write-Host "Connecting to NVGTL ..." -$res = $req.GetResponse() - -if($res.StatusCode -eq "OK") { - Write-Host "Downloading ..." - [int]$goal = $res.ContentLength - $reader = $res.GetResponseStream() - $writer = new-object System.IO.FileStream $fileName, "Create" - [byte[]]$buffer = new-object byte[] 4096 - [int]$total = [int]$count = 0 - do - { - $count = $reader.Read($buffer, 0, $buffer.Length); - $writer.Write($buffer, 0, $count); - $total += $count - if($goal -gt 0) { - Write-Progress "Downloading $url" "Saving $total of $goal" -id 0 -percentComplete (($total/$goal)*100) - } else { - Write-Progress "Downloading $url" "Saving $total bytes..." -id 0 - } - } while ($count -gt 0) - - $reader.Close() - $writer.Flush() - $writer.Close() -} - diff --git a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.cmd b/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.cmd deleted file mode 100644 index 550040f..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.cmd +++ /dev/null @@ -1,19 +0,0 @@ -:: You need to specify <package-name> <target-name> as input to this command
-
-@set PACKAGE_NAME=%1
-@set TARGET=%2
-
-@echo Fetching %PACKAGE_NAME% from s3 ...
-
-@powershell -ExecutionPolicy ByPass -NoLogo -NoProfile -File "%~dp0fetch_file_from_s3.ps1" -sourceName %PACKAGE_NAME% -output %TARGET%
-:: A bug in powershell prevents the errorlevel code from being set when using the -File execution option
-:: We must therefore do our own failure analysis, basically make sure the file exists and is larger than 0 bytes:
-@if not exist %TARGET% goto ERROR_DOWNLOAD_FAILED
-@if %~z2==0 goto ERROR_DOWNLOAD_FAILED
-
-@exit /b 0
-
-:ERROR_DOWNLOAD_FAILED
-@echo Failed to download file from %1
-@echo Most likely because endpoint cannot be reached (VPN connection down?)
-@exit /b 1
\ No newline at end of file diff --git a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.ps1 b/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.ps1 deleted file mode 100644 index ad4c7d4..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_s3.ps1 +++ /dev/null @@ -1,60 +0,0 @@ -param(
-[Parameter(Mandatory=$true)][string]$sourceName=$null,
-[string]$output="out.exe"
-)
-$source = "http://packman.s3.amazonaws.com/" + $sourceName
-$filename = $output
-
-$triesLeft = 3
-
-do
-{
- $triesLeft -= 1
- $req = [System.Net.httpwebrequest]::Create($source)
- $req.cookiecontainer = New-Object System.net.CookieContainer
-
- try
- {
- Write-Host "Connecting to S3 ..."
- $res = $req.GetResponse()
- if($res.StatusCode -eq "OK") {
- Write-Host "Downloading ..."
- [int]$goal = $res.ContentLength
- $reader = $res.GetResponseStream()
- $writer = new-object System.IO.FileStream $fileName, "Create"
- [byte[]]$buffer = new-object byte[] 4096
- [int]$total = [int]$count = 0
- do
- {
- $count = $reader.Read($buffer, 0, $buffer.Length);
- $writer.Write($buffer, 0, $count);
- $total += $count
- if($goal -gt 0) {
- Write-Progress "Downloading $url" "Saving $total of $goal" -id 0 -percentComplete (($total/$goal)*100)
- } else {
- Write-Progress "Downloading $url" "Saving $total bytes..." -id 0
- }
- } while ($count -gt 0)
-
- $triesLeft = 0
- }
- }
- catch
- {
- Write-Host "Error connecting to S3!"
- Write-Host $_.Exception|format-list -force
- }
- finally
- {
- if ($reader)
- {
- $reader.Close()
- }
- if ($writer)
- {
- $writer.Flush()
- $writer.Close()
- }
- }
-} while ($triesLeft -gt 0)
-
diff --git a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_url.ps1 b/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_url.ps1 deleted file mode 100644 index 9abaa46..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/fetch_file_from_url.ps1 +++ /dev/null @@ -1,37 +0,0 @@ -param(
-[Parameter(Mandatory=$true)][string]$sourceUrl=$null,
-[Parameter(Mandatory=$true)][string]$output=$null
-)
-$source = $sourceUrl
-$filename = $output
-
-$req = [System.Net.httpwebrequest]::Create($source)
-$req.cookiecontainer = New-Object System.net.CookieContainer
-
-Write-Host "Connecting to $source ..."
-$res = $req.GetResponse()
-
-if($res.StatusCode -eq "OK") {
- Write-Host "Downloading ..."
- [int]$goal = $res.ContentLength
- $reader = $res.GetResponseStream()
- $writer = new-object System.IO.FileStream $fileName, "Create"
- [byte[]]$buffer = new-object byte[] 4096
- [int]$total = [int]$count = 0
- do
- {
- $count = $reader.Read($buffer, 0, $buffer.Length);
- $writer.Write($buffer, 0, $count);
- $total += $count
- if($goal -gt 0) {
- Write-Progress "Downloading $url" "Saving $total of $goal" -id 0 -percentComplete (($total/$goal)*100)
- } else {
- Write-Progress "Downloading $url" "Saving $total bytes..." -id 0
- }
- } while ($count -gt 0)
-
- $reader.Close()
- $writer.Flush()
- $writer.Close()
-}
-
diff --git a/PxShared/buildtools/packman/win-bootstrap/generate_temp_file_name.ps1 b/PxShared/buildtools/packman/win-bootstrap/generate_temp_file_name.ps1 deleted file mode 100644 index 896cf14..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/generate_temp_file_name.ps1 +++ /dev/null @@ -1,2 +0,0 @@ -$out = [System.IO.Path]::GetTempFileName()
-Write-Host $out
\ No newline at end of file diff --git a/PxShared/buildtools/packman/win-bootstrap/install_package.py b/PxShared/buildtools/packman/win-bootstrap/install_package.py deleted file mode 100644 index ce50a3e..0000000 --- a/PxShared/buildtools/packman/win-bootstrap/install_package.py +++ /dev/null @@ -1,39 +0,0 @@ -import logging
-import zipfile
-import tempfile
-import sys
-import shutil
-
-__author__ = 'hfannar'
-logging.basicConfig(level=logging.WARNING, format="%(message)s")
-logger = logging.getLogger('install_package')
-
-
-class TemporaryDirectory:
- def __init__(self):
- self.path = None
-
- def __enter__(self):
- self.path = tempfile.mkdtemp()
- return self.path
-
- def __exit__(self, type, value, traceback ):
- # Remove temporary data created
- shutil.rmtree(self.path)
-
-
-def install_package(package_src_path, package_dst_path):
- with zipfile.ZipFile(package_src_path, allowZip64=True) as zip_file, TemporaryDirectory() as temp_dir:
- zip_file.extractall(temp_dir)
- # Recursively copy (temp_dir will be automatically cleaned up on exit)
- try:
- # Recursive copy is needed because both package name and version folder could be missing in
- # target directory:
- shutil.copytree(temp_dir, package_dst_path)
- except OSError, exc:
- logger.warning("Directory %s already present, packaged installation aborted" % package_dst_path)
- else:
- logger.info("Package successfully installed to %s" % package_dst_path)
-
-
-install_package(sys.argv[1], sys.argv[2])
\ No newline at end of file |