Files
flutter-docker-image/script/setEnvironmentVariables.js
Eligio Mariño 008cce50a1 feat: pin Windows toolchain versions in config/version.json (#456)
- Extends the manifest-first discipline (already used for
Flutter/Android) to the Windows toolchain. `config/version.json` now
carries `windows.git`, `windows.vsBuildTools.cmakeProject`,
`windows.vsBuildTools.windows11Sdk.build`, and
`windows.vsBuildTools.vcTools`; `config/schema.cue` validates them via
new `#SemverQuad` and `#WindowsToolchain` definitions.

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-authored-by: verified-commit[bot] <180343340+verified-commit[bot]@users.noreply.github.com>
2026-05-22 20:07:24 +02:00

57 lines
1.6 KiB
JavaScript

module.exports = async ({ core }) => {
const { VERSION_MANIFEST, GITHUB_REPOSITORY_OWNER, IMAGE_REPOSITORY_NAME } =
process.env
if (!VERSION_MANIFEST) {
core.setFailed('Environment variable VERSION_MANIFEST is required.')
return false
}
if (!GITHUB_REPOSITORY_OWNER) {
core.setFailed('Environment variable GITHUB_REPOSITORY_OWNER is required.')
return false
}
if (!IMAGE_REPOSITORY_NAME) {
core.setFailed('Environment variable IMAGE_REPOSITORY_NAME is required.')
return false
}
const fs = require('fs')
const text = fs.readFileSync(VERSION_MANIFEST, 'utf8')
const data = JSON.parse(text)
const platforms = data.android.platforms
.map((platform) => platform.version)
.join(' ')
core.exportVariable('FLUTTER_VERSION', data.flutter.version)
core.exportVariable('FASTLANE_VERSION', data.fastlane.version)
core.exportVariable(
'ANDROID_BUILD_TOOLS_VERSION',
data.android.buildTools.version
)
core.exportVariable('ANDROID_PLATFORM_VERSIONS', platforms)
core.exportVariable('ANDROID_NDK_VERSION', data.android.ndk.version)
core.exportVariable('CMAKE_VERSION', data.android.cmake.version)
core.exportVariable('GIT_VERSION', data.windows.git.version)
core.exportVariable(
'VS_CMAKE_VERSION',
data.windows.vsBuildTools.cmakeProject.version
)
core.exportVariable(
'VS_WIN11SDK_BUILD',
data.windows.vsBuildTools.windows11Sdk.build
)
core.exportVariable(
'VS_VCTOOLS_VERSION',
data.windows.vsBuildTools.vcTools.version
)
core.exportVariable(
'IMAGE_REPOSITORY_PATH',
`${GITHUB_REPOSITORY_OWNER}/${IMAGE_REPOSITORY_NAME}`
)
return true
}