Skip to content

Commit 4bc7372

Browse files
authored
Merge branch 'PokemonAutomation:main' into main
2 parents cdafff7 + 44eae4e commit 4bc7372

17 files changed

Lines changed: 9828 additions & 25 deletions

File tree

.azure-pipelines/azure-pipelines.yml

Lines changed: 37 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ stages:
8585
VERSION="v${{ parameters.versionMajor }}.${{ parameters.versionMinor }}.${{ parameters.versionPatch }}"
8686
echo "Setting build number to $VERSION"
8787
echo "##vso[build.updatebuildnumber]$VERSION"
88+
echo "##vso[build.addbuildtag]${{ parameters.buildType }}"
8889
displayName: 'Set Build Number to Version'
8990
9091
@@ -213,6 +214,7 @@ stages:
213214
$version = "${{ parameters.versionMajor }}.${{ parameters.versionMinor }}.${{ parameters.versionPatch }}"
214215
$folderName = "SerialPrograms-$version-Windows-x64"
215216
$name = "SerialPrograms-Windows-$(compiler)-$(architecture)"
217+
$buildType = "${{ parameters.buildType }}"
216218
217219
$cacheArtifactsDir = Join-Path $root "cache-artifacts"
218220
$artifactSubdir = Join-Path $cacheArtifactsDir $name
@@ -223,12 +225,22 @@ stages:
223225
New-Item -ItemType Directory -Force -Path $tempFolder | Out-Null
224226
Copy-Item "$root/cache-build/*" $tempFolder -Recurse -Force
225227
226-
Compress-Archive -Path $tempFolder -DestinationPath "$artifactSubdir/$name.zip"
228+
if ($buildType -eq "PrivateBeta") {
229+
Write-Host "=== Encrypting build artifact with password ==="
230+
$zipPath = "$artifactSubdir/$name.zip"
231+
& "C:/Program Files/7-Zip/7z.exe" a -tzip -mx=9 -p"$env:ARTIFACT_PASSWORD" -mem=AES256 $zipPath "$tempFolder/*"
232+
} else {
233+
$zipPath = "$artifactSubdir/$name.zip"
234+
& "C:/Program Files/7-Zip/7z.exe" a -tzip -mx=9 $zipPath "$tempFolder/*"
235+
}
236+
227237
Remove-Item $temp -Recurse -Force
228238
229239
Write-Host "=== Created archive with enclosing folder: $folderName ==="
230240
displayName: 'Archive Windows build artifact'
231241
condition: succeeded()
242+
env:
243+
ARTIFACT_PASSWORD: $(ARTIFACT_PASSWORD)
232244
233245
- task: Cache@2
234246
displayName: 'Cache the build artifact'
@@ -390,11 +402,20 @@ stages:
390402
mkdir -p "$FOLDER_NAME"
391403
chmod +x "SerialPrograms-x86_64.AppImage"
392404
mv "SerialPrograms-x86_64.AppImage" "$FOLDER_NAME/"
393-
tar -zcvf $(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-build/SerialPrograms-Ubuntu-$(compiler)-$(architecture).tar.gz "$FOLDER_NAME"
405+
406+
BUILD_TYPE="${{ parameters.buildType }}"
407+
if [ "$BUILD_TYPE" = "PrivateBeta" ]; then
408+
echo "=== Encrypting build artifact with password ==="
409+
7z a -tzip -mx=9 -p"$ARTIFACT_PASSWORD" -mem=AES256 "$(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-build/SerialPrograms-Ubuntu-$(compiler)-$(architecture).zip" "$FOLDER_NAME"
410+
else
411+
tar -I "gzip -9" -cvf $(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-build/SerialPrograms-Ubuntu-$(compiler)-$(architecture).tar.gz "$FOLDER_NAME"
412+
fi
394413
395414
echo "=== AppImage build complete with enclosing folder: $FOLDER_NAME ==="
396415
displayName: 'Deploy AppImage'
397416
condition: succeeded()
417+
env:
418+
ARTIFACT_PASSWORD: $(ARTIFACT_PASSWORD)
398419
399420
- task: Cache@2
400421
displayName: 'Cache build'
@@ -410,11 +431,24 @@ stages:
410431
path: '$(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-symbols'
411432
condition: succeeded()
412433

434+
- script: |
435+
BUILD_TYPE="${{ parameters.buildType }}"
436+
if [ "$BUILD_TYPE" = "PrivateBeta" ]; then
437+
EXT="zip"
438+
else
439+
EXT="tar.gz"
440+
fi
441+
442+
ARTIFACT_PATH_UBUNTU="$(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-build/SerialPrograms-Ubuntu-$(compiler)-$(architecture).$EXT"
443+
echo "##vso[task.setvariable variable=ARTIFACT_PATH_UBUNTU]$ARTIFACT_PATH_UBUNTU"
444+
displayName: 'Set artifact path'
445+
condition: succeeded()
446+
413447
- task: PublishBuildArtifacts@1
414448
displayName: 'Publish SerialPrograms'
415449
condition: succeeded()
416450
inputs:
417-
PathtoPublish: '$(Pipeline.Workspace)/Arduino-Source-Internal/Repository/Public/build/$(cmake_preset)/cache-build/SerialPrograms-Ubuntu-$(compiler)-$(architecture).tar.gz'
451+
PathtoPublish: '$(ARTIFACT_PATH_UBUNTU)'
418452
ArtifactName: 'SerialPrograms-Linux-$(compiler)-$(architecture)'
419453

420454
###########################################

.azure-pipelines/templates/macos-notarize.yml

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -177,18 +177,27 @@ stages:
177177
set -e
178178
VERSION="${{ parameters.versionMajor }}.${{ parameters.versionMinor }}.${{ parameters.versionPatch }}"
179179
FOLDER_NAME="SerialPrograms-$VERSION-MacOS-${{ parameters.architecture }}"
180-
181-
echo "=== Creating tarball with enclosing folder ==="
182-
tar -czf "SerialPrograms-MacOS-$(compiler)-$(architecture).tar.gz" -C "$(Pipeline.Workspace)/Arduino-Source-Internal" "$FOLDER_NAME"
180+
BUILD_TYPE="${{ parameters.buildType }}"
181+
182+
cd "$(Pipeline.Workspace)/Arduino-Source-Internal"
183+
if [ "$BUILD_TYPE" = "PrivateBeta" ]; then
184+
echo "=== Creating password-protected archive for PrivateBeta ==="
185+
7z a -tzip -mx=9 -p"$ARTIFACT_PASSWORD" -mem=AES256 "SerialPrograms-MacOS-$(compiler)-$(architecture).zip" "$FOLDER_NAME"
186+
else
187+
echo "=== Creating tarball with enclosing folder ==="
188+
tar -I "gzip -9" -czf "SerialPrograms-MacOS-$(compiler)-$(architecture).tar.gz" "$FOLDER_NAME"
189+
fi
183190
184191
echo "=== Creating cache directory and moving tarball ==="
185192
CACHE_DIR="$(Pipeline.Workspace)/Arduino-Source-Internal/cache-notarized"
186193
mkdir -p "$CACHE_DIR"
187-
mv "$(Pipeline.Workspace)/Arduino-Source-Internal/SerialPrograms-MacOS-$(compiler)-$(architecture).tar.gz" "$CACHE_DIR/"
194+
mv "$(Pipeline.Workspace)/Arduino-Source-Internal/SerialPrograms-MacOS-$(compiler)-$(architecture).$EXT" "$CACHE_DIR/"
188195
189196
echo "=== Tarball created with enclosing folder: $FOLDER_NAME ==="
190197
displayName: 'Create a tarball'
191198
condition: succeeded()
199+
env:
200+
ARTIFACT_PASSWORD: $(ARTIFACT_PASSWORD)
192201
193202
- task: Cache@2
194203
displayName: 'Cache the notarized artifact'
@@ -197,9 +206,17 @@ stages:
197206
path: '$(Pipeline.Workspace)/Arduino-Source-Internal/cache-notarized'
198207
condition: succeeded()
199208

209+
- script: |
210+
BUILD_TYPE="${{ parameters.buildType }}"
211+
EXT=$([ "$BUILD_TYPE" = "PrivateBeta" ] && echo "zip" || echo "tar.gz")
212+
ARTIFACT_PATH_MACOS="$(Pipeline.Workspace)/Arduino-Source-Internal/cache-notarized/SerialPrograms-MacOS-$(compiler)-$(architecture).$EXT"
213+
echo "##vso[task.setvariable variable=ARTIFACT_PATH_MACOS]$ARTIFACT_PATH_MACOS"
214+
displayName: 'Set artifact path'
215+
condition: succeeded()
216+
200217
- task: PublishPipelineArtifact@1
201218
displayName: 'Publish notarized app'
202219
inputs:
203-
targetPath: '$(Pipeline.Workspace)/Arduino-Source-Internal/cache-notarized/SerialPrograms-MacOS-$(compiler)-$(architecture).tar.gz'
220+
targetPath: '$(ARTIFACT_PATH_MACOS)'
204221
artifact: 'SerialPrograms-MacOS-$(compiler)-$(architecture)'
205222
condition: succeeded()

0 commit comments

Comments
 (0)