Skip to content

Commit 0f1e3f5

Browse files
AlistairBpsftw
authored andcommitted
Add support for 9.0.1. Test 8.10, 9.0 in CI.
1 parent a98b6ca commit 0f1e3f5

File tree

3 files changed

+103
-3
lines changed

3 files changed

+103
-3
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ jobs:
1313
strategy:
1414
fail-fast: false
1515
matrix:
16-
ghc: ['8.8.4', '8.10.4']
16+
ghc: ['8.10.4', '9.0.1']
1717
deb: ['stretch', 'buster']
1818
include:
19-
- ghc: '8.8.4'
20-
ghc_minor: '8.8'
2119
- ghc: '8.10.4'
2220
ghc_minor: '8.10'
21+
- ghc: '9.0.1'
22+
ghc_minor: '9.0'
2323
steps:
2424
- uses: actions/checkout@v2
2525
- name: docker build [${{ matrix.ghc }}]

9.0/buster/Dockerfile

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
FROM debian:buster
2+
3+
ENV LANG C.UTF-8
4+
5+
RUN apt-get update && \
6+
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr && \
7+
rm -rf /var/lib/apt/lists/*
8+
9+
ARG GHC=9.0.1
10+
ARG DEBIAN_KEY=427CB69AAC9D00F2A43CAF1CBA3CBA3FFE22B574
11+
ARG CABAL_INSTALL=3.4
12+
ARG STACK=2.5.1
13+
ARG STACK_KEY=C5705533DA4F78D8664B5DC0575159689BEFB442
14+
ARG STACK_RELEASE_KEY=2C6A674E85EE3FB896AFC9B965101FF31C5C154D
15+
16+
RUN export GNUPGHOME="$(mktemp -d)" && \
17+
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys ${DEBIAN_KEY} && \
18+
gpg --batch --armor --export ${DEBIAN_KEY} > /etc/apt/trusted.gpg.d/haskell.org.gpg.asc && \
19+
gpgconf --kill all && \
20+
echo 'deb http://downloads.haskell.org/debian buster main' > /etc/apt/sources.list.d/ghc.list && \
21+
apt-get update && \
22+
apt-get install -y --no-install-recommends \
23+
cabal-install-${CABAL_INSTALL} \
24+
curl \
25+
g++ \
26+
ghc-${GHC} \
27+
git \
28+
libsqlite3-dev \
29+
libtinfo-dev \
30+
make \
31+
netbase \
32+
openssh-client \
33+
xz-utils \
34+
zlib1g-dev && \
35+
rm -rf "$GNUPGHOME" /var/lib/apt/lists/*
36+
37+
RUN export GNUPGHOME="$(mktemp -d)" && \
38+
gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys ${STACK_KEY} && \
39+
gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys ${STACK_RELEASE_KEY} && \
40+
curl -fSL https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-x86_64.tar.gz -o stack.tar.gz && \
41+
curl -fSL https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-x86_64.tar.gz.asc -o stack.tar.gz.asc && \
42+
gpg --batch --trusted-key 0x575159689BEFB442 --verify stack.tar.gz.asc stack.tar.gz && \
43+
tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 && \
44+
/usr/local/bin/stack config set system-ghc --global true && \
45+
/usr/local/bin/stack config set install-ghc --global false && \
46+
rm -rf "$GNUPGHOME" /var/lib/apt/lists/* /stack.tar.gz.asc /stack.tar.gz
47+
48+
ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/cabal/${CABAL_INSTALL}/bin:/opt/ghc/${GHC}/bin:$PATH
49+
50+
CMD ["ghci"]

9.0/stretch/Dockerfile

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
FROM debian:stretch
2+
3+
ENV LANG C.UTF-8
4+
5+
RUN apt-get update && \
6+
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr && \
7+
rm -rf /var/lib/apt/lists/*
8+
9+
ARG GHC=9.0.1
10+
ARG DEBIAN_KEY=427CB69AAC9D00F2A43CAF1CBA3CBA3FFE22B574
11+
ARG CABAL_INSTALL=3.4
12+
ARG STACK=2.5.1
13+
ARG STACK_KEY=C5705533DA4F78D8664B5DC0575159689BEFB442
14+
ARG STACK_RELEASE_KEY=2C6A674E85EE3FB896AFC9B965101FF31C5C154D
15+
16+
RUN export GNUPGHOME="$(mktemp -d)" && \
17+
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys ${DEBIAN_KEY} && \
18+
gpg --batch --armor --export ${DEBIAN_KEY} > /etc/apt/trusted.gpg.d/haskell.org.gpg.asc && \
19+
gpgconf --kill all && \
20+
echo 'deb http://downloads.haskell.org/debian stretch main' > /etc/apt/sources.list.d/ghc.list && \
21+
apt-get update && \
22+
apt-get install -y --no-install-recommends \
23+
cabal-install-${CABAL_INSTALL} \
24+
curl \
25+
g++ \
26+
ghc-${GHC} \
27+
git \
28+
libsqlite3-dev \
29+
libtinfo-dev \
30+
make \
31+
netbase \
32+
openssh-client \
33+
xz-utils \
34+
zlib1g-dev && \
35+
rm -rf "$GNUPGHOME" /var/lib/apt/lists/*
36+
37+
RUN export GNUPGHOME="$(mktemp -d)" && \
38+
gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys ${STACK_KEY} && \
39+
gpg --batch --keyserver ha.pool.sks-keyservers.net --recv-keys ${STACK_RELEASE_KEY} && \
40+
curl -fSL https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-x86_64.tar.gz -o stack.tar.gz && \
41+
curl -fSL https://github.com/commercialhaskell/stack/releases/download/v${STACK}/stack-${STACK}-linux-x86_64.tar.gz.asc -o stack.tar.gz.asc && \
42+
gpg --batch --trusted-key 0x575159689BEFB442 --verify stack.tar.gz.asc stack.tar.gz && \
43+
tar -xf stack.tar.gz -C /usr/local/bin --strip-components=1 && \
44+
/usr/local/bin/stack config set system-ghc --global true && \
45+
/usr/local/bin/stack config set install-ghc --global false && \
46+
rm -rf "$GNUPGHOME" /var/lib/apt/lists/* /stack.tar.gz.asc /stack.tar.gz
47+
48+
ENV PATH /root/.cabal/bin:/root/.local/bin:/opt/cabal/${CABAL_INSTALL}/bin:/opt/ghc/${GHC}/bin:$PATH
49+
50+
CMD ["ghci"]

0 commit comments

Comments
 (0)