shipthis 0.1.53 → 0.1.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/README.md +7 -8
  2. package/assets/markdown/apple-login-notice.md.ejs +9 -0
  3. package/dist/{AppleBundleIdDetails-CJuXU0MW.js → AppleBundleIdDetails-Ch0IGOPO.js} +4 -4
  4. package/dist/{Command-U8TqM6Zs.js → Command-CKwGlf4L.js} +2 -2
  5. package/dist/{CommandGame-hqY43vRo.js → CommandGame-DoUC7C_q.js} +3 -3
  6. package/dist/{Create-C--pV63B.js → Create-BMZPvZ4G.js} +2 -2
  7. package/dist/{CredentialDetailsView-DUpRMBiJ.js → CredentialDetailsView-DrAjwTB_.js} +1 -1
  8. package/dist/{ErrorBox-DLRncz8K.js → ErrorBox-DDlTtBXo.js} +1 -1
  9. package/dist/{GameStatus-DRheSF2O.js → GameStatus-BbGB_Nb4.js} +2 -2
  10. package/dist/{Import-CTgEEj_f.js → Import-Cd6bNM3_.js} +3 -3
  11. package/dist/{JobLogTail-7oEEQxIO.js → JobLogTail-Bnxjh42s.js} +3 -3
  12. package/dist/{JobProgress-DwvTh5rS.js → JobProgress-BMKEhMAf.js} +26 -4
  13. package/dist/{JobStatusTable-DBM_PBPQ.js → JobStatusTable-CPKhHXoe.js} +3 -3
  14. package/dist/{ProjectCredentialsTable-BamSpb5B.js → ProjectCredentialsTable-TTXHSq6Y.js} +2 -2
  15. package/dist/{UserCredentialsTable-N_fIOf8N.js → UserCredentialsTable-Nnr2vBR7.js} +2 -2
  16. package/dist/{baseAppleCommand-oekzwny6.js → baseAppleCommand-BXD1j8r9.js} +1 -1
  17. package/dist/{baseCommand-ByzFMr-B.js → baseCommand-BBX7e4wG.js} +30 -6
  18. package/dist/{baseGameAndroidCommand-GvH1QAja.js → baseGameAndroidCommand-DUH9kKXh.js} +3 -3
  19. package/dist/{baseGameCommand-D8Z3SaiJ.js → baseGameCommand-DDamAWma.js} +4 -3
  20. package/dist/commands/apiKey/create.js +4 -4
  21. package/dist/commands/apiKey/list.js +4 -4
  22. package/dist/commands/apiKey/revoke.js +4 -4
  23. package/dist/commands/apple/apiKey/create.js +7 -7
  24. package/dist/commands/apple/apiKey/delete.js +5 -5
  25. package/dist/commands/apple/apiKey/export.js +6 -6
  26. package/dist/commands/apple/apiKey/import.js +6 -6
  27. package/dist/commands/apple/apiKey/status.js +5 -5
  28. package/dist/commands/apple/certificate/create.js +7 -7
  29. package/dist/commands/apple/certificate/delete.js +5 -5
  30. package/dist/commands/apple/certificate/export.js +6 -6
  31. package/dist/commands/apple/certificate/import.js +6 -6
  32. package/dist/commands/apple/certificate/show.js +6 -6
  33. package/dist/commands/apple/certificate/status.js +5 -5
  34. package/dist/commands/apple/login.js +33 -26
  35. package/dist/commands/apple/status.js +4 -4
  36. package/dist/commands/dashboard.js +3 -3
  37. package/dist/commands/game/android/apiKey/connect.js +10 -10
  38. package/dist/commands/game/android/apiKey/create.js +13 -13
  39. package/dist/commands/game/android/apiKey/delete.js +5 -5
  40. package/dist/commands/game/android/apiKey/export.js +7 -7
  41. package/dist/commands/game/android/apiKey/import.js +7 -7
  42. package/dist/commands/game/android/apiKey/invite.js +6 -6
  43. package/dist/commands/game/android/apiKey/policy.js +4 -4
  44. package/dist/commands/game/android/apiKey/show.js +9 -9
  45. package/dist/commands/game/android/apiKey/status.js +7 -7
  46. package/dist/commands/game/android/keyStore/create.js +9 -9
  47. package/dist/commands/game/android/keyStore/delete.js +5 -5
  48. package/dist/commands/game/android/keyStore/export.js +6 -6
  49. package/dist/commands/game/android/keyStore/import.js +10 -10
  50. package/dist/commands/game/android/keyStore/status.js +6 -6
  51. package/dist/commands/game/android/status.js +3 -3
  52. package/dist/commands/game/build/download.js +4 -4
  53. package/dist/commands/game/build/list.js +6 -6
  54. package/dist/commands/game/create.js +3 -3
  55. package/dist/commands/game/details.js +5 -5
  56. package/dist/commands/game/export.js +3 -3
  57. package/dist/commands/game/ios/app/addTester.js +5 -5
  58. package/dist/commands/game/ios/app/create.js +4 -4
  59. package/dist/commands/game/ios/app/status.js +7 -7
  60. package/dist/commands/game/ios/app/sync.js +5 -5
  61. package/dist/commands/game/ios/profile/create.js +7 -7
  62. package/dist/commands/game/ios/profile/delete.js +5 -5
  63. package/dist/commands/game/ios/profile/export.js +6 -6
  64. package/dist/commands/game/ios/profile/import.js +6 -6
  65. package/dist/commands/game/ios/profile/show.js +8 -8
  66. package/dist/commands/game/ios/profile/status.js +7 -7
  67. package/dist/commands/game/ios/status.js +10 -10
  68. package/dist/commands/game/ios/wizard.js +4 -4
  69. package/dist/commands/game/job/list.js +4 -4
  70. package/dist/commands/game/job/logs.js +3 -3
  71. package/dist/commands/game/job/status.js +7 -7
  72. package/dist/commands/game/list.js +4 -4
  73. package/dist/commands/game/ship.js +11 -11
  74. package/dist/commands/game/status.js +7 -7
  75. package/dist/commands/game/wizard.js +16 -16
  76. package/dist/commands/internal/fastlane.js +3 -3
  77. package/dist/commands/internal/readme.js +3 -3
  78. package/dist/commands/login.js +3 -3
  79. package/dist/commands/status.js +4 -4
  80. package/dist/commands/util/android-build-method.js +3 -3
  81. package/dist/commands/util/glass.js +2 -2
  82. package/dist/{export-DQ2Qh09K.js → export-C_FknMUp.js} +1 -1
  83. package/dist/{import-sVng7ksa.js → import-DaK7xzxS.js} +1 -1
  84. package/dist/{index-DwEIHNF1.js → index-BcXx8TNS.js} +4 -4
  85. package/dist/{index-N3S598Wc.js → index-DGlnFPWY.js} +1 -1
  86. package/dist/{index-Dz17cbww.js → index-SfRGUQOY.js} +5 -5
  87. package/dist/{upload-DoiCgi3a.js → upload-CwHqf-A6.js} +1 -1
  88. package/dist/{useAppleApp-J4dx2Wyz.js → useAppleApp-DwcXThPv.js} +1 -1
  89. package/dist/{useAppleBundleId-DUdnv1T0.js → useAppleBundleId-Bojf5t9g.js} +1 -1
  90. package/dist/{useAppleProfiles-DDdAtArV.js → useAppleProfiles-ClGtQU78.js} +1 -1
  91. package/dist/{useGoogleStatus-DciPkOMu.js → useGoogleStatus-D1VbWkVy.js} +2 -2
  92. package/dist/{useProjectCredentials-B4cjpmpB.js → useProjectCredentials-CkjJTltI.js} +2 -2
  93. package/dist/{useWebSocket-B1hQm8Ak.js → useWebSocket-xkJFqoYf.js} +1 -1
  94. package/docs/apple/login.md +9 -3
  95. package/docs/autocomplete.md +1 -1
  96. package/docs/game/android/apiKey/invite.md +3 -3
  97. package/docs/game/android/apiKey.md +36 -7
  98. package/docs/game/create.md +15 -10
  99. package/docs/game/details.md +6 -3
  100. package/docs/game/ios/app/addTester.md +10 -5
  101. package/docs/game/ios/app.md +32 -2
  102. package/docs/game/ios.md +1 -0
  103. package/docs/game/ship.md +6 -2
  104. package/docs/game/status.md +6 -2
  105. package/docs/game/wizard.md +2 -5
  106. package/npm-shrinkwrap.json +139 -635
  107. package/oclif.manifest.json +251 -245
  108. package/package.json +3 -2
