Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 4 additions & 0 deletions .github/workflows/sycl-containers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,10 @@ jobs:
file: ubuntu2204_base
tag: latest
build_args: ""
- name: Base Ubuntu 24.04 Docker image
file: ubuntu2404_base
tag: latest
build_args: ""
- name: Build Ubuntu Docker image
file: ubuntu2204_build
tag: latest
Expand Down
32 changes: 32 additions & 0 deletions devops/containers/ubuntu2404_base.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
FROM ubuntu:24.04

ENV DEBIAN_FRONTEND=noninteractive

USER root

# Install SYCL prerequisites
COPY scripts/install_build_tools.sh /install.sh
RUN /install.sh

# By default Ubuntu sets an arbitrary UID value, that is different from host
# system. When CI passes default UID value of 1001, some of LLVM tools fail to
# discover user home directory and fail a few LIT tests. Fixes UID and GID to
# 1001, that is used as default by GitHub Actions.
RUN groupadd -g 1001 sycl && useradd sycl -u 1001 -g 1001 -m -s /bin/bash
# Add sycl user to video/irc groups so that it can access GPU
RUN usermod -aG video sycl
RUN usermod -aG irc sycl

# group 109 is required for sycl user to access PVC card.
RUN groupadd -g 109 render
RUN usermod -aG render sycl

# Allow sycl user to run as sudo
RUN echo "sycl ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

COPY actions/cached_checkout /actions/cached_checkout
COPY actions/cleanup /actions/cleanup
COPY scripts/docker_entrypoint.sh /docker_entrypoint.sh
COPY scripts/install_drivers.sh /opt/install_drivers.sh

ENTRYPOINT ["/docker_entrypoint.sh"]
4 changes: 1 addition & 3 deletions devops/scripts/install_build_tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ apt update && apt install -yqq \
ccache \
git \
python3 \
python3-distutils \
python3-psutil \
python-is-python3 \
python3-pip \
zstd \
Expand All @@ -26,5 +26,3 @@ apt update && apt install -yqq \
libhwloc-dev \
libzstd-dev

pip3 install psutil

6 changes: 4 additions & 2 deletions sycl/doc/developer/DockerBKMs.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,10 @@ identical for Docker and Podman. Choose whatever is available on your system.

The following containers are publicly available for DPC++ compiler development:

- `ghcr.io/intel/llvm/ubuntu2204_base`: contains basic environment setup for
building DPC++ compiler from source.
- `ghcr.io/intel/llvm/ubuntu2204_base`: contains basic Ubuntu 22.04 environment
setup for building DPC++ compiler from source.
- `ghcr.io/intel/llvm/ubuntu2404_base`: contains basic Ubuntu 24.04 environment
setup for building DPC++ compiler from source.
- `ghcr.io/intel/llvm/ubuntu2204_intel_drivers`: contains everything from the
base container + pre-installed Intel drivers.
The image comes in four flavors/tags:
Expand Down
Loading