Track latest mod zip artifact
This commit is contained in:
8
Brain.md
8
Brain.md
@@ -22,7 +22,8 @@ Diese Datei ist das Projektgedaechtnis fuer Brogether. Sie fasst zusammen, was b
|
|||||||
- Brotato bringt `GodotWorkshopUtility.exe` mit.
|
- Brotato bringt `GodotWorkshopUtility.exe` mit.
|
||||||
- Lokale Tools liegen absichtlich untracked unter `.tools/`.
|
- Lokale Tools liegen absichtlich untracked unter `.tools/`.
|
||||||
- Recovered Brotato-Scripts liegen absichtlich untracked unter `recovered/`.
|
- Recovered Brotato-Scripts liegen absichtlich untracked unter `recovered/`.
|
||||||
- Gebaute ZIPs liegen absichtlich untracked unter `dist/`.
|
- Lokale Build-ZIPs liegen absichtlich untracked unter `dist/`.
|
||||||
|
- Der aktuelle teilbare Mod-ZIP wird zusaetzlich unter `releases/` committed.
|
||||||
|
|
||||||
## Relevante Projektstruktur
|
## Relevante Projektstruktur
|
||||||
|
|
||||||
@@ -41,11 +42,16 @@ docs/
|
|||||||
setup.md
|
setup.md
|
||||||
brotato-multiplayer-modding-research.md
|
brotato-multiplayer-modding-research.md
|
||||||
workshop-upload.md
|
workshop-upload.md
|
||||||
|
|
||||||
|
releases/
|
||||||
|
Brogether-Brogether-0.1.0.zip
|
||||||
```
|
```
|
||||||
|
|
||||||
## Packaging Und Lokale Installation
|
## Packaging Und Lokale Installation
|
||||||
|
|
||||||
- `scripts/package.ps1` baut `dist\Brogether-Brogether-0.1.0.zip`.
|
- `scripts/package.ps1` baut `dist\Brogether-Brogether-0.1.0.zip`.
|
||||||
|
- Danach kopiert `scripts/package.ps1` denselben ZIP nach `releases\Brogether-Brogether-0.1.0.zip`.
|
||||||
|
- `dist/` bleibt ignoriert; `releases/` wird committed, damit Tester den neuesten ZIP direkt aus dem Repo laden koennen.
|
||||||
- Das Skript nutzt .NET `ZipArchive`, weil PowerShell `Compress-Archive` Backslash-Pfade erzeugt hatte, die Godot/Brotato nicht sauber akzeptierte.
|
- Das Skript nutzt .NET `ZipArchive`, weil PowerShell `Compress-Archive` Backslash-Pfade erzeugt hatte, die Godot/Brotato nicht sauber akzeptierte.
|
||||||
- ZIP-Struktur im Archiv:
|
- ZIP-Struktur im Archiv:
|
||||||
|
|
||||||
|
|||||||
@@ -37,13 +37,16 @@ scripts/
|
|||||||
package.ps1 Builds the mod ZIP
|
package.ps1 Builds the mod ZIP
|
||||||
install-local.ps1 Installs the ZIP for local Brotato tests
|
install-local.ps1 Installs the ZIP for local Brotato tests
|
||||||
|
|
||||||
|
releases/
|
||||||
|
Brogether-Brogether-0.1.0.zip Latest committed mod ZIP for testers
|
||||||
|
|
||||||
docs/
|
docs/
|
||||||
setup.md Setup and test notes
|
setup.md Setup and test notes
|
||||||
brotato-multiplayer-modding-research.md
|
brotato-multiplayer-modding-research.md
|
||||||
workshop-upload.md Step-by-step Steam Workshop upload guide
|
workshop-upload.md Step-by-step Steam Workshop upload guide
|
||||||
```
|
```
|
||||||
|
|
||||||
`.tools/`, `recovered/`, and `dist/` are intentionally not committed. They contain local tools, recovered Brotato files, and built ZIPs.
|
`.tools/`, `recovered/`, and `dist/` are intentionally not committed. They contain local tools, recovered Brotato files, and local build output. The current shareable mod ZIP is committed under `releases/`.
|
||||||
|
|
||||||
## Local Test
|
## Local Test
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,8 @@ After that, the ZIP is here:
|
|||||||
dist\Brogether-Brogether-0.1.0.zip
|
dist\Brogether-Brogether-0.1.0.zip
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The same ZIP is also copied to `releases\Brogether-Brogether-0.1.0.zip`. The `releases/` copy is committed to Git so testers can download the latest mod ZIP directly from the repository.
|
||||||
|
|
||||||
- Optional but recommended: a Workshop preview image as PNG or JPG. `512x512` and below `1 MB` is a good target.
|
- Optional but recommended: a Workshop preview image as PNG or JPG. `512x512` and below `1 MB` is a good target.
|
||||||
- For the first upload, you do not need a Workshop ID. Steam creates it.
|
- For the first upload, you do not need a Workshop ID. Steam creates it.
|
||||||
- For later updates, you need the Workshop ID from your Workshop item URL.
|
- For later updates, you need the Workshop ID from your Workshop item URL.
|
||||||
@@ -83,7 +85,7 @@ The ID would be:
|
|||||||
```
|
```
|
||||||
|
|
||||||
2. Start `GodotWorkshopUtility.exe`.
|
2. Start `GodotWorkshopUtility.exe`.
|
||||||
3. Select `dist\Brogether-Brogether-0.1.0.zip` again.
|
3. Select `dist\Brogether-Brogether-0.1.0.zip` again. The committed copy in `releases/` is the same ZIP, but `dist/` is the local upload path used by the scripts.
|
||||||
4. Optionally select the same preview image.
|
4. Optionally select the same preview image.
|
||||||
5. This time, enter the existing Workshop ID.
|
5. This time, enter the existing Workshop ID.
|
||||||
6. Start the upload.
|
6. Start the upload.
|
||||||
|
|||||||
BIN
releases/Brogether-Brogether-0.1.0.zip
Normal file
BIN
releases/Brogether-Brogether-0.1.0.zip
Normal file
Binary file not shown.
18
releases/README.md
Normal file
18
releases/README.md
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# Release Artifacts
|
||||||
|
|
||||||
|
This folder intentionally stores the latest built Brogether mod ZIP in Git.
|
||||||
|
|
||||||
|
Run this from the project root whenever the mod changes:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
.\scripts\package.ps1
|
||||||
|
```
|
||||||
|
|
||||||
|
The script creates both:
|
||||||
|
|
||||||
|
```text
|
||||||
|
dist\Brogether-Brogether-0.1.0.zip
|
||||||
|
releases\Brogether-Brogether-0.1.0.zip
|
||||||
|
```
|
||||||
|
|
||||||
|
`dist/` stays local and ignored. `releases/` is committed so testers can download the current mod ZIP directly from the repository.
|
||||||
@@ -9,16 +9,22 @@ Add-Type -AssemblyName System.IO.Compression.FileSystem
|
|||||||
$root = Split-Path -Parent $PSScriptRoot
|
$root = Split-Path -Parent $PSScriptRoot
|
||||||
$source = Join-Path $root "src"
|
$source = Join-Path $root "src"
|
||||||
$dist = Join-Path $root "dist"
|
$dist = Join-Path $root "dist"
|
||||||
|
$releases = Join-Path $root "releases"
|
||||||
$zipPath = Join-Path $dist "Brogether-Brogether-$Version.zip"
|
$zipPath = Join-Path $dist "Brogether-Brogether-$Version.zip"
|
||||||
|
$releaseZipPath = Join-Path $releases "Brogether-Brogether-$Version.zip"
|
||||||
|
|
||||||
if (-not (Test-Path $source)) {
|
if (-not (Test-Path $source)) {
|
||||||
throw "Missing source folder: $source"
|
throw "Missing source folder: $source"
|
||||||
}
|
}
|
||||||
|
|
||||||
New-Item -ItemType Directory -Force -Path $dist | Out-Null
|
New-Item -ItemType Directory -Force -Path $dist | Out-Null
|
||||||
|
New-Item -ItemType Directory -Force -Path $releases | Out-Null
|
||||||
if (Test-Path $zipPath) {
|
if (Test-Path $zipPath) {
|
||||||
Remove-Item -LiteralPath $zipPath -Force
|
Remove-Item -LiteralPath $zipPath -Force
|
||||||
}
|
}
|
||||||
|
if (Test-Path $releaseZipPath) {
|
||||||
|
Remove-Item -LiteralPath $releaseZipPath -Force
|
||||||
|
}
|
||||||
|
|
||||||
$archive = [System.IO.Compression.ZipFile]::Open($zipPath, [System.IO.Compression.ZipArchiveMode]::Create)
|
$archive = [System.IO.Compression.ZipFile]::Open($zipPath, [System.IO.Compression.ZipArchiveMode]::Create)
|
||||||
try {
|
try {
|
||||||
@@ -37,4 +43,6 @@ finally {
|
|||||||
$archive.Dispose()
|
$archive.Dispose()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Copy-Item -LiteralPath $zipPath -Destination $releaseZipPath -Force
|
||||||
Write-Host "Created $zipPath"
|
Write-Host "Created $zipPath"
|
||||||
|
Write-Host "Updated release artifact $releaseZipPath"
|
||||||
|
|||||||
Reference in New Issue
Block a user