diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index bbc47e0b5..856cfc89b 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -66,27 +66,15 @@ jobs: fail-fast: false matrix: include: - - name: "Centos 8" + - name: "Fedora 38" runner: ubuntu-latest - dockerfile: centos8 - - name: "Fedora 32" + dockerfile: fedora38 + - name: "Fedora 39" runner: ubuntu-latest - dockerfile: fedora32 - - name: "Fedora 33" - runner: ubuntu-latest - dockerfile: fedora33 - - name: "Fedora 34" - runner: ubuntu-latest - dockerfile: fedora34 - - name: "Fedora 35" - runner: ubuntu-latest - dockerfile: fedora35 + dockerfile: fedora39 - name: "Debian Testing" runner: ubuntu-latest dockerfile: debiantesting - - name: "Ubuntu 18.04" - runner: ubuntu-latest - dockerfile: ubuntu1804 - name: "Ubuntu 20.04" runner: ubuntu-latest dockerfile: ubuntu2004 diff --git a/docker-compose.yml b/docker-compose.yml index b6a311f41..3042ff4f8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,57 +1,17 @@ version: '3' services: - test-centos7: + test-fedora38: build: context: . - dockerfile: test/docker/centos7 + dockerfile: test/docker/fedora38 network_mode: "host" security_opt: - label=type:container_runtime_t tty: true - test-centos8: + test-fedora39: build: context: . - dockerfile: test/docker/centos8 - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true - test-fedora32: - build: - context: . - dockerfile: test/docker/fedora32 - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true - test-fedora33: - build: - context: . - dockerfile: test/docker/fedora33 - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true - test-fedora34: - build: - context: . - dockerfile: test/docker/fedora34 - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true - test-fedora35: - build: - context: . - dockerfile: test/docker/fedora35 - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true - test-ubuntu1804: - build: - context: . - dockerfile: test/docker/ubuntu1804 + dockerfile: test/docker/fedora39 network_mode: "host" security_opt: - label=type:container_runtime_t @@ -72,14 +32,6 @@ services: security_opt: - label=type:container_runtime_t tty: true - test-debianstable: - build: - context: . - dockerfile: test/docker/debianstable - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true test-debiantesting: build: context: . @@ -88,14 +40,6 @@ services: security_opt: - label=type:container_runtime_t tty: true - test-gentoo: - build: - context: . - dockerfile: test/docker/gentoo - network_mode: "host" - security_opt: - - label=type:container_runtime_t - tty: true test-opensuse15: build: context: . diff --git a/test/docker/fedora38 b/test/docker/fedora38 new file mode 100644 index 000000000..9051fc885 --- /dev/null +++ b/test/docker/fedora38 @@ -0,0 +1,32 @@ +FROM fedora:38 + +RUN dnf update -y +RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y + +# Setup language environment +ENV LC_ALL en_US.UTF-8 +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US.UTF-8 + +# Add source directory +ADD . /root/code/ +WORKDIR /root/code/ + +# Setup Rust +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ + sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs + +# Setup taskwarrior +RUN git clean -dfx +RUN git submodule init +RUN git submodule update +RUN cmake -DCMAKE_BUILD_TYPE=debug . +RUN make -j8 +RUN make install +RUN task --version + +# Setup tests +WORKDIR /root/code/test/ +RUN make -j8 + +CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"] diff --git a/test/docker/fedora39 b/test/docker/fedora39 new file mode 100644 index 000000000..b5a4f91cf --- /dev/null +++ b/test/docker/fedora39 @@ -0,0 +1,32 @@ +FROM fedora:39 + +RUN dnf update -y +RUN dnf install python3 git gcc gcc-c++ cmake make libuuid-devel libfaketime glibc-langpack-en curl -y + +# Setup language environment +ENV LC_ALL en_US.UTF-8 +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US.UTF-8 + +# Add source directory +ADD . /root/code/ +WORKDIR /root/code/ + +# Setup Rust +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ + sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs + +# Setup taskwarrior +RUN git clean -dfx +RUN git submodule init +RUN git submodule update +RUN cmake -DCMAKE_BUILD_TYPE=debug . +RUN make -j8 +RUN make install +RUN task --version + +# Setup tests +WORKDIR /root/code/test/ +RUN make -j8 + +CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"]