Skip to content

Use ps1 scripts in release #19

Use ps1 scripts in release

Use ps1 scripts in release #19

Workflow file for this run

name: cd
on:
push:
branches:
- main
jobs:
release:
if: github.event_name == 'push' && github.event.ref == 'refs/heads/main'
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Extract branch name
shell: bash
run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
id: extract_branch
- name: Setup .NET 6
uses: actions/setup-dotnet@v2
with:
dotnet-version: "6.0.x"
- name: Setup GitVersion
run: dotnet tool install --global GitVersion.Tool
- name: Fetch for GitVersion
run: git fetch --tags --unshallow
- name: Fetch main for GitVersion
if: github.ref != 'refs/heads/main'
run: git branch --create-reflog main origin/main
- name: Update version
run: dotnet-gitversion /updateprojectfiles /updateassemblyinfo /output buildserver
- name: Set job output
id: VERSION
run: |
echo '::set-output name=label::${{env.GitVersion_PreReleaseLabel}}'
echo '::set-output name=semver::${{env.GitVersion_LegacySemVer}}'
echo '::set-output name=nuget::${{env.GitVersion_NuGetPreReleaseTagV2}}'
echo '::set-output name=applicable::${{env.GitVersion_PreReleaseLabel == 'alpha' || env.GitVersion_PreReleaseLabel == 'beta' }}'
- name: Apply changes
if: ${{ steps.VERSION.outputs.applicable == 'true' && steps.extract_branch.outputs.branch == 'main' }}
uses: EndBug/[email protected]
with:
author_name: github-actions[bot]
author_email: github-actions[bot]@users.noreply.github.com
message: "Bumped version to ${{env.GitVersion_LegacySemVer}}"
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Setup NuGet
uses: NuGet/setup-nuget@v1
- name: Restore Packages
run: dotnet restore
- name: Build
run: dotnet build -c Release
- name: Make EliteVA-plugin
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: mkdir "EliteVA-plugin"
- name: Copy to EliteVA-plugin
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: xcopy "EliteVA\bin\Release\net472\" "EliteVA-plugin" /Y /I
- name: Add Costura.Fody
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: dotnet add package Costura.Fody
working-directory: EliteVA
- name: Build
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: dotnet build -c Release
- name: Copy to EliteVA-plugin
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: xcopy "EliteVA\bin\Release\net472\" "EliteVA-plugin" /Y /I
- name: Generate profile
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: dotnet run --project ProfileGenerator -c Release
- name: Copy to EliteVA-plugin\EliteVA-${{ steps.VERSION.outputs.semver }}.vap
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: echo F|xcopy "Profile.vap" "EliteVA-${{ steps.VERSION.outputs.semver }}.vap" /Y /I
- name: Copy setup to base folder
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
run: cmd /c 'copy EliteVA\bin\Release\net472\EliteVA-setup.ps1 EliteVA-setup.ps1'
- name: Zip dist
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
uses: thedoctor0/[email protected]
with:
type: "zip"
filename: "EliteVA.zip"
path: "EliteVA-plugin/*"
- name: Release
if: github.ref == 'refs/heads/main' && ${{ steps.VERSION.outputs.applicable == 'true' }}
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.VERSION.outputs.semver }}
files: |
EliteVA.zip
EliteVA-${{ steps.VERSION.outputs.semver }}.vap
EliteVA-setup.ps1
prerelease: ${{ steps.extract_branch.outputs.branch != 'main' }}
draft: true