Skip to content

Commit

Permalink
Update ci matrix and .NET installation instructions. (#364)
Browse files Browse the repository at this point in the history
Adding Fedora41 to the CI matrix while also removing Fedora39.
.NET 6 has also been removed.
The installation steps for .NET 9 have been updated now that it
has been publically released.
  • Loading branch information
nicrowe00 authored Dec 6, 2024
1 parent 26cdb2d commit 7a58c37
Showing 1 changed file with 19 additions and 36 deletions.
55 changes: 19 additions & 36 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,73 +21,56 @@ jobs:
- docker.io/library/alpine:latest
- docker.io/library/alpine:edge
- quay.io/centos/centos:stream9
- quay.io/centos/centos:stream10-development
- registry.fedoraproject.org/fedora:39
- quay.io/centos/centos:stream10
- registry.fedoraproject.org/fedora:40
- registry.fedoraproject.org/fedora:41
- registry.fedoraproject.org/fedora:rawhide
- registry.access.redhat.com/ubi8
- registry.access.redhat.com/ubi9
dotnet_version:
- "6.0"
- "8.0"
- "9.0"
exclude:
- container_image: registry.fedoraproject.org/fedora:rawhide
dotnet_version: "6.0"
- container_image: quay.io/centos/centos:stream10-development
dotnet_version: "6.0"
include:
- container_image: registry.fedoraproject.org/fedora:40
- container_image: docker.io/library/alpine:latest
dotnet_version: "9.0"
- container_image: registry.fedoraproject.org/fedora:rawhide
dotnet_version: "9.0"
- container_image: quay.io/centos/centos:stream10-development
- container_image: docker.io/library/alpine:edge
dotnet_version: "9.0"

container:
image: ${{ matrix.container_image }}
options: --security-opt seccomp=unconfined


steps:
- uses: actions/checkout@v4

- name: Install .NET ${{ matrix.dotnet_version }}
# .NET 9 is a preview and requires 'copr' for installation.
# .NET 9 introduced the 'dotnet-sdk-aot' package
# .NET 8 introduced the 'dbg' packages
# '/etc/os-release' will also match the grep fedora for Fedora derived systems, such as CentOS.
timeout-minutes: 10
run: |
set -euo pipefail
cat /etc/os-release
if [[ ${{ matrix.dotnet_version }} == 9.* ]]; then
dnf install 'dnf-command(copr)' -y
if grep centos /etc/os-release; then
dnf copr enable @dotnet-sig/dotnet-preview centos-stream-10-x86_64 -y
else
dnf copr enable @dotnet-sig/dotnet-preview -y
fi
dnf install -y dotnet-sdk-aot-${{ matrix.dotnet_version }}
fi
if grep fedora /etc/os-release; then
dnf install -y dotnet-sdk-${{ matrix.dotnet_version }}
if [[ ! ${{ matrix.dotnet_version }} == *6* ]]; then
dnf install -y \
dotnet-sdk-dbg-${{ matrix.dotnet_version }} \
dotnet-runtime-dbg-${{ matrix.dotnet_version }} \
aspnetcore-runtime-dbg-${{ matrix.dotnet_version }}
fi
dnf install -y \
dotnet-sdk-dbg-${{ matrix.dotnet_version }} \
dotnet-runtime-dbg-${{ matrix.dotnet_version }} \
aspnetcore-runtime-dbg-${{ matrix.dotnet_version }}
if [[ ${{ matrix.dotnet_version }} == 9.* ]]; then
dnf install -y dotnet-sdk-aot-${{ matrix.dotnet_version }}
fi
elif grep alpine /etc/os-release; then
if grep edge /etc/os-release; then
echo "https://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
fi
apk add dotnet-sdk-${{ matrix.dotnet_version }} dotnet-doc
if [[ ! ${{ matrix.dotnet_version }} == *6* ]]; then
apk add \
dotnet-sdk-dbg-${{ matrix.dotnet_version }} \
dotnet-runtime-dbg-${{ matrix.dotnet_version }} \
aspnetcore-runtime-dbg-${{ matrix.dotnet_version }}
apk add \
dotnet-sdk-dbg-${{ matrix.dotnet_version }} \
dotnet-runtime-dbg-${{ matrix.dotnet_version }} \
aspnetcore-runtime-dbg-${{ matrix.dotnet_version }}
if [[ ${{ matrix.dotnet_version }} == 9.* ]]; then
apk add dotnet-sdk-aot-${{ matrix.dotnet_version }}
fi
fi
Expand Down Expand Up @@ -138,4 +121,4 @@ jobs:
if: ${{ always() }}
run: |
set -euo pipefail
find -iname '*.log' -exec echo {} \; -exec cat {} \;
find -iname '*.log' -exec echo {} \; -exec cat {} \;

0 comments on commit 7a58c37

Please sign in to comment.