Build the icon editor #11
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: Build the icon editor | |
on: | |
pull_request: | |
branches: | |
- 'feature/*' | |
- 'develop' | |
types: [opened, synchronize, reopened] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
build-and-test: | |
name: Build the icon editor | |
runs-on: [self-hosted, iconeditor] | |
# Keep only environment variables that do not rely on any step outputs | |
env: | |
build_id: ${{ github.run_number }} | |
RelativePath: ${{ vars.AgentWorkingFolder }} | |
RelativePathScripts: ${{ vars.AgentWorkingFolder }}\pipeline\scripts | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Get Build Revision | |
id: get_revision | |
shell: pwsh | |
run: | | |
# Path to store the build revision counter | |
$COUNTER_FILE = "$env:GITHUB_WORKSPACE/.github/buildCounter.txt" | |
Write-Host "Counter file path: $COUNTER_FILE" | |
# Initialize the counter file if it doesn't exist | |
if (-Not (Test-Path $COUNTER_FILE)) { | |
Write-Host "Counter file not found. Initializing to 1." | |
"1" | Out-File $COUNTER_FILE | |
} | |
# Read the current value | |
$build_revision = Get-Content $COUNTER_FILE | |
Write-Host "Current build_revision: $build_revision" | |
# Increment the counter | |
$new_build_revision = [int]$build_revision + 1 | |
Write-Host "New build_revision: $new_build_revision" | |
# Save the new value to the file | |
$new_build_revision | Out-File $COUNTER_FILE | |
# Set the output variable (using recommended method for GitHub Actions) | |
echo "build_revision=$new_build_revision" >> $env:GITHUB_OUTPUT | |
# Optional debugging | |
Get-ChildItem "$env:GITHUB_WORKSPACE/.github" | |
Get-Content $COUNTER_FILE | |
# - name: Set agent into development mode | |
# shell: pwsh | |
# working-directory: ${{ env.RelativePathScripts }} | |
# run: | | |
# .\Set_Development_Mode.ps1 -RelativePath "${{ env.RelativePath }}" | |
- name: Test and Build the Icon Editor | |
shell: pwsh | |
working-directory: ${{ env.RelativePathScripts }} | |
# Put the dynamic variables at the step level, after "get_revision" is available | |
env: | |
build_id: ${{ env.build_id }} | |
build_revision: ${{ steps.get_revision.outputs.build_revision }} | |
build_version: 1.0.${{ env.build_id }}.${{ steps.get_revision.outputs.build_revision }} | |
run: | | |
.\Build.ps1 -RelativePath "${{ env.RelativePath }}" -AbsolutePathScripts "${{ env.RelativePathScripts }}" | |
# - name: Restore agent from development mode | |
# shell: pwsh | |
# working-directory: ${{ env.RelativePathScripts }} | |
# run: | | |
# .\RevertDevelopmentMode.ps1 -RelativePath "${{ env.RelativePath }}" | |
- name: Commit and Push Build Counter | |
# Only commit on these two branches | |
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/develop' | |
uses: stefanzweifel/git-auto-commit-action@v4 | |
with: | |
commit_message: 'Increment build revision to ${{ steps.get_revision.outputs.build_revision }}' | |
file_pattern: '.github/buildCounter.txt' |