Skip to content

Template docker files used for validation #6900

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 31 additions & 4 deletions .docker/validate-7.10.3.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,24 @@ RUN mkdir -p /root/.cabal/bin && \
rm -f cabal-plan.xz && \
chmod a+x /root/.cabal/bin/cabal-plan

# Install cabal-env
RUN curl -sL https://github.com/phadej/cabal-extras/releases/download/preview-20191225/cabal-env-snapshot-20191225-x86_64-linux.xz > cabal-env.xz && \
echo "1b567d529c5f627fd8c956e57ae8f0d9f11ee66d6db34b7fb0cb1c370b4edf01 cabal-env.xz" | sha256sum -c - && \
xz -d < cabal-env.xz > $HOME/.cabal/bin/cabal-env && \
rm -f cabal-env.xz && \
chmod a+x $HOME/.cabal/bin/cabal-env


# Update index
RUN cabal v2-update
RUN cabal v2-update --index-state="2020-06-12T23:36:15Z"

# We install happy, so it's in the store; we (hopefully) don't use it directly.
RUN cabal v2-install happy --constraint 'happy ^>=1.19.12'

# Install some other dependencies
# Remove $HOME/.ghc so there aren't any environments
RUN cabal v2-install -w ghc-7.10.3 --lib \
Cabal \
aeson \
async \
base-compat \
Expand All @@ -27,25 +36,43 @@ RUN cabal v2-install -w ghc-7.10.3 --lib \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
lukko \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-posix \
regex-tdfa \
resolv \
rere \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
void \
zlib \
resolv \
parsec \
text \
--constraint="rere -rere-cfg" \
--constraint="these -assoc" \
--constraint="bytestring installed" \
--constraint="binary installed" \
--constraint="containers installed" \
--constraint="deepseq installed" \
--constraint="directory installed" \
--constraint="filepath installed" \
--constraint="pretty installed" \
--constraint="process installed" \
--constraint="time installed" \
--constraint="unix installed" \
--constraint="transformers installed" \
&& rm -rf $HOME/.ghc

# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-7.10.3 -v
RUN sh ./validate.sh -w ghc-7.10.3 -v
24 changes: 15 additions & 9 deletions .docker/validate-7.6.3.dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# TODO: change to bionic
# https://github.com/haskell-CI/haskell-ci/issues/342
FROM phadej/ghc:7.6.3-xenial

# Install cabal-plan
Expand All @@ -10,19 +8,27 @@ RUN mkdir -p /root/.cabal/bin && \
rm -f cabal-plan.xz && \
chmod a+x /root/.cabal/bin/cabal-plan

# Install cabal-env
RUN curl -sL https://github.com/phadej/cabal-extras/releases/download/preview-20191225/cabal-env-snapshot-20191225-x86_64-linux.xz > cabal-env.xz && \
echo "1b567d529c5f627fd8c956e57ae8f0d9f11ee66d6db34b7fb0cb1c370b4edf01 cabal-env.xz" | sha256sum -c - && \
xz -d < cabal-env.xz > $HOME/.cabal/bin/cabal-env && \
rm -f cabal-env.xz && \
chmod a+x $HOME/.cabal/bin/cabal-env

# We need newer compiler, to install cabal-plan
RUN apt-get update
RUN apt-get install -y ghc-7.6.3-dyn

# Update index
RUN cabal v2-update
RUN cabal v2-update --index-state="2020-06-12T23:36:15Z"

# We install happy, so it's in the store; we (hopefully) don't use it directly.
RUN cabal v2-install happy --constraint 'happy ^>=1.19.12'

# Install some other dependencies
# Remove $HOME/.ghc so there aren't any environments
RUN cabal v2-install -w ghc-7.6.3 --lib \
Cabal \
aeson \
async \
base-compat \
Expand All @@ -33,28 +39,28 @@ RUN cabal v2-install -w ghc-7.6.3 --lib \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
nats \
lukko \
network \
optparse-applicative \
parsec \
pretty-show \
regex-compat-tdfa \
regex-posix \
regex-tdfa \
rere \
semigroups \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
text \
tree-diff \
unordered-containers \
void \
zlib \
parsec \
text \
--constraint="rere -rere-cfg" \
--constraint="these -assoc" \
--constraint="bytestring installed" \
--constraint="binary installed" \
--constraint="containers installed" \
Expand Down
25 changes: 17 additions & 8 deletions .docker/validate-7.8.4.dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# TODO: change to bionic
# https://github.com/haskell-CI/haskell-ci/issues/342
FROM phadej/ghc:7.8.4-xenial

# Install cabal-plan
Expand All @@ -10,19 +8,27 @@ RUN mkdir -p /root/.cabal/bin && \
rm -f cabal-plan.xz && \
chmod a+x /root/.cabal/bin/cabal-plan

# Install cabal-env
RUN curl -sL https://github.com/phadej/cabal-extras/releases/download/preview-20191225/cabal-env-snapshot-20191225-x86_64-linux.xz > cabal-env.xz && \
echo "1b567d529c5f627fd8c956e57ae8f0d9f11ee66d6db34b7fb0cb1c370b4edf01 cabal-env.xz" | sha256sum -c - && \
xz -d < cabal-env.xz > $HOME/.cabal/bin/cabal-env && \
rm -f cabal-env.xz && \
chmod a+x $HOME/.cabal/bin/cabal-env

# We need newer compiler, to install cabal-plan
RUN apt-get update
RUN apt-get install -y ghc-7.8.4-dyn

# Update index
RUN cabal v2-update
RUN cabal v2-update --index-state="2020-06-12T23:36:15Z"

# We install happy, so it's in the store; we (hopefully) don't use it directly.
RUN cabal v2-install happy --constraint 'happy ^>=1.19.12'

# Install some other dependencies
# Remove $HOME/.ghc so there aren't any environments
RUN cabal v2-install -w ghc-7.8.4 --lib \
Cabal \
aeson \
async \
base-compat \
Expand All @@ -33,26 +39,28 @@ RUN cabal v2-install -w ghc-7.8.4 --lib \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
lukko \
network \
optparse-applicative \
parsec \
pretty-show \
regex-compat-tdfa \
regex-posix \
regex-tdfa \
rere \
semigroups \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
text \
tree-diff \
unordered-containers \
void \
zlib \
parsec \
text \
--constraint="rere -rere-cfg" \
--constraint="these -assoc" \
--constraint="bytestring installed" \
--constraint="binary installed" \
--constraint="containers installed" \
Expand All @@ -63,6 +71,7 @@ RUN cabal v2-install -w ghc-7.8.4 --lib \
--constraint="process installed" \
--constraint="time installed" \
--constraint="unix installed" \
--constraint="transformers installed" \
&& rm -rf $HOME/.ghc

# Validate
Expand Down
26 changes: 22 additions & 4 deletions .docker/validate-8.0.2.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,17 @@ RUN mkdir -p /root/.cabal/bin && \
rm -f cabal-plan.xz && \
chmod a+x /root/.cabal/bin/cabal-plan


# Update index
RUN cabal v2-update
RUN cabal v2-update --index-state="2020-06-12T23:36:15Z"

# We install happy, so it's in the store; we (hopefully) don't use it directly.
RUN cabal v2-install happy --constraint 'happy ^>=1.19.12'

# Install some other dependencies
# Remove $HOME/.ghc so there aren't any environments
RUN cabal v2-install -w ghc-8.0.2 --lib \
Cabal \
aeson \
async \
base-compat \
Expand All @@ -27,25 +29,41 @@ RUN cabal v2-install -w ghc-8.0.2 --lib \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
lukko \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-posix \
regex-tdfa \
resolv \
rere \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
void \
zlib \
resolv \
--constraint="rere -rere-cfg" \
--constraint="these -assoc" \
--constraint="bytestring installed" \
--constraint="binary installed" \
--constraint="containers installed" \
--constraint="deepseq installed" \
--constraint="directory installed" \
--constraint="filepath installed" \
--constraint="pretty installed" \
--constraint="process installed" \
--constraint="time installed" \
--constraint="unix installed" \
--constraint="transformers installed" \
&& rm -rf $HOME/.ghc

# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-8.0.2 -v
RUN sh ./validate.sh -w ghc-8.0.2 -v
22 changes: 19 additions & 3 deletions .docker/validate-8.10.1.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,24 @@ RUN mkdir -p /root/.cabal/bin && \
rm -f cabal-plan.xz && \
chmod a+x /root/.cabal/bin/cabal-plan

# Install cabal-env
RUN curl -sL https://github.com/phadej/cabal-extras/releases/download/preview-20191225/cabal-env-snapshot-20191225-x86_64-linux.xz > cabal-env.xz && \
echo "1b567d529c5f627fd8c956e57ae8f0d9f11ee66d6db34b7fb0cb1c370b4edf01 cabal-env.xz" | sha256sum -c - && \
xz -d < cabal-env.xz > $HOME/.cabal/bin/cabal-env && \
rm -f cabal-env.xz && \
chmod a+x $HOME/.cabal/bin/cabal-env


# Update index
RUN cabal v2-update
RUN cabal v2-update --index-state="2020-06-12T23:36:15Z"

# We install happy, so it's in the store; we (hopefully) don't use it directly.
RUN cabal v2-install happy --constraint 'happy ^>=1.19.12'

# Install some other dependencies
# Remove $HOME/.ghc so there aren't any environments
RUN cabal v2-install -w ghc-8.10.1 --lib \
Cabal \
aeson \
async \
base-compat \
Expand All @@ -27,21 +36,27 @@ RUN cabal v2-install -w ghc-8.10.1 --lib \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
lukko \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-posix \
regex-tdfa \
rere \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
void \
zlib \
resolv \
--constraint="rere -rere-cfg" \
--constraint="these -assoc" \
--constraint="bytestring installed" \
--constraint="binary installed" \
--constraint="containers installed" \
Expand All @@ -52,9 +67,10 @@ RUN cabal v2-install -w ghc-8.10.1 --lib \
--constraint="process installed" \
--constraint="time installed" \
--constraint="unix installed" \
--constraint="transformers installed" \
&& rm -rf $HOME/.ghc

# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-8.10.1 -v
RUN sh ./validate.sh -w ghc-8.10.1 -v
Loading