Skip to content

Copilot Setup Steps #12

Copilot Setup Steps

Copilot Setup Steps #12

name: "Copilot Setup Steps"
on: workflow_dispatch
jobs:
copilot-setup-steps:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.x'
- name: Install Android workload
run: dotnet workload install android
- name: Setup OpenJDK 21
uses: actions/setup-java@v4
with:
distribution: 'microsoft'
java-version: '21'
- name: Restore dotnet tools
run: dotnet tool restore
# Cache the externals directory based on config.json content
# This caches the Maven artifacts downloaded by the binderator tool
# to avoid re-downloading the same artifacts on subsequent runs
- name: Restore externals cache
id: cache-externals-restore
uses: actions/cache/restore@v4
with:
path: ./externals
key: externals-${{ hashFiles('config.json') }}
- name: Run dotnet cake
run: dotnet cake
continue-on-error: true
# Save the externals cache after dotnet cake runs
# This ensures the cache reflects the original config.json state
# before any potential modifications by the build process
- name: Save externals cache
id: cache-externals-save
uses: actions/cache/save@v4
if: steps.cache-externals-restore.outputs.cache-hit != 'true'
with:
path: ./externals
key: externals-${{ hashFiles('config.json') }}
- name: Display environment info
run: |
echo "=== Environment Summary ==="
echo ".NET Version: $(dotnet --version)"
echo "Java Version: $(java -version 2>&1 | head -1)"
echo "Android SDK Root: $ANDROID_SDK_ROOT"
echo "Java Home: $JAVA_HOME"
echo "=== Installed Workloads ==="
dotnet workload list