Skip to content

Commit 8cb2e43

Browse files
committed
Rework bindist CI to avoid actions/upload-artifact#489
Build linux bindists in container actions, allowing us to move checkout and upload actions to the parent container.
1 parent 2df8775 commit 8cb2e43

File tree

22 files changed

+4374
-1002
lines changed

22 files changed

+4374
-1002
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
description: Container for centos7
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-centos7
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* && sed
15+
-i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
16+
&& yum -y install epel-release && yum install -y
17+
STAGE: ${{ inputs.stage }}
18+
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
19+
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
20+
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
21+
xz zlib-devel patchelf
22+
image: centos:7
23+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for deb10
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-deb10
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: debian:10
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for deb11
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-deb11
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: debian:11
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
description: Container for deb9
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-deb9
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list &&
15+
sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list &&
16+
sed -i /-updates/d /etc/apt/sources.list && apt-get update && apt-get install
17+
-y
18+
STAGE: ${{ inputs.stage }}
19+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
20+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
21+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
22+
libtinfo5 patchelf
23+
image: debian:9
24+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for fedora27
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-fedora27
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: dnf install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
17+
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
18+
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
19+
xz zlib-devel patchelf
20+
image: fedora:27
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for fedora33
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-fedora33
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: dnf install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
17+
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
18+
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
19+
xz zlib-devel patchelf
20+
image: fedora:33
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for mint193
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-mint193
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: linuxmintd/mint19.3-amd64
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for mint202
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-mint202
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: linuxmintd/mint20.2-amd64
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for ubuntu1804
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-ubuntu1804
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: ubuntu:18.04
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for ubuntu2004
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-ubuntu2004
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: ubuntu:20.04
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for ubuntu2204
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-ubuntu2204
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: apt-get update && apt-get install -y
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
17+
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
18+
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
19+
libtinfo5 patchelf
20+
image: ubuntu:22.04
21+
using: docker
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
description: Container for unknown
2+
inputs:
3+
stage:
4+
description: which stage to build
5+
required: true
6+
version:
7+
description: which GHC version to build/test
8+
required: false
9+
name: action-unknown
10+
runs:
11+
entrypoint: .github/scripts/entrypoint.sh
12+
env:
13+
GHC_VERSION: ${{ inputs.version }}
14+
INSTALL: yum -y install epel-release && yum install -y --allowerasing
15+
STAGE: ${{ inputs.stage }}
16+
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
17+
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
18+
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
19+
xz zlib-devel patchelf
20+
image: rockylinux:8
21+
using: docker

0 commit comments

Comments
 (0)