Skip to content

Port CentOS 9/10 support to main - #798

Open
ahmadelyoussef wants to merge 1 commit into
mainfrom
centos9-10-ci-install
Open

Port CentOS 9/10 support to main#798
ahmadelyoussef wants to merge 1 commit into
mainfrom
centos9-10-ci-install

Conversation

@ahmadelyoussef

Copy link
Copy Markdown
Contributor

Adding github CI for main.
Adding support for Centos10 for main and changes to support Centos9

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Aug 11, 2026
Comment on lines +36 to +109
runs-on: ${{ matrix.host-machine.instance }}
container:
image: ${{ matrix.host-machine.container }}
options: --user root --privileged --pid=host
volumes:
- /var/run/docker.sock:/var/run/docker.sock
defaults:
run:
shell: bash
env:
PRELUDE: .github/scripts/setup_env.bash
BUILD_ENV: build_env
continue-on-error: false
strategy:
fail-fast: false
matrix:
host-machine: [
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream10", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream10", type: "centos" },
]
python-version: [ "3.12" ]
steps:
- name: Setup Build Container (ubuntu-based)
if: ${{ matrix.host-machine.type == 'ubuntu' }}
run: apt update -y; apt install -y build-essential git pciutils socat sudo wget dmidecode

- name: Setup Build Container (centos-based)
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
dnf update -y
dnf install -y git pciutils which dmidecode sudo shadow-utils passwd

- name: Checkout the Repository
uses: actions/checkout@v4
with:
submodules: true

- name: Fix PAM configuration for sudo
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
echo "auth sufficient pam_rootok.so" > /etc/pam.d/sudo

- name: Enable Sudo without password
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
echo "root ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers

- name: Unlock root user account
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
passwd -u root

- name: Free Disk Space on Host
run: . $PRELUDE; free_disk_space_on_host

- name: Display System Info
run: . $PRELUDE; print_system_info

- name: Install Build Tools
run: . $PRELUDE; install_build_tools

- name: Setup Miniconda
run: . $PRELUDE; setup_miniconda $HOME/miniconda

- name: Create Conda Environment
run: . $PRELUDE; create_conda_environment $BUILD_ENV ${{ matrix.python-version }}

- name: Install Python Tools
run: . $PRELUDE; install_python_tools $BUILD_ENV

- name: Install Health_check
run: . $PRELUDE; install_health_check $BUILD_ENV
Comment thread .github/workflows/dcperf_ci_mediawiki.yml Fixed
Comment on lines +36 to +92
runs-on: ${{ matrix.host-machine.instance }}
container:
image: ${{ matrix.host-machine.container }}
options: --user root --privileged --pid=host
volumes:
- /var/run/docker.sock:/var/run/docker.sock
defaults:
run:
shell: bash
env:
PRELUDE: .github/scripts/setup_env.bash
BUILD_ENV: build_env
continue-on-error: false
strategy:
fail-fast: false
matrix:
host-machine: [
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream10", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream10", type: "centos" },
]
python-version: [ "3.12" ]
steps:
- name: Setup Build Container (ubuntu-based)
if: ${{ matrix.host-machine.type == 'ubuntu' }}
run: apt update -y; apt install -y build-essential git pciutils socat sudo wget dmidecode

- name: Setup Build Container (centos-based)
if: ${{ matrix.host-machine.type == 'centos' }}
run: dnf update -y; dnf install -y git pciutils which dmidecode

- name: Checkout the Repository
uses: actions/checkout@v4
with:
submodules: true

- name: Free Disk Space on Host
run: . $PRELUDE; free_disk_space_on_host

- name: Display System Info
run: . $PRELUDE; print_system_info

- name: Install Build Tools
run: . $PRELUDE; install_build_tools

- name: Setup Miniconda
run: . $PRELUDE; setup_miniconda $HOME/miniconda

- name: Create Conda Environment
run: . $PRELUDE; create_conda_environment $BUILD_ENV ${{ matrix.python-version }}

- name: Install Python Tools
run: . $PRELUDE; install_python_tools $BUILD_ENV

- name: Install Spark
run: . $PRELUDE; install_spark $BUILD_ENV
Comment on lines +42 to +98
runs-on: ${{ matrix.host-machine.instance }}
container:
image: ${{ matrix.host-machine.container }}
options: --user root --privileged --pid=host
volumes:
- /var/run/docker.sock:/var/run/docker.sock
defaults:
run:
shell: bash
env:
PRELUDE: .github/scripts/setup_env.bash
BUILD_ENV: build_env
continue-on-error: false
strategy:
fail-fast: false
matrix:
host-machine: [
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream10", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream10", type: "centos" },
]
python-version: [ "3.12" ]
steps:
- name: Setup Build Container (ubuntu-based)
if: ${{ matrix.host-machine.type == 'ubuntu' }}
run: apt update -y; apt install -y build-essential git pciutils socat sudo wget dmidecode curl

