Skip to content
Snippets Groups Projects
Commit 228260d6 authored by Oleg Grenrus's avatar Oleg Grenrus
Browse files

Add more validate-via-docker commands

parent b46d7820
No related branches found
No related tags found
No related merge requests found
FROM phadej/ghc:7.10.3-bionic
# We need newer compiler, to install cabal-plan
RUN apt-get update
RUN apt-get install -y ghc-8.6.5
# Install cabal-plan
RUN cabal v2-update
RUN cabal v2-install -w /opt/ghc/8.6.5/bin/ghc-8.6.5 cabal-plan --constraint 'cabal-plan ^>=0.6'
# Remove ghc-8.6.5, so it doesn't interfere
RUN apt-get remove -y ghc-8.6.5
# 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 \
aeson \
async \
base-compat \
base16-bytestring \
base64-bytestring \
cryptohash-sha256 \
Diff \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-tdfa \
resolv \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
zlib \
&& rm -rf $HOME/.ghc
# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-7.10.3 -v
# TODO: change to bionic
# https://github.com/haskell-CI/haskell-ci/issues/342
FROM phadej/ghc:7.8.4-xenial
# We need newer compiler, to install cabal-plan
RUN apt-get update
RUN apt-get install -y ghc-8.6.5 ghc-7.8.4-dyn
# Install cabal-plan
RUN cabal v2-update
RUN cabal v2-install -w /opt/ghc/8.6.5/bin/ghc-8.6.5 cabal-plan --constraint 'cabal-plan ^>=0.6'
# Remove ghc-8.6.5, so it doesn't interfere
RUN apt-get remove -y ghc-8.6.5
# 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 \
aeson \
async \
base-compat \
base16-bytestring \
base64-bytestring \
cryptohash-sha256 \
Diff \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-tdfa \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
zlib \
--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" \
&& rm -rf $HOME/.ghc
# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -l -w ghc-7.8.4 -v
FROM phadej/ghc:8.0.2-bionic
# Install cabal-plan
RUN cabal v2-update
RUN cabal v2-install cabal-plan --constraint 'cabal-plan ^>=0.6'
# 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 \
aeson \
async \
base-compat \
base16-bytestring \
base64-bytestring \
cryptohash-sha256 \
Diff \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-tdfa \
resolv \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
zlib \
&& rm -rf $HOME/.ghc
# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-8.0.2 -v
FROM phadej/ghc:8.2.2-bionic
# Install cabal-plan
RUN cabal v2-update
RUN cabal v2-install cabal-plan --constraint 'cabal-plan ^>=0.6'
# 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.2.2 --lib \
aeson \
async \
base-compat \
base16-bytestring \
base64-bytestring \
cryptohash-sha256 \
Diff \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-tdfa \
resolv \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
zlib \
&& rm -rf $HOME/.ghc
# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-8.2.2 -v
FROM phadej/ghc:8.6.5-bionic
# Install cabal-plan
RUN cabal v2-update
RUN cabal v2-install cabal-plan --constraint 'cabal-plan ^>=0.6'
# 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.6.5 --lib \
aeson \
async \
base-compat \
base16-bytestring \
base64-bytestring \
cryptohash-sha256 \
Diff \
echo \
ed25519 \
edit-distance \
haskell-lexer \
HTTP \
network \
optparse-applicative \
pretty-show \
regex-compat-tdfa \
regex-tdfa \
resolv \
statistics \
tar \
tasty \
tasty-golden \
tasty-hunit \
tasty-quickcheck \
tree-diff \
zlib \
&& rm -rf $HOME/.ghc
# Validate
WORKDIR /build
COPY . /build
RUN sh ./validate.sh -w ghc-8.6.5 -v
......@@ -112,9 +112,45 @@ cabal-install-test:
# Docker validation
validate-via-docker-all :
@echo "This takes a lot of time"
@echo 5
@sleep 1
@echo 4
@sleep 1
@echo 3
@sleep 1
@echo 2
@sleep 1
@echo 1
@sleep 1
$(MAKE) validate-via-docker-7.6.3
$(MAKE) validate-via-docker-7.8.4
$(MAKE) validate-via-docker-7.10.3
$(MAKE) validate-via-docker-8.0.2
$(MAKE) validate-via-docker-8.2.2
$(MAKE) validate-via-docker-8.4.4
$(MAKE) validate-via-docker-8.6.5
$(MAKE) validate-via-docker-8.8.1
validate-via-docker-7.6.3:
docker build -t cabal-validate -f .docker/validate-7.6.3.dockerfile .
validate-via-docker-7.8.4:
docker build -t cabal-validate -f .docker/validate-7.8.4.dockerfile .
validate-via-docker-7.10.3:
docker build -t cabal-validate -f .docker/validate-7.10.3.dockerfile .
validate-via-docker-8.0.2:
docker build -t cabal-validate -f .docker/validate-8.0.2.dockerfile .
validate-via-docker-8.2.2:
docker build -t cabal-validate -f .docker/validate-8.2.2.dockerfile .
validate-via-docker-8.4.4:
docker build -t cabal-validate -f .docker/validate-8.4.4.dockerfile .
validate-via-docker-8.6.5:
docker build -t cabal-validate -f .docker/validate-8.6.5.dockerfile .
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment