Gets rid of CloseAndFlush temporarily #344
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Branch Build Using Docker | |
on: | |
push: | |
branches: | |
- feature-2/* | |
- hotfix-2/* | |
- release-2/* | |
- development-2 | |
env: | |
# solution path doesn't need slashes unless there it is multiple folders deep | |
# solution name does not include extension. .sln is assumed | |
SOLUTION_PATH: . | |
SOLUTION_FILE: PepperDash Core | |
# Do not edit this, we're just creating it here | |
VERSION: 0.0.0-buildtype-buildnumber | |
# Defaults to debug for build type | |
BUILD_TYPE: Debug | |
# Defaults to main as the release branch. Change as necessary | |
RELEASE_BRANCH: main | |
jobs: | |
Build_Project_4-Series: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
# Fetch all tags | |
- name: Fetch tags | |
run: git fetch --tags | |
# Generate the appropriate version number | |
- name: Set Version Number | |
id: setVersion | |
shell: powershell | |
run: | | |
$latestVersion = [version]"2.0.0" | |
$newVersion = [version]$latestVersion | |
$phase = "" | |
$newVersionString = "" | |
switch -regex ($Env:GITHUB_REF) { | |
'^refs\/pull\/*.' { | |
$phase = 'beta'; | |
$newVersionString = "{0}-{1}-{2}" -f $newVersion, $phase, $Env:GITHUB_RUN_NUMBER | |
} | |
'^refs\/heads\/feature-2\/*.' { | |
$phase = 'alpha' | |
$newVersionString = "{0}-{1}-{2}" -f $newVersion, $phase, $Env:GITHUB_RUN_NUMBER | |
} | |
'development-2' { | |
$phase = 'beta' | |
$newVersionString = "{0}-{1}-{2}" -f $newVersion, $phase, $Env:GITHUB_RUN_NUMBER | |
} | |
} | |
echo "version=$newVersionString" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append | |
- name: Setup MS Build | |
uses: microsoft/setup-msbuild@v1.1 | |
- name: restore Nuget Packages | |
run: nuget restore .\$($Env:SOLUTION_FILE).sln | |
# Build the solutions in the docker image | |
- name: Build Solution | |
run: msbuild .\$($Env:SOLUTION_FILE).sln /p:Platform="Any CPU" /p:Configuration="Debug" /p:Version="${{ steps.setVersion.outputs.version }}" | |
- name: Create tag for non-rc builds | |
if: contains(steps.setVersion.outputs.version, 'alpha') | |
run: | | |
git tag ${{ steps.setVersion.outputs.version }} | |
git push --tags origin | |
# Create the release on the source repo | |
- name: Create Release | |
id: create_release | |
if: contains(steps.setVersion.outputs.version,'-rc-') || | |
contains(steps.setVersion.outputs.version,'-hotfix-') || | |
contains(steps.setVersion.outputs.version, 'beta') | |
uses: ncipollo/release-action@v1 | |
with: | |
artifacts: '**\*.clz' | |
generateReleaseNotes: true | |
prerelease: ${{contains('debug', env.BUILD_TYPE)}} | |
tag: ${{ steps.setVersion.outputs.version }} | |
- name: Publish to Nuget | |
run: | | |
nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }} | |
nuget setApiKey ${{ secrets.NUGET_API_KEY }} | |
nuget push ".\package\PepperDashCore.${{ steps.setVersion.outputs.version }}.nupkg" -Source github | |
nuget push ".\package\PepperDashCore.${{ steps.setVersion.outputs.version }}.nupkg" -Source https://api.nuget.org/v3/index.json |