Skip to content

Commit

Permalink
Updated BUILD.md with release instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
lszinv committed Nov 25, 2024
1 parent 0b64cd2 commit 424ded8
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 2 deletions.
15 changes: 14 additions & 1 deletion BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ Requirements doc can be found [here](https://docs.google.com/document/d/1DXrYdTb
* Tableau.Migration.App.GUI - Gui implementation using Avalonia framework.

# Building
```
## From Source Root
```
dotnet build Tableau.Migration.App.sln
Expand All @@ -37,3 +36,17 @@ dotnet run
```
dotnet test Tableau.Migration.App.sln
```
# Releasing
There are bash scripts found in the `/scripts` folder that details out the commands to publish the release files for the project.
Primarily there is the `release.sh` script to publish the release builds, and the `macos.sh` to create the macOS packages. Both of these scripts are used in the
github release hook.

## release.sh
`/scripts/release.sh` will perform a `dotnet publish` to create a release binary for multiple platforms (`win-x64`, `osx-arm64`, `osx-x64`, `linux-arm64`, `linux-x64`)
the releases are then placed into the `/build/` folder with each platform release under their own respective sub-directory.

## macos.sh
`/scripts/macos.sh` is a separate script that is meant to be run after the release builds are generated from `/scripts/release.sh`. This script takes the generated release binaries and packages them into a `.app` for macOS
The script itself takes in one of two arguments: `--x64` and `--arm64` to determine which macos package to generate. The output is then placed inside the `/build/` folder as `/build/osx_{platform}_macapp/TableauMigration.app`


2 changes: 1 addition & 1 deletion scripts/release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ dotnet publish ./src/Tableau.Migration.App.GUI -c Release -r osx-x64 --self-cont

dotnet publish ./src/Tableau.Migration.App.GUI -c Release -r linux-arm64 --self-contained -p:PublishSingleFile=true /p:DebugType=None /p:GenerateDocumentationFile=false -o ${PROJECT_DIR}/build/linux_arm64

dotnet publish ./src/Tableau.Migration.App.GUI -c Release -r linux-arm64 --self-contained -p:PublishSingleFile=true /p:DebugType=None /p:GenerateDocumentationFile=false -o ${PROJECT_DIR}/build/linux_x64
dotnet publish ./src/Tableau.Migration.App.GUI -c Release -r linux-x64 --self-contained -p:PublishSingleFile=true /p:DebugType=None /p:GenerateDocumentationFile=false -o ${PROJECT_DIR}/build/linux_x64

0 comments on commit 424ded8

Please sign in to comment.