[chocolatey] Change version numbers to something that choco can handle
Because of https://github.com/chocolatey/chocolatey.org/issues/516, the
pre-release part of the version has to start with a character.
Change-Id: I903b63522377225366f1f7467e8878f0dbd3143c
Reviewed-on: https://dart-review.googlesource.com/c/recipes/+/143921
Reviewed-by: William Hesse <whesse@google.com>
diff --git a/recipes/dart/chocolatey.expected/beta.json b/recipes/dart/chocolatey.expected/beta.json
new file mode 100644
index 0000000..eb3faba
--- /dev/null
+++ b/recipes/dart/chocolatey.expected/beta.json
@@ -0,0 +1,28 @@
+[
+ {
+ "cmd": [
+ "[CLEANUP]\\chocolatey\\choco",
+ "pack",
+ "version=1.2.3.45-c-006-beta"
+ ],
+ "cwd": "[START_DIR]\\chocolatey-packages\\dart-sdk",
+ "env": {
+ "ChocolateyBinRoot": "[CLEANUP]\\bin_root",
+ "ChocolateyInstall": "[CLEANUP]\\chocolatey"
+ },
+ "name": "choco pack"
+ },
+ {
+ "cmd": [
+ "C:\\\\WINDOWS\\\\system32\\\\WindowsPowerShell\\\\v1.0\\\\powershell.exe",
+ "-Command",
+ "$secret = cat [CLEANUP]\\chocolatey.key; [CLEANUP]\\chocolatey\\choco push -k=\"$secret\" dart-sdk.1.2.3.45-c-006-beta.nupkg"
+ ],
+ "cwd": "[START_DIR]\\chocolatey-packages\\dart-sdk",
+ "env": {
+ "ChocolateyBinRoot": "[CLEANUP]\\bin_root",
+ "ChocolateyInstall": "[CLEANUP]\\chocolatey"
+ },
+ "name": "choco push"
+ }
+]
\ No newline at end of file
diff --git a/recipes/dart/chocolatey.expected/dev.json b/recipes/dart/chocolatey.expected/dev.json
index ab1da9b..e036459 100644
--- a/recipes/dart/chocolatey.expected/dev.json
+++ b/recipes/dart/chocolatey.expected/dev.json
@@ -3,7 +3,7 @@
"cmd": [
"[CLEANUP]\\chocolatey\\choco",
"pack",
- "version=1.2.3-045-000-dev"
+ "version=1.2.3.45-c-000-dev"
],
"cwd": "[START_DIR]\\chocolatey-packages\\dart-sdk",
"env": {
@@ -16,7 +16,7 @@
"cmd": [
"C:\\\\WINDOWS\\\\system32\\\\WindowsPowerShell\\\\v1.0\\\\powershell.exe",
"-Command",
- "$secret = cat [CLEANUP]\\chocolatey.key; [CLEANUP]\\chocolatey\\choco push -k=\"$secret\" dart-sdk.1.2.3-045-000-dev.nupkg"
+ "$secret = cat [CLEANUP]\\chocolatey.key; [CLEANUP]\\chocolatey\\choco push -k=\"$secret\" dart-sdk.1.2.3.45-c-000-dev.nupkg"
],
"cwd": "[START_DIR]\\chocolatey-packages\\dart-sdk",
"env": {
diff --git a/recipes/dart/chocolatey.py b/recipes/dart/chocolatey.py
index f4aaa9c..b921a27 100644
--- a/recipes/dart/chocolatey.py
+++ b/recipes/dart/chocolatey.py
@@ -80,12 +80,14 @@
if channel != 'stable':
# todo(athom): remove when chocolatey supports semver 2.0.0
# See https://github.com/chocolatey/choco/issues/1610
- # 2.1.4-22.13.dev -> 2.1.4-022-013-dev
+ # todo(athom): remove extra 'c' character when chocolatey bug is fixed:
+ # See https://github.com/chocolatey/chocolatey.org/issues/516
+ # 2.1.4-22.13.dev -> 2.1.4.22-c-013-dev
(version, build) = version.split('-')
parts = build.split('.')
# pad with zeros, because chocolatey compares pre-release alphabetically
- version = "%s-%s-%s-%s" % (
- (version,) + tuple(part.zfill(3) for part in parts))
+ version = "%s.%s-c-%s-%s" % (
+ (version, parts.pop(0)) + tuple(part.zfill(3) for part in parts))
api.step('choco pack', [choco, 'pack', 'version=%s' % version])
@@ -103,9 +105,9 @@
api.properties.generic(channel='dev', version='1.2.3-45.0.dev'),
api.post_process(Filter('choco pack', 'choco push')),
api.post_process(StepCommandContains, 'choco pack',
- ['version=1.2.3-045-000-dev']),
+ ['version=1.2.3.45-c-000-dev']),
api.post_process(StepCommandRE, 'choco push',
- ['.*', '.*', r'.*1\.2\.3-045-000-dev.nupkg']),
+ ['.*', '.*', r'.*1\.2\.3\.45-c-000-dev.nupkg']),
)
yield api.test(
'beta',
@@ -113,9 +115,9 @@
api.properties.generic(channel='beta', version='1.2.3-45.6.beta'),
api.post_process(Filter('choco pack', 'choco push')),
api.post_process(StepCommandContains, 'choco pack',
- ['version=1.2.3-045-006-beta']),
+ ['version=1.2.3.45-c-006-beta']),
api.post_process(StepCommandRE, 'choco push',
- ['.*', '.*', r'.*1\.2\.3-045-006-beta.nupkg']),
+ ['.*', '.*', r'.*1\.2\.3\.45-c-006-beta.nupkg']),
)
yield api.test(
'release',