@@ -257,7 +257,7 @@
257
257
  "apple:login": {
258
258
  "aliases": [],
259
259
  "args": {},
260
- "description": "Authenticate with Apple - saves the session to the auth file",
260
+ "description": "Authenticate with Apple - saves the session to the auth file.\n\nYour Apple password is sent only to Apple, never to ShipThis. Only the resulting session cookies are saved locally. Read the source: https://github.com/shipth-is/cli/blob/main/src/commands/apple/login.ts",
261
261
  "examples": [
262
262
  "<%= config.bin %> <%= command.id %>",
263
263
  "<%= config.bin %> <%= command.id %> --force --appleEmail me@email.nowhere",
@@ -387,7 +387,6 @@
387
387
  "type": "option"
388
388
  },
389
389
  "gcpProjectId": {
390
- "char": "g",
391
390
  "description": "Set the GCP project ID",
392
391
  "name": "gcpProjectId",
393
392
  "hasDynamicHelp": false,
@@ -440,6 +439,10 @@
440
439
  "name": "useDemoCredentials",
441
440
  "hasDynamicHelp": false,
442
441
  "multiple": false,
442
+ "options": [
443
+ "true",
444
+ "false"
445
+ ],
443
446
  "type": "option"
444
447
  }
445
448
  },
@@ -518,7 +521,6 @@
518
521
  "type": "option"
519
522
  },
520
523
  "gcpProjectId": {
521
- "char": "g",
522
524
  "description": "Set the GCP project ID",
523
525
  "name": "gcpProjectId",
524
526
  "hasDynamicHelp": false,
@@ -571,6 +573,10 @@
571
573
  "name": "useDemoCredentials",
572
574
  "hasDynamicHelp": false,
573
575
  "multiple": false,
576
+ "options": [
577
+ "true",
578
+ "false"
579
+ ],
574
580
  "type": "option"
575
581
  }
576
582
  },
@@ -1942,58 +1948,10 @@
1942
1948
  "status.js"
1943
1949
  ]
1944
1950
  },
1945
- "game:android:apiKey:connect": {
1946
- "aliases": [],
1947
- "args": {},
1948
- "description": "Connects ShipThis with Google for managing Service Account API Keys for an Android game",
1949
- "examples": [
1950
- "<%= config.bin %> <%= command.id %>",
1951
- "<%= config.bin %> <%= command.id %> --force",
1952
- "<%= config.bin %> <%= command.id %> --disconnect"
1953
- ],
1954
- "flags": {
1955
- "gameId": {
1956
- "char": "g",
1957
- "description": "The ID of the game",
1958
- "name": "gameId",
1959
- "hasDynamicHelp": false,
1960
- "multiple": false,
1961
- "type": "option"
1962
- },
1963
- "disconnect": {
1964
- "char": "d",
1965
- "name": "disconnect",
1966
- "allowNo": false,
1967
- "type": "boolean"
1968
- },
1969
- "force": {
1970
- "char": "f",
1971
- "name": "force",
1972
- "allowNo": false,
1973
- "type": "boolean"
1974
- }
1975
- },
1976
- "hasDynamicHelp": false,
1977
- "hiddenAliases": [],
1978
- "id": "game:android:apiKey:connect",
1979
- "pluginAlias": "shipthis",
1980
- "pluginName": "shipthis",
1981
- "pluginType": "core",
1982
- "strict": true,
1983
- "isESM": true,
1984
- "relativePath": [
1985
- "dist",
1986
- "commands",
1987
- "game",
1988
- "android",
1989
- "apiKey",
1990
- "connect.js"
1991
- ]
1992
- },
1993
- "game:android:apiKey:create": {
1951
+ "game:android:keyStore:create": {
1994
1952
  "aliases": [],
1995
1953
  "args": {},
1996
- "description": "Creates a new Android Service Account API Key for a game",
1954
+ "description": "Creates a new Android Keystore for a game",
1997
1955
  "examples": [
1998
1956
  "<%= config.bin %> <%= command.id %>",
1999
1957
  "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
@@ -2012,18 +1970,11 @@
2012
1970
  "name": "force",
2013
1971
  "allowNo": false,
2014
1972
  "type": "boolean"
2015
- },
2016
- "waitForAuth": {
2017
- "char": "w",
2018
- "description": "Wait for Google Authentication (10 mins).",
2019
- "name": "waitForAuth",
2020
- "allowNo": false,
2021
- "type": "boolean"
2022
1973
  }
2023
1974
  },
2024
1975
  "hasDynamicHelp": false,
2025
1976
  "hiddenAliases": [],
2026
- "id": "game:android:apiKey:create",
1977
+ "id": "game:android:keyStore:create",
2027
1978
  "pluginAlias": "shipthis",
2028
1979
  "pluginName": "shipthis",
2029
1980
  "pluginType": "core",
@@ -2034,14 +1985,14 @@
2034
1985
  "commands",
2035
1986
  "game",
2036
1987
  "android",
2037
- "apiKey",
1988
+ "keyStore",
2038
1989
  "create.js"
2039
1990
  ]
2040
1991
  },
2041
- "game:android:apiKey:delete": {
1992
+ "game:android:keyStore:delete": {
2042
1993
  "aliases": [],
2043
1994
  "args": {},
2044
- "description": "Delete the active Android API Key from ShipThis",
1995
+ "description": "Delete the active Android KeyStore from ShipThis",
2045
1996
  "examples": [
2046
1997
  "<%= config.bin %> <%= command.id %>",
2047
1998
  "<%= config.bin %> <%= command.id %> --immediate --iAmSure"
@@ -2074,7 +2025,7 @@
2074
2025
  },
2075
2026
  "hasDynamicHelp": false,
2076
2027
  "hiddenAliases": [],
2077
- "id": "game:android:apiKey:delete",
2028
+ "id": "game:android:keyStore:delete",
2078
2029
  "pluginAlias": "shipthis",
2079
2030
  "pluginName": "shipthis",
2080
2031
  "pluginType": "core",
@@ -2085,11 +2036,11 @@
2085
2036
  "commands",
2086
2037
  "game",
2087
2038
  "android",
2088
- "apiKey",
2039
+ "keyStore",
2089
2040
  "delete.js"
2090
2041
  ]
2091
2042
  },
2092
- "game:android:apiKey:export": {
2043
+ "game:android:keyStore:export": {
2093
2044
  "aliases": [],
2094
2045
  "args": {
2095
2046
  "file": {
@@ -2098,7 +2049,7 @@
2098
2049
  "required": true
2099
2050
  }
2100
2051
  },
2101
- "description": "Saves the current Android Service Account API Key to a ZIP file",
2052
+ "description": "Saves the current Android Keystore to a ZIP file",
2102
2053
  "examples": [
2103
2054
  "<%= config.bin %> <%= command.id %> keyStore.zip"
2104
2055
  ],
@@ -2121,41 +2072,101 @@
2121
2072
  },
2122
2073
  "hasDynamicHelp": false,
2123
2074
  "hiddenAliases": [],
2124
- "id": "game:android:apiKey:export",
2075
+ "id": "game:android:keyStore:export",
2125
2076
  "pluginAlias": "shipthis",
2126
2077
  "pluginName": "shipthis",
2127
2078
  "pluginType": "core",
2128
2079
  "strict": true,
2080
+ "enableJsonFlag": false,
2129
2081
  "isESM": true,
2130
2082
  "relativePath": [
2131
2083
  "dist",
2132
2084
  "commands",
2133
2085
  "game",
2134
2086
  "android",
2135
- "apiKey",
2087
+ "keyStore",
2136
2088
  "export.js"
2137
2089
  ]
2138
2090
  },
