File tree Expand file tree Collapse file tree 3 files changed +60
-18
lines changed Expand file tree Collapse file tree 3 files changed +60
-18
lines changed Original file line number Diff line number Diff line change 7
7
# environment for building the Unified Memory Framework project.
8
8
#
9
9
10
- # Pull base Alpine image version 3.20
11
- FROM alpine:3.20
10
+ # Pull base Alpine image version 3.21
11
+ FROM registry.hub.docker.com/library/ alpine@sha256:a8560b36e8b8210634f77d9f7f9efd7ffa463e380b75e2e74aff4511df3ef88c
12
12
13
13
# Set environment variables
14
- ENV OS alpine
15
- ENV OS_VER 3.20
14
+ ENV OS= alpine
15
+ ENV OS_VER=3.21
16
16
17
17
# Base development packages
18
18
ARG BASE_DEPS="\
19
+ bash \
19
20
cmake \
20
21
git \
21
- g++ \
22
- make"
22
+ g++ \
23
+ make \
24
+ sudo"
23
25
24
26
# UMF's dependencies
25
27
ARG UMF_DEPS="\
26
28
hwloc-dev"
27
29
28
- # Add a new (non-root) 'test_user'
29
- ENV USER test_user
30
- ENV USERPASS pass
31
- RUN useradd -m "${USER}" -g sudo -p "$(mkpasswd ${USERPASS})"
32
- USER test_user
30
+ # Dependencies for tests
31
+ ARG TEST_DEPS="\
32
+ numactl-dev"
33
33
34
34
# Update and install required packages
35
35
RUN apk update \
36
- && apk add \
36
+ && apk add --no-cache \
37
37
${BASE_DEPS} \
38
+ ${TEST_DEPS} \
38
39
${UMF_DEPS}
39
40
40
- # clone the repository
41
- RUN git clone https://github.com/oneapi-src/unified-memory-framework.git
41
+ # Add a new (non-root) 'test_user'
42
+ ENV USER=test_user
43
+ RUN adduser -D -G wheel ${USER}
44
+ RUN echo '%wheel ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
42
45
43
- # build the project
44
- RUN cd unified-memory-framework \
45
- cmake -B build -DCMAKE_BUILD_TYPE=Release -DUMF_BUILD_TESTS=ON -DUMF_BUILD_EXAMPLES=OFF \
46
- cmake --build build
46
+ USER test_user
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+ # Copyright (C) 2025 Intel Corporation
3
+ # Under the Apache License v2.0 with LLVM Exceptions. See LICENSE.TXT.
4
+ # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5
+
6
+ # alpine_build.sh - Script for building UMF on Alpine image
7
+
8
+ set -e
9
+
10
+ UMF_BUILD_TYPE=$1
11
+ WORKDIR=$2
12
+
13
+ sudo chown $USER $WORKDIR
14
+ cd unified-memory-framework
15
+
16
+ cmake -B build -DCMAKE_BUILD_TYPE=$UMF_BUILD_TYPE -DUMF_BUILD_TESTS=ON -DUMF_BUILD_EXAMPLES=ON
17
+ cmake --build build
Original file line number Diff line number Diff line change @@ -513,3 +513,28 @@ jobs:
513
513
514
514
SYCL :
515
515
uses : ./.github/workflows/reusable_sycl.yml
516
+
517
+ alpine :
518
+ name : Alpine
519
+ env :
520
+ HOST_WORKDIR : ${{github.workspace}}
521
+ WORKDIR : /unified-memory-framework
522
+ strategy :
523
+ matrix :
524
+ build_type : [Debug, Release]
525
+ runs-on : ubuntu-latest
526
+
527
+ steps :
528
+ - name : Checkout repository
529
+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
530
+ with :
531
+ fetch-depth : 0
532
+
533
+ - name : Build Alpine image
534
+ run : |
535
+ docker build . -f .github/docker/alpine-3.21.Dockerfile -t umf-alpine-3.21
536
+
537
+ - name : Run UMF build on Alpine image
538
+ run : |
539
+ docker run --rm -i -v $HOST_WORKDIR:$WORKDIR \
540
+ umf-alpine-3.21 $WORKDIR/.github/scripts/alpine_build.sh ${{matrix.build_type}} $WORKDIR
You can’t perform that action at this time.
0 commit comments