Skip to content

Commit

Permalink
Rework bindist CI to avoid actions/upload-artifact#489
Browse files Browse the repository at this point in the history
Build linux bindists in container actions, allowing us to move checkout and upload
actions to the parent container.
  • Loading branch information
wz1000 committed Jan 16, 2025
1 parent 2df8775 commit 48ac069
Show file tree
Hide file tree
Showing 24 changed files with 4,706 additions and 1,005 deletions.
23 changes: 23 additions & 0 deletions .github/actions/bindist-actions/action-centos7/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
description: Container for centos7
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-centos7
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* && sed
-i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
&& yum -y install epel-release && yum install -y
STAGE: ${{ inputs.stage }}
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
xz zlib-devel patchelf
image: centos:7
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-deb10/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for deb10
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-deb10
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: debian:10
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-deb11/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for deb11
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-deb11
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: debian:11
using: docker
24 changes: 24 additions & 0 deletions .github/actions/bindist-actions/action-deb9/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
description: Container for deb9
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-deb9
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list &&
sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list &&
sed -i /-updates/d /etc/apt/sources.list && apt-get update && apt-get install
-y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: debian:9
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-fedora27/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for fedora27
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-fedora27
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: dnf install -y
STAGE: ${{ inputs.stage }}
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
xz zlib-devel patchelf
image: fedora:27
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-fedora33/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for fedora33
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-fedora33
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: dnf install -y
STAGE: ${{ inputs.stage }}
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
xz zlib-devel patchelf
image: fedora:33
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-mint193/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for mint193
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-mint193
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: linuxmintd/mint19.3-amd64
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-mint202/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for mint202
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-mint202
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: linuxmintd/mint20.2-amd64
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-ubuntu1804/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for ubuntu1804
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-ubuntu1804
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: ubuntu:18.04
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-ubuntu2004/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for ubuntu2004
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-ubuntu2004
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: ubuntu:20.04
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-ubuntu2204/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for ubuntu2204
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-ubuntu2204
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: apt-get update && apt-get install -y
STAGE: ${{ inputs.stage }}
TOOLS: libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev
git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc
autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5
libtinfo5 patchelf
image: ubuntu:22.04
using: docker
21 changes: 21 additions & 0 deletions .github/actions/bindist-actions/action-unknown/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
description: Container for unknown
inputs:
stage:
description: which stage to build
required: true
version:
description: which GHC version to build/test
required: false
name: action-unknown
runs:
entrypoint: .github/scripts/entrypoint.sh
env:
GHC_VERSION: ${{ inputs.version }}
INSTALL: yum -y install epel-release && yum install -y --allowerasing
STAGE: ${{ inputs.stage }}
TOOLS: autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs
findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs
ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which
xz zlib-devel patchelf
image: rockylinux:8
using: docker
Loading

0 comments on commit 48ac069

Please sign in to comment.