2139
- "game:android:apiKey:import": {
2091
+ "game:android:keyStore:import": {
2140
2092
  "aliases": [],
2141
2093
  "args": {
2142
2094
  "file": {
2143
- "description": "Name of the ZIP file to import (must be in the same format as the export)",
2095
+ "description": "Path to the ZIP file to import (must be in the same format as the export)",
2144
2096
  "name": "file",
2145
- "required": true
2097
+ "required": false
2146
2098
  }
2147
2099
  },
2148
- "description": "Imports an Android Service Account API Key to your ShipThis account for the specified game.",
2100
+ "description": "Imports an Android Keystore to your ShipThis account for the specified game.",
2149
2101
  "examples": [
2150
- "<%= config.bin %> <%= command.id %>"
2102
+ "<%= config.bin %> <%= command.id %> path/to/import.zip -g abfd5b00",
2103
+ "<%= config.bin %> <%= command.id %> --jksFile path/to/file.jks --keystorePassword yourpass --keyPassword yourkeypass"
2151
2104
  ],
2152
2105
  "flags": {
2106
+ "gameId": {
2107
+ "char": "g",
2108
+ "description": "The ID of the game",
2109
+ "name": "gameId",
2110
+ "hasDynamicHelp": false,
2111
+ "multiple": false,
2112
+ "type": "option"
2113
+ },
2153
2114
  "force": {
2154
2115
  "char": "f",
2116
+ "description": "Overwrite any existing keystore without confirmation",
2155
2117
  "name": "force",
2156
2118
  "allowNo": false,
2157
2119
  "type": "boolean"
2158
2120
  },
2121
+ "jksFile": {
2122
+ "description": "Path to the JKS file to import (requires passwords)",
2123
+ "name": "jksFile",
2124
+ "hasDynamicHelp": false,
2125
+ "multiple": false,
2126
+ "type": "option"
2127
+ },
2128
+ "keyPassword": {
2129
+ "description": "Key alias password (required when using --jksFile)",
2130
+ "name": "keyPassword",
2131
+ "hasDynamicHelp": false,
2132
+ "multiple": false,
2133
+ "type": "option"
2134
+ },
2135
+ "keystorePassword": {
2136
+ "description": "Keystore password (required when using --jksFile)",
2137
+ "name": "keystorePassword",
2138
+ "hasDynamicHelp": false,
2139
+ "multiple": false,
2140
+ "type": "option"
2141
+ }
2142
+ },
2143
+ "hasDynamicHelp": false,
2144
+ "hiddenAliases": [],
2145
+ "id": "game:android:keyStore:import",
2146
+ "pluginAlias": "shipthis",
2147
+ "pluginName": "shipthis",
2148
+ "pluginType": "core",
2149
+ "strict": true,
2150
+ "enableJsonFlag": false,
2151
+ "isESM": true,
2152
+ "relativePath": [
2153
+ "dist",
2154
+ "commands",
2155
+ "game",
2156
+ "android",
2157
+ "keyStore",
2158
+ "import.js"
2159
+ ]
2160
+ },
2161
+ "game:android:keyStore:status": {
2162
+ "aliases": [],
2163
+ "args": {},
2164
+ "description": "Displays the status of the Android Keystore for a specific game.",
2165
+ "examples": [
2166
+ "<%= config.bin %> <%= command.id %>",
2167
+ "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
2168
+ ],
2169
+ "flags": {
2159
2170
  "gameId": {
2160
2171
  "char": "g",
2161
2172
  "description": "The ID of the game",
@@ -2167,33 +2178,30 @@
2167
2178
  },
2168
2179
  "hasDynamicHelp": false,
2169
2180
  "hiddenAliases": [],
2170
- "id": "game:android:apiKey:import",
2181
+ "id": "game:android:keyStore:status",
2171
2182
  "pluginAlias": "shipthis",
2172
2183
  "pluginName": "shipthis",
2173
2184
  "pluginType": "core",
2174
2185
  "strict": true,
2186
+ "enableJsonFlag": false,
2175
2187
  "isESM": true,
2176
2188
  "relativePath": [
2177
2189
  "dist",
2178
2190
  "commands",
2179
2191
  "game",
2180
2192
  "android",
2181
- "apiKey",
2182
- "import.js"
2193
+ "keyStore",
2194
+ "status.js"
2183
2195
  ]
2184
2196
  },
2185
- "game:android:apiKey:invite": {
2197
+ "game:android:apiKey:connect": {
2186
2198
  "aliases": [],
2187
- "args": {
2188
- "accountId": {
2189
- "description": "The Google Play Account ID",
2190
- "name": "accountId",
2191
- "required": false
2192
- }
2193
- },
2194
- "description": "Invites the Service Account to your Google Play Account.",
2199
+ "args": {},
2200
+ "description": "Connects ShipThis with Google for managing Service Account API Keys for an Android game",
2195
2201
  "examples": [
2196
- "<%= config.bin %> <%= command.id %>"
2202
+ "<%= config.bin %> <%= command.id %>",
2203
+ "<%= config.bin %> <%= command.id %> --force",
2204
+ "<%= config.bin %> <%= command.id %> --disconnect"
2197
2205
  ],
2198
2206
  "flags": {
2199
2207
  "gameId": {
@@ -2204,31 +2212,22 @@
2204
2212
  "multiple": false,
2205
2213
  "type": "option"
2206
2214
  },
2207
- "prompt": {
2208
- "char": "p",
2209
- "description": "Prompt for the Google Play Account ID",
2210
- "name": "prompt",
2211
- "allowNo": false,
2212
- "type": "boolean"
2213
- },
2214
- "waitForAuth": {
2215
- "char": "w",
2216
- "description": "Wait for Google Authentication (10 mins).",
2217
- "name": "waitForAuth",
2215
+ "disconnect": {
2216
+ "char": "d",
2217
+ "name": "disconnect",
2218
2218
  "allowNo": false,
2219
2219
  "type": "boolean"
2220
2220
  },
2221
- "waitForGoogleApp": {
2222
- "char": "p",
2223
- "description": "Waits for the Google Play app to be created (10 mins).",
2224
- "name": "waitForGoogleApp",
2221
+ "force": {
2222
+ "char": "f",
2223
+ "name": "force",
2225
2224
  "allowNo": false,
2226
2225
  "type": "boolean"
2227
2226
  }
2228
2227
  },
2229
2228
  "hasDynamicHelp": false,
2230
2229
  "hiddenAliases": [],
2231
- "id": "game:android:apiKey:invite",
2230
+ "id": "game:android:apiKey:connect",
2232
2231
  "pluginAlias": "shipthis",
2233
2232
  "pluginName": "shipthis",
2234
2233
  "pluginType": "core",
@@ -2240,17 +2239,16 @@
2240
2239
  "game",
2241
2240
  "android",
2242
2241
  "apiKey",
2243
- "invite.js"
2242
+ "connect.js"
2244
2243
  ]
2245
2244
  },
2246
- "game:android:apiKey:policy": {
2245
+ "game:android:apiKey:create": {
2247
2246
  "aliases": [],
2248
2247
  "args": {},
2249
- "description": "Gets and sets the iam.disableServiceAccountKeyCreation policy for your Google Organization",
2248
+ "description": "Creates a new Android Service Account API Key for a game",
2250
2249
  "examples": [
2251
2250
  "<%= config.bin %> <%= command.id %>",
2252
- "<%= config.bin %> <%= command.id %> --enforce",
2253
- "<%= config.bin %> <%= command.id %> --revoke"
2251
+ "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
2254
2252
  ],
2255
2253
  "flags": {
2256
2254
  "gameId": {
@@ -2261,23 +2259,9 @@
2261
2259
  "multiple": false,
2262
2260
  "type": "option"
2263
2261
  },
2264
- "enforce": {
2265
- "char": "e",
2266
- "description": "Enforces the policy",
2267
- "exclusive": [
2268
- "revoke"
2269
- ],
2270
- "name": "enforce",
2271
- "allowNo": false,
2272
- "type": "boolean"
2273
- },
2274
- "revoke": {
2275
- "char": "r",
2276
- "description": "Revokes the policy",
2277
- "exclusive": [
2278
- "enforce"
2279
- ],
2280
- "name": "revoke",
2262
+ "force": {
2263
+ "char": "f",
2264
+ "name": "force",
2281
2265
  "allowNo": false,
2282
2266
  "type": "boolean"
2283
2267
  },
@@ -2291,7 +2275,7 @@
2291
2275
  },
2292
2276
  "hasDynamicHelp": false,
2293
2277
  "hiddenAliases": [],
2294
- "id": "game:android:apiKey:policy",
2278
+ "id": "game:android:apiKey:create",
2295
2279
  "pluginAlias": "shipthis",
2296
2280
  "pluginName": "shipthis",
2297
2281
  "pluginType": "core",
@@ -2303,22 +2287,16 @@
2303
2287
  "game",
2304
2288
  "android",
2305
2289
  "apiKey",
2306
- "policy.js"
2290
+ "create.js"
2307
2291
  ]
2308
2292
  },
2309
- "game:android:apiKey:show": {
2293
+ "game:android:apiKey:delete": {
2310
2294
  "aliases": [],
2311
- "args": {
2312
- "id": {
2313
- "description": "Credential ID (full or short prefix). Defaults to the active key.",
2314
- "name": "id",
2315
- "required": false
2316
- }
2317
- },
2318
- "description": "Shows expanded details (service account email) for the Android Service Account API Key in your ShipThis account.",
2295
+ "args": {},
2296
+ "description": "Delete the active Android API Key from ShipThis",
2319
2297
  "examples": [
2320
2298
  "<%= config.bin %> <%= command.id %>",
2321
- "<%= config.bin %> <%= command.id %> d69f28c5"
2299
+ "<%= config.bin %> <%= command.id %> --immediate --iAmSure"
2322
2300
  ],
2323
2301
  "flags": {
2324
2302
  "gameId": {
@@ -2328,11 +2306,27 @@
2328
2306
  "hasDynamicHelp": false,
2329
2307
  "multiple": false,
2330
2308
  "type": "option"
2309
+ },
2310
+ "immediate": {
2311
+ "char": "i",
2312
+ "description": "Remove from storage immediately (rather than waiting for automatic cleanup - cannot be undone)",
2313
+ "name": "immediate",
2314
+ "required": false,
2315
+ "allowNo": false,
2316
+ "type": "boolean"
2317
+ },
2318
+ "iAmSure": {
2319
+ "char": "y",
2320
+ "description": "I am sure I want to do this - do not prompt me",
2321
+ "name": "iAmSure",
2322
+ "required": false,
2323
+ "allowNo": false,
2324
+ "type": "boolean"
2331
2325
  }
2332
2326
  },
2333
2327
  "hasDynamicHelp": false,
2334
2328
  "hiddenAliases": [],
2335
- "id": "game:android:apiKey:show",
2329
+ "id": "game:android:apiKey:delete",
2336
2330
  "pluginAlias": "shipthis",
2337
2331
  "pluginName": "shipthis",
2338
2332
  "pluginType": "core",
@@ -2344,18 +2338,30 @@
2344
2338
  "game",
2345
2339
  "android",
2346
2340
  "apiKey",
2347
- "show.js"
2341
+ "delete.js"
2348
2342
  ]
2349
2343
  },
2350
- "game:android:apiKey:status": {
2344
+ "game:android:apiKey:export": {
2351
2345
  "aliases": [],
2352
- "args": {},
2353
- "description": "Displays the status of the Android Service Account API Key for a specific game.",
2346
+ "args": {
2347
+ "file": {
2348
+ "description": "Name of the ZIP file to create",
2349
+ "name": "file",
2350
+ "required": true
2351
+ }
2352
+ },
2353
+ "description": "Saves the current Android Service Account API Key to a ZIP file",
2354
2354
  "examples": [
2355
- "<%= config.bin %> <%= command.id %>",
2356
- "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
2355
+ "<%= config.bin %> <%= command.id %> keyStore.zip"
2357
2356
  ],
2358
2357
  "flags": {
2358
+ "force": {
2359
+ "char": "f",
2360
+ "description": "Overwrite the file if it already exists",
2361
+ "name": "force",
2362
+ "allowNo": false,
2363
+ "type": "boolean"
2364
+ },
2359
2365
  "gameId": {
2360
2366
  "char": "g",
2361
2367
  "description": "The ID of the game",
@@ -2367,7 +2373,7 @@
2367
2373
  },
2368
2374
  "hasDynamicHelp": false,
2369
2375
  "hiddenAliases": [],
2370
- "id": "game:android:apiKey:status",
2376
+ "id": "game:android:apiKey:export",
2371
2377
  "pluginAlias": "shipthis",
2372
2378
  "pluginName": "shipthis",
2373
2379
  "pluginType": "core",
@@ -2379,18 +2385,29 @@
2379
2385
  "game",
2380
2386
  "android",
2381
2387
  "apiKey",
2382
- "status.js"
2388
+ "export.js"
2383
2389
  ]
2384
2390
  },
2385
- "game:android:keyStore:create": {
2391
+ "game:android:apiKey:import": {
2386
2392
  "aliases": [],
2387
- "args": {},
2388
- "description": "Creates a new Android Keystore for a game",
2393
+ "args": {
2394
+ "file": {
2395
+ "description": "Name of the ZIP file to import (must be in the same format as the export)",
2396
+ "name": "file",
2397
+ "required": true
2398
+ }
2399
+ },
2400
+ "description": "Imports an Android Service Account API Key to your ShipThis account for the specified game.",
2389
2401
  "examples": [
2390
- "<%= config.bin %> <%= command.id %>",
2391
- "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
2402
+ "<%= config.bin %> <%= command.id %>"
2392
2403
  ],
2393
2404
  "flags": {
2405
+ "force": {
2406
+ "char": "f",
2407
+ "name": "force",
2408
+ "allowNo": false,
2409
+ "type": "boolean"
2410
+ },
2394
2411
  "gameId": {
2395
2412
  "char": "g",
2396
2413
  "description": "The ID of the game",
@@ -2398,17 +2415,11 @@
2398
2415
  "hasDynamicHelp": false,
2399
2416
  "multiple": false,
2400
2417
  "type": "option"
2401
- },
2402
- "force": {
2403
- "char": "f",
2404
- "name": "force",
2405
- "allowNo": false,
2406
- "type": "boolean"
2407
2418
  }
2408
2419
  },
2409
2420
  "hasDynamicHelp": false,
2410
2421
  "hiddenAliases": [],
2411
- "id": "game:android:keyStore:create",
2422
+ "id": "game:android:apiKey:import",
2412
2423
  "pluginAlias": "shipthis",
2413
2424
  "pluginName": "shipthis",
2414
2425
  "pluginType": "core",
@@ -2419,17 +2430,22 @@
2419
2430
  "commands",
2420
2431
  "game",
2421
2432
  "android",
2422
- "keyStore",
2423
- "create.js"
2433
+ "apiKey",
2434
+ "import.js"
2424
2435
  ]
2425
2436
  },
2426
- "game:android:keyStore:delete": {
2437
+ "game:android:apiKey:invite": {
2427
2438
  "aliases": [],
2428
- "args": {},
2429
- "description": "Delete the active Android KeyStore from ShipThis",
2439
+ "args": {
2440
+ "accountId": {
2441
+ "description": "The Google Play Account ID",
2442
+ "name": "accountId",
2443
+ "required": false
2444
+ }
2445
+ },
2446
+ "description": "Invites the Service Account to your Google Play Account.",
2430
2447
  "examples": [
2431
- "<%= config.bin %> <%= command.id %>",
2432
- "<%= config.bin %> <%= command.id %> --immediate --iAmSure"
2448
+ "<%= config.bin %> <%= command.id %>"
2433
2449
  ],
2434
2450
  "flags": {
2435
2451
  "gameId": {
@@ -2440,26 +2456,31 @@
2440
2456
  "multiple": false,
2441
2457
  "type": "option"
2442
2458
  },
2443
- "immediate": {
2444
- "char": "i",
2445
- "description": "Remove from storage immediately (rather than waiting for automatic cleanup - cannot be undone)",
2446
- "name": "immediate",
2447
- "required": false,
2459
+ "prompt": {
2460
+ "char": "p",
2461
+ "description": "Prompt for the Google Play Account ID",
2462
+ "name": "prompt",
2448
2463
  "allowNo": false,
2449
2464
  "type": "boolean"
2450
2465
  },
2451
- "iAmSure": {
2452
- "char": "y",
2453
- "description": "I am sure I want to do this - do not prompt me",
2454
- "name": "iAmSure",
2455
- "required": false,
2466
+ "waitForAuth": {
2467
+ "char": "w",
2468
+ "description": "Wait for Google Authentication (10 mins).",
2469
+ "name": "waitForAuth",
2470
+ "allowNo": false,
2471
+ "type": "boolean"
2472
+ },
2473
+ "waitForGoogleApp": {
2474
+ "char": "a",
2475
+ "description": "Waits for the Google Play app to be created.",
2476
+ "name": "waitForGoogleApp",
2456
2477
  "allowNo": false,
2457
2478
  "type": "boolean"
2458
2479
  }
2459
2480
  },
2460
2481
  "hasDynamicHelp": false,
2461
2482
  "hiddenAliases": [],
2462
- "id": "game:android:keyStore:delete",
2483
+ "id": "game:android:apiKey:invite",
2463
2484
  "pluginAlias": "shipthis",
2464
2485
  "pluginName": "shipthis",
2465
2486
  "pluginType": "core",
@@ -2470,31 +2491,20 @@
2470
2491
  "commands",
2471
2492
  "game",
2472
2493
  "android",
2473
- "keyStore",
2474
- "delete.js"
2494
+ "apiKey",
2495
+ "invite.js"
2475
2496
  ]
2476
2497
  },
2477
- "game:android:keyStore:export": {
2498
+ "game:android:apiKey:policy": {
2478
2499
  "aliases": [],
2479
- "args": {
2480
- "file": {
2481
- "description": "Name of the ZIP file to create",
2482
- "name": "file",
2483
- "required": true
2484
- }
2485
- },
2486
- "description": "Saves the current Android Keystore to a ZIP file",
2500
+ "args": {},
2501
+ "description": "Gets and sets the iam.disableServiceAccountKeyCreation policy for your Google Organization",
2487
2502
  "examples": [
2488
- "<%= config.bin %> <%= command.id %> keyStore.zip"
2503
+ "<%= config.bin %> <%= command.id %>",
2504
+ "<%= config.bin %> <%= command.id %> --enforce",
2505
+ "<%= config.bin %> <%= command.id %> --revoke"
2489
2506
  ],
2490
2507
  "flags": {
2491
- "force": {
2492
- "char": "f",
2493
- "description": "Overwrite the file if it already exists",
2494
- "name": "force",
2495
- "allowNo": false,
2496
- "type": "boolean"
2497
- },
2498
2508
  "gameId": {
2499
2509
  "char": "g",
2500
2510
  "description": "The ID of the game",
@@ -2502,39 +2512,65 @@
2502
2512
  "hasDynamicHelp": false,
2503
2513
  "multiple": false,
2504
2514
  "type": "option"
2515
+ },
2516
+ "enforce": {
2517
+ "char": "e",
2518
+ "description": "Enforces the policy",
2519
+ "exclusive": [
2520
+ "revoke"
2521
+ ],
2522
+ "name": "enforce",
2523
+ "allowNo": false,
2524
+ "type": "boolean"
2525
+ },
2526
+ "revoke": {
2527
+ "char": "r",
2528
+ "description": "Revokes the policy",
2529
+ "exclusive": [
2530
+ "enforce"
2531
+ ],
2532
+ "name": "revoke",
2533
+ "allowNo": false,
2534
+ "type": "boolean"
2535
+ },
2536
+ "waitForAuth": {
2537
+ "char": "w",
2538
+ "description": "Wait for Google Authentication (10 mins).",
2539
+ "name": "waitForAuth",
2540
+ "allowNo": false,
2541
+ "type": "boolean"
2505
2542
  }
2506
2543
  },
2507
2544
  "hasDynamicHelp": false,
2508
2545
  "hiddenAliases": [],
2509
- "id": "game:android:keyStore:export",
2546
+ "id": "game:android:apiKey:policy",
2510
2547
  "pluginAlias": "shipthis",
2511
2548
  "pluginName": "shipthis",
2512
2549
  "pluginType": "core",
2513
2550
  "strict": true,
2514
- "enableJsonFlag": false,
2515
2551
  "isESM": true,
2516
2552
  "relativePath": [
2517
2553
  "dist",
2518
2554
  "commands",
2519
2555
  "game",
2520
2556
  "android",
2521
- "keyStore",
2522
- "export.js"
2557
+ "apiKey",
2558
+ "policy.js"
2523
2559
  ]
2524
2560
  },
2525
- "game:android:keyStore:import": {
2561
+ "game:android:apiKey:show": {
2526
2562
  "aliases": [],
2527
2563
  "args": {
2528
- "file": {
2529
- "description": "Path to the ZIP file to import (must be in the same format as the export)",
2530
- "name": "file",
2564
+ "id": {
2565
+ "description": "Credential ID (full or short prefix). Defaults to the active key.",
2566
+ "name": "id",
2531
2567
  "required": false
2532
2568
  }
2533
2569
  },
2534
- "description": "Imports an Android Keystore to your ShipThis account for the specified game.",
2570
+ "description": "Shows expanded details (service account email) for the Android Service Account API Key in your ShipThis account.",
2535
2571
  "examples": [
2536
- "<%= config.bin %> <%= command.id %> path/to/import.zip -g abfd5b00",
2537
- "<%= config.bin %> <%= command.id %> --jksFile path/to/file.jks --keystorePassword yourpass --keyPassword yourkeypass"
2572
+ "<%= config.bin %> <%= command.id %>",
2573
+ "<%= config.bin %> <%= command.id %> d69f28c5"
2538
2574
  ],
2539
2575
  "flags": {
2540
2576
  "gameId": {
@@ -2544,58 +2580,29 @@
2544
2580
  "hasDynamicHelp": false,
2545
2581
  "multiple": false,
2546
2582
  "type": "option"
2547
- },
2548
- "force": {
2549
- "char": "f",
2550
- "description": "Overwrite any existing keystore without confirmation",
2551
- "name": "force",
2552
- "allowNo": false,
2553
- "type": "boolean"
2554
- },
2555
- "jksFile": {
2556
- "description": "Path to the JKS file to import (requires passwords)",
2557
- "name": "jksFile",
2558
- "hasDynamicHelp": false,
2559
- "multiple": false,
2560
- "type": "option"
2561
- },
2562
- "keyPassword": {
2563
- "description": "Key alias password (required when using --jksFile)",
2564
- "name": "keyPassword",
2565
- "hasDynamicHelp": false,
2566
- "multiple": false,
2567
- "type": "option"
2568
- },
2569
- "keystorePassword": {
2570
- "description": "Keystore password (required when using --jksFile)",
2571
- "name": "keystorePassword",
2572
- "hasDynamicHelp": false,
2573
- "multiple": false,
2574
- "type": "option"
2575
2583
  }
2576
2584
  },
2577
2585
  "hasDynamicHelp": false,
2578
2586
  "hiddenAliases": [],
2579
- "id": "game:android:keyStore:import",
2587
+ "id": "game:android:apiKey:show",
2580
2588
  "pluginAlias": "shipthis",
2581
2589
  "pluginName": "shipthis",
2582
2590
  "pluginType": "core",
2583
2591
  "strict": true,
2584
- "enableJsonFlag": false,
2585
2592
  "isESM": true,
2586
2593
  "relativePath": [
2587
2594
  "dist",
2588
2595
  "commands",
2589
2596
  "game",
2590
2597
  "android",
2591
- "keyStore",
2592
- "import.js"
2598
+ "apiKey",
2599
+ "show.js"
2593
2600
  ]
2594
2601
  },
2595
- "game:android:keyStore:status": {
2602
+ "game:android:apiKey:status": {
2596
2603
  "aliases": [],
2597
2604
  "args": {},
2598
- "description": "Displays the status of the Android Keystore for a specific game.",
2605
+ "description": "Displays the status of the Android Service Account API Key for a specific game.",
2599
2606
  "examples": [
2600
2607
  "<%= config.bin %> <%= command.id %>",
2601
2608
  "<%= config.bin %> <%= command.id %> --gameId 0c179fc4"
@@ -2612,19 +2619,18 @@
2612
2619
  },
2613
2620
  "hasDynamicHelp": false,
2614
2621
  "hiddenAliases": [],
2615
- "id": "game:android:keyStore:status",
2622
+ "id": "game:android:apiKey:status",
2616
2623
  "pluginAlias": "shipthis",
2617
2624
  "pluginName": "shipthis",
2618
2625
  "pluginType": "core",
2619
2626
  "strict": true,
2620
- "enableJsonFlag": false,
2621
2627
  "isESM": true,
2622
2628
  "relativePath": [
2623
2629
  "dist",
2624
2630
  "commands",
2625
2631
  "game",
2626
2632
  "android",
2627
- "keyStore",
2633
+ "apiKey",
2628
2634
  "status.js"
2629
2635
  ]
2630
2636
  },
@@ -3145,5 +3151,5 @@
3145
3151
  ]
3146
3152
  }
3147
3153
  },
3148
- "version": "0.1.53"
3154
+ "version": "0.1.55"
3149
3155
  }