mirror of
https://github.com/actions/runner-images.git
synced 2025-12-14 13:17:54 +00:00
Install the CodeQL bundle in the toolcache.
This commit is contained in:
19
images/linux/scripts/installers/codeql-bundle.sh
Normal file
19
images/linux/scripts/installers/codeql-bundle.sh
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
################################################################################
|
||||||
|
## File: codeql-bundle.sh
|
||||||
|
## Desc: Install the CodeQL CLI Bundle to the toolcache.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
# Retrieve the name of the CodeQL bundle preferred by the Action (in the format codeql-bundle-YYYYMMDD).
|
||||||
|
codeql_bundle_name="$(curl -sSL https://raw.githubusercontent.com/github/codeql-action/main/src/defaults.json | jq -r .bundleVersion)"
|
||||||
|
# Convert the bundle name to a version number (0.0.0-YYYYMMDD).
|
||||||
|
codeql_bundle_version="0.0.0-${codeql_bundle_name##*-}"
|
||||||
|
|
||||||
|
extraction_directory="$AGENT_TOOLSDIRECTORY/CodeQL/$codeql_bundle_version/x64"
|
||||||
|
mkdir -p "$extraction_directory"
|
||||||
|
|
||||||
|
>&2 echo "Downloading CodeQL bundle $codeql_bundle_version..."
|
||||||
|
curl -sSL "https://github.com/github/codeql-action/releases/download/$codeql_bundle_name/codeql-bundle.tar.gz" | tar -xzC "$extraction_directory"
|
||||||
|
|
||||||
|
# Test that the tool has been extracted successfully.
|
||||||
|
"$AGENT_TOOLSDIRECTORY/CodeQL/$codeql_bundle_version/x64/codeql/codeql" version
|
||||||
26
images/win/scripts/Installers/Install-CodeQLBundle.ps1
Normal file
26
images/win/scripts/Installers/Install-CodeQLBundle.ps1
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
################################################################################
|
||||||
|
## File: Install-CodeQLBundle.ps1
|
||||||
|
## Desc: Install the CodeQL CLI Bundle to the toolcache.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
Import-Module -Name ImageHelpers
|
||||||
|
|
||||||
|
# Retrieve the name of the CodeQL bundle preferred by the Action (in the format codeql-bundle-YYYYMMDD).
|
||||||
|
$CodeQLBundleName = (Invoke-WebRequest "https://raw.githubusercontent.com/github/codeql-action/main/src/defaults.json" | ConvertFrom-Json).bundleVersion
|
||||||
|
# Convert the bundle name to a version number (0.0.0-YYYYMMDD).
|
||||||
|
$CodeQLBundleVersion = "0.0.0-" + $CodeQLBundleName.split("-")[-1]
|
||||||
|
|
||||||
|
$ExtractionDirectory = "$Env:AGENT_TOOLSDIRECTORY/CodeQL/$CodeQLBundleVersion/x64"
|
||||||
|
New-Item -Path $ExtractionDirectory -ItemType Directory -Force | Out-Null
|
||||||
|
|
||||||
|
Write-Host "Downloading CodeQL bundle $CodeQLBundleVersion..."
|
||||||
|
$CodeQLBundlePath = Start-DownloadWithRetry -Url "https://github.com/github/codeql-action/releases/download/$CodeQLBundleName/codeql-bundle.tar.gz" -Name "codeql-bundle.tar.gz"
|
||||||
|
$DownloadDirectoryPath = (Get-Item $CodeQLBundlePath).Directory.FullName
|
||||||
|
Extract-7Zip -Path $CodeQLBundlePath -DestinationPath $DownloadDirectoryPath
|
||||||
|
Remove-Item -Path $CodeQLBundlePath
|
||||||
|
$UnGzipedCodeQLBundlePath = (Join-Path $DownloadDirectoryPath "codeql-bundle.tar")
|
||||||
|
Extract-7Zip -Path $UnGzipedCodeQLBundlePath -DestinationPath $ExtractionDirectory
|
||||||
|
Remove-Item -Path $UnGzipedCodeQLBundlePath
|
||||||
|
|
||||||
|
# Test that the tool has been extracted successfully.
|
||||||
|
& (Join-Path $ExtractionDirectory "codeql" "codeql.exe") version
|
||||||
Reference in New Issue
Block a user