@@ -12,7 +12,7 @@ jobs:
fail-fast: false
matrix:
- os: [ ubuntu-18.04, ubuntu-20.04, ubuntu-rolling, centos7, fedora34, fedora35, docs ]
+ os: [ ubuntu-18.04, ubuntu-20.04, ubuntu-22.04, ubuntu-rolling, centos7, fedora34, fedora35, docs ]
steps:
- uses: actions/checkout@v2
new file mode 100644
@@ -0,0 +1,10 @@
+FROM ubuntu:22.04
+ENV DEBIAN_FRONTEND noninteractive
+RUN apt-get update -qq
+RUN if [ `arch` != "ppc64le" ]; then apt-get install -y gcc-powerpc64le-linux-gnu; fi
+RUN apt-get install -y gcc-arm-linux-gnueabi || true
+RUN apt-get install -y gcc ccache expect libssl-dev wget curl xterm device-tree-compiler build-essential gcc python3 g++ pkg-config libz-dev libglib2.0-dev libpixman-1-dev libfdt-dev git libstdc++6 valgrind libtcl8.6 libmbedtls-dev
+RUN if [ `arch` = "x86_64" ]; then curl -O http://public.dhe.ibm.com/software/server/powerfuncsim/p9/packages/v1.1-0/systemsim-p9-1.1-0-trusty_amd64.deb; dpkg -i systemsim-p9-1.1-0-trusty_amd64.deb; fi
+RUN if [ `arch` = "x86_64" ]; then curl -O http://public.dhe.ibm.com/software/server/powerfuncsim/p10/packages/v1.2-1/ubuntu2004/systemsim-p10_1.2-1_amd64.deb; dpkg -i systemsim-p10_1.2-1_amd64.deb; fi
+COPY . /build/
+WORKDIR /build
new file mode 100755
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+set -uo pipefail
+set -e
+set -vx
+
+MAKE_J=$(nproc)
+
+export CROSS="ccache powerpc64le-linux-gnu-"
+
+make -j${MAKE_J} all
+make -j${MAKE_J} check
+(make clean; cd external/gard && CROSS= make -j${MAKE_J})
+# because some ppc64le versions don't have arm cross compiler
+if which arm-linux-gnueabi-gcc; then
+ ( cd external/pflash;
+ echo "Building for ARM..."
+ make clean && make distclean
+ CROSS_COMPILE=arm-linux-gnueabi- make || { echo "ARM build failed"; exit 1; }
+ )
+fi
+(cd external/pflash; make clean && make distclean && make)
+make clean
+SKIBOOT_GCOV=1 make -j${MAKE_J}
+SKIBOOT_GCOV=1 make -j${MAKE_J} check
+
+make clean
+rm -rf builddir
+mkdir builddir
+make SRC=$(pwd) -f ../Makefile -C builddir -j${MAKE_J}
+make clean
New LTS release from Canonical. So let's split it from ubuntu-rolling, which will keep tracking the latest. Signed-off-by: Frederic Barrat <fbarrat@linux.ibm.com> --- .github/workflows/docker-builds-checks.yml | 2 +- opal-ci/Dockerfile-ubuntu-22.04 | 10 +++++++ opal-ci/build-ubuntu-22.04.sh | 31 ++++++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 opal-ci/Dockerfile-ubuntu-22.04 create mode 100755 opal-ci/build-ubuntu-22.04.sh