Skip to content
Merged
Show file tree
Hide file tree
Changes from 86 commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
cd0b12a
Adding a test workflow for building on ARM system
srmungar Jan 25, 2026
bf3cd87
adding build workflow for x64_64 ubuntu
srmungar Jan 25, 2026
4654a56
update workflow
srmungar Jan 25, 2026
21c21f3
update build workflow
srmungar Jan 25, 2026
2533c6b
Update build_elxr12_raw.sh enable log
elvin03 Jan 26, 2026
6ed0a63
Update build-elxr12-raw.yml
elvin03 Jan 26, 2026
225948e
specify ubuntu image
elvin03 Jan 26, 2026
477ab21
adding the updates
srmungar Jan 26, 2026
9114ed4
Update build-elxr12-raw.yml
elvin03 Jan 26, 2026
2ae9f05
Update build-elxr12-raw.yml
elvin03 Jan 26, 2026
b59e417
updates for build
srmungar Jan 26, 2026
3a82c0b
Update imageos.go
elvin03 Jan 26, 2026
8bd7ceb
Update build_ubuntu24_arm_raw.sh
elvin03 Jan 26, 2026
ccd9ff6
Update build_ubuntu24_arm_raw.sh
elvin03 Jan 26, 2026
14064cf
Update build-elxr12-raw.yml
elvin03 Jan 26, 2026
88edf8d
Update imageos.go
elvin03 Jan 26, 2026
2b4e8c3
Update build_elxr12_raw.sh
elvin03 Jan 26, 2026
e378d7e
Update build-elxr12-raw.yml
elvin03 Jan 26, 2026
2a08d45
update boot paths
srmungar Jan 26, 2026
01c4885
Merge remote-tracking branch 'origin/elxr-github-runner' into srmunga…
srmungar Jan 26, 2026
6e5191a
update files
srmungar Jan 26, 2026
8d8ff51
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Jan 26, 2026
2a62b8b
merged
srmungar Jan 26, 2026
5b5713a
update
srmungar Jan 26, 2026
5453a1f
update
srmungar Jan 26, 2026
2e6bfa9
Update build_ubuntu24_arm_raw.sh
elvin03 Jan 26, 2026
019456b
Merge remote-tracking branch 'origin' into srmungar_armlocal_dev_branch
srmungar Jan 26, 2026
b86ab10
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Jan 26, 2026
aa71b57
updates
srmungar Jan 26, 2026
1cbe719
update
srmungar Jan 26, 2026
661b0fb
updates
srmungar Jan 26, 2026
0b26274
updates
srmungar Jan 26, 2026
9db12e3
updates
srmungar Jan 26, 2026
6b0f750
updates
srmungar Jan 26, 2026
be5a495
updates
srmungar Jan 26, 2026
7dfe1e0
updates
srmungar Jan 26, 2026
dc7e687
updates
srmungar Jan 27, 2026
45f88d5
Update arm build to upload artifact
elvin03 Jan 27, 2026
af8745a
update for azl
srmungar Jan 27, 2026
b8a2c04
Merge remote-tracking branch 'origin/elvin_arm' into srmungar_armloca…
srmungar Jan 27, 2026
98581ee
update
srmungar Jan 27, 2026
509cb28
renamed
srmungar Jan 27, 2026
36e95bd
updates
srmungar Jan 27, 2026
d1d1f3c
updates
srmungar Jan 27, 2026
fcdaae5
Merge remote-tracking branch 'origin/main' into srmungar_armlocal_dev…
srmungar Jan 27, 2026
c17d406
updated workflows
srmungar Jan 27, 2026
209e8e4
renamed files
srmungar Jan 27, 2026
02532e2
updated file names
srmungar Jan 27, 2026
70d7d40
fixing build errors
srmungar Jan 27, 2026
bcaaea3
updated for manual trigger
srmungar Jan 27, 2026
1542877
updating azlinux build scripts
srmungar Jan 27, 2026
861c601
Added scripts to build ARM image for Elxr12
srmungar Jan 27, 2026
c503377
Fixed ARM elxr12 build error
srmungar Jan 27, 2026
de7b2e9
fixed outputing the buildlog upon failure
srmungar Jan 27, 2026
109714a
Fixing the build log errors
srmungar Jan 27, 2026
9d3a68c
updated log to dump the verity command when failed
srmungar Jan 27, 2026
21b3225
updated another
srmungar Jan 27, 2026
e834689
Update azl3-aarch64-edge-raw.yml
srmungar Jan 28, 2026
e57945e
fix elxr linux package issue for ARM
srmungar Jan 28, 2026
c275b85
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Jan 28, 2026
5203d7f
updated linux-image package for ARM elxr12
srmungar Jan 28, 2026
e7b7b88
turning off immutability
srmungar Jan 28, 2026
fda66f0
update image name
srmungar Jan 28, 2026
2d088ec
updated partition type linux-root-arm64
srmungar Jan 28, 2026
3ffcf9c
fixed errors
srmungar Jan 28, 2026
f990f14
enabled debug logs for azl builds
srmungar Jan 28, 2026
3fcdfab
more debug logs
srmungar Jan 29, 2026
81850fb
update
srmungar Jan 29, 2026
502c9bd
updated build script
srmungar Jan 29, 2026
537b582
updated
srmungar Jan 29, 2026
1c66722
work flow name change
srmungar Jan 29, 2026
49be99c
turned off QEMU tests for ARM
srmungar Jan 29, 2026
ca9d78f
fix elxr arm kernel issue
srmungar Jan 29, 2026
3f03ea8
turned of qemu tests
srmungar Jan 29, 2026
1460c9d
Merge remote-tracking branch 'origin/main' into srmungar_armlocal_dev…
srmungar Jan 29, 2026
3e9e74c
Support ARM64 RAW Image Building for ELXR12, AZL and Ubuntu
srmungar Jan 29, 2026
ece865a
adding the arch specific repo.yml file
srmungar Jan 29, 2026
3ed1c34
updated test coverage
srmungar Jan 29, 2026
b6d578e
Apply suggestion from @Copilot
srmungar Jan 30, 2026
c9c0a75
Apply suggestion from @Copilot
srmungar Jan 30, 2026
7474948
Apply suggestion from @Copilot
srmungar Jan 30, 2026
d23d935
Apply suggestion from @Copilot
srmungar Jan 30, 2026
13e8720
Apply suggestion from @Copilot
srmungar Jan 30, 2026
d0622f0
Apply suggestion from @Copilot
srmungar Jan 30, 2026
0f5f5ec
Apply suggestion from @Copilot
srmungar Jan 30, 2026
0a024b1
Apply suggestion from @Copilot
srmungar Jan 30, 2026
6e53d24
Apply suggestions from code review
srmungar Jan 30, 2026
41dca35
Update scripts/build_elxr12_arm_raw.sh
srmungar Jan 30, 2026
10cc8df
fixing lint errors
srmungar Jan 30, 2026
0c15394
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Jan 30, 2026
602faec
fixing lint errors
srmungar Jan 30, 2026
edee9aa
fixing more lint errors
srmungar Jan 30, 2026
d4600c1
Adding Azure Linux Kernel for ARM64
srmungar Jan 30, 2026
c98a1a8
updated kernel
srmungar Jan 30, 2026
32f245b
disable azure linux ARM64 build
srmungar Jan 30, 2026
1cd446e
updated failing ubuntu tests
srmungar Jan 30, 2026
8d3b7cb
updated partition layout
srmungar Feb 1, 2026
a682d1a
chore: auto-update coverage threshold to 65.0% (was 64.2%)
github-actions[bot] Feb 1, 2026
535a96b
update
srmungar Feb 1, 2026
0a66435
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Feb 1, 2026
0bd4fc2
updates
srmungar Feb 1, 2026
570c249
Support for Building Ubuntu and Elxr Builds in ARM64 Ubuntu Platform …
srmungar Feb 3, 2026
f4fa6c5
chore: auto-update coverage threshold to 65.5% (was 64.8%)
github-actions[bot] Feb 3, 2026
7dc7aa5
deactived ARM64 Ubuntu Build Workflow
srmungar Feb 3, 2026
4ebcf59
Merge branch 'srmungar_armlocal_dev_branch' of https://github.com/ope…
srmungar Feb 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 100 additions & 0 deletions .github/workflows/build-azl3-arm-raw.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: Build Azure Linux Raw Image - ARM
on:
workflow_dispatch: # Manual runs
inputs:
ref:
description: "Branch or SHA to test (e.g. feature/x or a1b2c3)"
required: false
run_qemu_test:
description: "Run QEMU boot test after build"
required: false
default: "false"
type: choice
options:
- "true"
- "false"
push:
branches:
- main
pull_request:
branches:
- main
permissions:
contents: read

jobs:
build-azl3-arm-raw:
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
persist-credentials: false

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Install Earthly
uses: earthly/actions-setup@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
version: "latest"

- name: Install system deps
run: |
sudo apt-get update
sudo apt-get install -y qemu-system-aarch64 ovmf tree jq systemd-ukify mmdebstrap systemd-boot qemu-efi-aarch64

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: stable

- name: Prepare build script
run: |
if [ ! -f scripts/build_azl3_arm_raw.sh ]; then
echo "scripts/build_azl3_arm_raw.sh not found!"
exit 1
fi
chmod +x scripts/build_azl3_arm_raw.sh

- name: Run azl3 Raw Image Build
env:
#RUN_QEMU_TEST: ${{ github.event.push }}
RUN_QEMU_TEST: false
run: |
echo "Starting azl3 raw image build..."
# Ensure script has access to docker group for Earthly
sudo usermod -aG docker $USER

# Prepare arguments with input validation
ARGS=""
case "${RUN_QEMU_TEST}" in
"true")
ARGS="--qemu-test"
echo "QEMU boot test will be run after build"
;;
"false"|"")
echo "QEMU boot test will be skipped"
;;
*)
echo "Invalid input for run_qemu_test: ${RUN_QEMU_TEST}"
exit 1
;;
esac

# Run the azl3 raw image build script
./scripts/build_azl3_arm_raw.sh $ARGS
echo "azl3 raw image build completed."

- name: Set file permissions for artifacts
run: |
sudo chmod -R 755 workspace/ || true
find workspace/*/imagebuild/*/ -name "*.raw*" -exec chmod 777 {} \; || true
- name: GitHub Upload Release Artifacts
uses: actions/upload-artifact@v4
with:
name: azl3-arm-raw-image
path: |
workspace/*/imagebuild/*/*.raw*
retention-days: 30
102 changes: 102 additions & 0 deletions .github/workflows/build-elxr12-arm-raw.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: Build ELXR12 Raw Image - ARM
on:
workflow_dispatch: # Manual runs
inputs:
ref:
description: "Branch or SHA to test (e.g. feature/x or a1b2c3)"
required: false
run_qemu_test:
description: "Run QEMU boot test after build"
required: false
default: "false"
type: choice
options:
- "true"
- "false"
push:
branches:
- main
pull_request:
branches:
- main

permissions:
contents: read

jobs:
build-elxr12-arm-raw:
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
persist-credentials: false
ref: ${{ github.event.inputs.ref || github.ref }}

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Install Earthly
uses: earthly/actions-setup@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
version: "latest"

- name: Install system deps
run: |
sudo apt-get update
sudo apt-get install -y qemu-system-aarch64 ovmf tree jq systemd-ukify mmdebstrap systemd-boot qemu-efi-aarch64

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: stable

- name: Prepare build script
run: |
if [ ! -f scripts/build_elxr12_arm_raw.sh ]; then
echo "scripts/build_elxr12_arm_raw.sh not found!"
exit 1
fi
chmod +x scripts/build_elxr12_arm_raw.sh

- name: Run ARM ELXR12 Raw Image Build
env:
#RUN_QEMU_TEST: ${{ github.event.inputs.run_qemu_test }}
RUN_QEMU_TEST: false
run: |
echo "Starting ARM ELXR12 raw image build..."
# Ensure script has access to docker group for Earthly
sudo usermod -aG docker $USER

# Prepare arguments with input validation
ARGS=""
case "${RUN_QEMU_TEST}" in
"true")
ARGS="--qemu-test"
echo "QEMU boot test will be run after build"
;;
"false"|"")
echo "QEMU boot test will be skipped"
;;
*)
echo "Invalid input for run_qemu_test: ${RUN_QEMU_TEST}"
exit 1
;;
esac

# Run the ELXR12 raw image build script
./scripts/build_elxr12_arm_raw.sh $ARGS
echo "ELXR12 raw image build completed."
- name: Set file permissions for artifacts
run: |
sudo chmod -R 755 workspace/ || true
find workspace/*/imagebuild/*/ -name "*.raw*" -exec chmod 777 {} \; || true

- name: GitHub Upload Release Artifacts
uses: actions/upload-artifact@v4
with:
name: elxr12-arm-raw-image
path: |
workspace/*/imagebuild/*/*.raw*
retention-days: 30
2 changes: 1 addition & 1 deletion .github/workflows/build-elxr12-raw.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,4 +104,4 @@ jobs:
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Accept: application/vnd.github.v3+json" \
--data "{\"body\": \"$COMMENT_BODY\"}" \
"https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments"
"https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments"
101 changes: 101 additions & 0 deletions .github/workflows/build-ubuntu24-arm-raw.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
name: Build Ubuntu24 Raw Image - ARM
on:
workflow_dispatch: # Manual runs
inputs:
ref:
description: "Branch or SHA to test (e.g. feature/x or a1b2c3)"
required: false
run_qemu_test:
description: "Run QEMU boot test after build"
required: false
default: "false"
type: choice
options:
- "true"
- "false"
push:
branches:
- main
pull_request:
branches:
- main

permissions:
contents: read

jobs:
build-ubuntu24-arm-raw:
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
persist-credentials: false

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Install Earthly
uses: earthly/actions-setup@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
version: "latest"

- name: Install system deps
run: |
sudo apt-get update
sudo apt-get install -y qemu-system-aarch64 ovmf tree jq systemd-ukify mmdebstrap systemd-boot qemu-efi-aarch64

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: stable

- name: Prepare build script
run: |
if [ ! -f scripts/build_ubuntu24_arm_raw.sh ]; then
echo "scripts/build_ubuntu24_arm_raw.sh not found!"
exit 1
fi
chmod +x scripts/build_ubuntu24_arm_raw.sh

- name: Run Ubuntu24 Raw Image Build
env:
#RUN_QEMU_TEST: ${{ github.event.push }}
RUN_QEMU_TEST: false
run: |
echo "Starting Ubuntu24 raw image build..."
# Ensure script has access to docker group for Earthly
sudo usermod -aG docker $USER

# Prepare arguments with input validation
ARGS=""
case "${RUN_QEMU_TEST}" in
"true")
ARGS="--qemu-test"
echo "QEMU boot test will be run after build"
;;
"false"|"")
echo "QEMU boot test will be skipped"
;;
*)
echo "Invalid input for run_qemu_test: ${RUN_QEMU_TEST}"
exit 1
;;
esac

# Run the Ubuntu24 raw image build script
./scripts/build_ubuntu24_arm_raw.sh $ARGS
echo "Ubuntu24 raw image build completed."
- name: Set file permissions for artifacts
run: |
sudo chmod -R 755 workspace/ || true
find workspace/*/imagebuild/minimal/ -name "*.raw*" -exec chmod 777 {} \; || true

- name: GitHub Upload Release Artifacts
uses: actions/upload-artifact@v4
with:
name: ubuntu24-arm-raw-image
path: |
workspace/*/imagebuild/minimal/*.raw*
retention-days: 30
Loading
Loading