diff --git a/scripts/publish.ps1 b/scripts/publish.ps1 new file mode 100644 index 0000000..c34b66f --- /dev/null +++ b/scripts/publish.ps1 @@ -0,0 +1,34 @@ +#!/usr/bin/env pwsh + +$crates = @( + "tribufu-types", + "tribufu-constants", + "tribufu-api", + "mintaka" +) + +$batchSize = 6 +$waitTime = 300 + +function Process-Batch { + param ( + [Parameter(Mandatory=$true)] + [array]$batch + ) + + foreach ($element in $batch) { + Write-Output "Processing element $element" + cargo publish --package $element + } +} + +for ($i = 0; $i -lt $crates.Count; $i += $batchSize) { + $currentBatch = $crates[$i..($i + $batchSize - 1)] + + Process-Batch -batch $currentBatch + + if ($i -lt ($crates.Count - $batchSize)) { + Write-Output "Waiting for $waitTime seconds..." + Start-Sleep -Seconds $waitTime + } +}