Skip to content

Commit

Permalink
Create build-ramdisk.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
ardalis authored Dec 13, 2024
1 parent 766a7ca commit f12f574
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions .github/workflows/build-ramdisk.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Build and Test with Ramdisk

on:
push:
branches:
- main
pull_request:

jobs:
build-and-test:
runs-on: ubuntu-latest

steps:
# Step 1: Checkout the repository
- name: Checkout Code
uses: actions/checkout@v3

# Step 2: Set up .NET environment
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: 7.0

# Step 3: Create a ramdisk
- name: Create Ramdisk
run: |
mkdir -p /mnt/ramdisk
sudo mount -t tmpfs -o size=2G tmpfs /mnt/ramdisk
# Step 4: Copy source code to the ramdisk
- name: Copy Code to Ramdisk
run: |
cp -r $GITHUB_WORKSPACE /mnt/ramdisk/project
# Step 5: Build and test from the ramdisk
- name: Build and Test
run: |
cd /mnt/ramdisk/project
dotnet build --configuration Release
dotnet test --no-build --verbosity normal
# Step 6: Cleanup the ramdisk (optional, as the instance is ephemeral)
- name: Cleanup Ramdisk
if: always()
run: |
sudo umount /mnt/ramdisk
rm -rf /mnt/ramdisk

0 comments on commit f12f574

Please sign in to comment.