parseAndValidatePulumiVersion function
PulumiVersion?
parseAndValidatePulumiVersion(
- PulumiVersion minimumVersion,
- String currentVersion,
- bool optOut
Parses and validates currentVersion against minimumVersion.
Implementation
PulumiVersion? parseAndValidatePulumiVersion(
PulumiVersion minimumVersion,
String currentVersion,
bool optOut,
) {
final version = PulumiVersion.tryParse(currentVersion);
if (optOut) {
return version;
}
if (version == null) {
throw const AutomationInvalidVersionException(
'Could not parse the Pulumi CLI version. This is probably an internal '
'error. If you are sure you have the correct version, set '
'PULUMI_AUTOMATION_API_SKIP_VERSION_CHECK=true.',
);
}
if (minimumVersion.major < version.major) {
throw AutomationInvalidVersionException(
'Major version mismatch. You are using Pulumi CLI version '
'$currentVersion with Automation SDK v${minimumVersion.major}. Please '
'update the SDK.',
);
}
if (minimumVersion.compareTo(version) > 0) {
throw AutomationInvalidVersionException(
'Minimum version requirement failed. The minimum CLI version requirement '
'is $minimumVersion, your current CLI version is $currentVersion. '
'Please update the Pulumi CLI.',
);
}
return version;
}