- name: Setup Build Container (centos-based)
if: ${{ matrix.host-machine.type == 'centos' }}
run: dnf update -y; dnf install -y git pciutils which dmidecode

- name: Checkout the Repository
uses: actions/checkout@v4
with:
submodules: true

- name: Free Disk Space on Host
run: . $PRELUDE; free_disk_space_on_host

- name: Display System Info
run: . $PRELUDE; print_system_info

- name: Install Build Tools
run: . $PRELUDE; install_build_tools

- name: Setup Miniconda
run: . $PRELUDE; setup_miniconda $HOME/miniconda

- name: Create Conda Environment
run: . $PRELUDE; create_conda_environment $BUILD_ENV ${{ matrix.python-version }}

- name: Install Python Tools
run: . $PRELUDE; install_python_tools $BUILD_ENV

- name: Install Tao_bench
run: . $PRELUDE; install_tao_bench $BUILD_ENV
Comment on lines +36 to +92
runs-on: ${{ matrix.host-machine.instance }}
container:
image: ${{ matrix.host-machine.container }}
options: --user root --privileged --pid=host
volumes:
- /var/run/docker.sock:/var/run/docker.sock
defaults:
run:
shell: bash
env:
PRELUDE: .github/scripts/setup_env.bash
BUILD_ENV: build_env
continue-on-error: false
strategy:
fail-fast: false
matrix:
host-machine: [
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream10", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream10", type: "centos" },
]
python-version: [ "3.12" ]
steps:
- name: Setup Build Container (ubuntu-based)
if: ${{ matrix.host-machine.type == 'ubuntu' }}
run: apt update -y; apt install -y build-essential git pciutils socat sudo wget dmidecode gcc clang; clang --version; gcc --version

- name: Setup Build Container (centos-based)
if: ${{ matrix.host-machine.type == 'centos' }}
run: dnf update -y; dnf install -y git pciutils which dmidecode gcc clang

- name: Checkout the Repository
uses: actions/checkout@v4
with:
submodules: true

- name: Free Disk Space on Host
run: . $PRELUDE; free_disk_space_on_host

- name: Display System Info
run: . $PRELUDE; print_system_info

- name: Install Build Tools
run: . $PRELUDE; install_build_tools

- name: Setup Miniconda
run: . $PRELUDE; setup_miniconda $HOME/miniconda

- name: Create Conda Environment
run: . $PRELUDE; create_conda_environment $BUILD_ENV ${{ matrix.python-version }}

- name: Install Python Tools
run: . $PRELUDE; install_python_tools $BUILD_ENV

- name: Install VideoTranscodeBench
run: . $PRELUDE; install_video_transcode_bench $BUILD_ENV
Comment on lines +36 to +109
runs-on: ${{ matrix.host-machine.instance }}
container:
image: ${{ matrix.host-machine.container }}
options: --user root --privileged --pid=host
volumes:
- /var/run/docker.sock:/var/run/docker.sock
defaults:
run:
shell: bash
env:
PRELUDE: .github/scripts/setup_env.bash
BUILD_ENV: build_env
continue-on-error: false
strategy:
fail-fast: false
matrix:
host-machine: [
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream9", type: "centos" },
{ arch: x86, instance: "ubuntu-latest", container: "quay.io/centos/centos:stream10", type: "centos" },
{ arch: aarch64, instance: "ubuntu-24.04-arm", container: "quay.io/centos/centos:stream10", type: "centos" },
]
python-version: [ "3.12" ]
steps:
- name: Setup Build Container (ubuntu-based)
if: ${{ matrix.host-machine.type == 'ubuntu' }}
run: apt update -y; apt install -y build-essential git pciutils socat sudo wget dmidecode

- name: Setup Build Container (centos-based)
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
dnf update -y
dnf install -y git pciutils which dmidecode sudo passwd

- name: Checkout the Repository
uses: actions/checkout@v4
with:
submodules: true

- name: Fix PAM configuration for sudo
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
echo "auth sufficient pam_rootok.so" > /etc/pam.d/sudo

- name: Enable Sudo without password
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
echo "root ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers

- name: Unlock root user account
if: ${{ matrix.host-machine.type == 'centos' }}
run: |
passwd -u root

- name: Free Disk Space on Host
run: . $PRELUDE; free_disk_space_on_host

- name: Display System Info
run: . $PRELUDE; print_system_info

- name: Install Build Tools
run: . $PRELUDE; install_build_tools

- name: Setup Miniconda
run: . $PRELUDE; setup_miniconda $HOME/miniconda

- name: Create Conda Environment
run: . $PRELUDE; create_conda_environment $BUILD_ENV ${{ matrix.python-version }}

- name: Install Python Tools
run: . $PRELUDE; install_python_tools $BUILD_ENV

- name: Install wdl
run: . $PRELUDE; install_wdl $BUILD_ENV
@ahmadelyoussef
ahmadelyoussef force-pushed the centos9-10-ci-install branch 11 times, most recently from 122d7bf to 337f8aa Compare August 14, 2026 19:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants