Skip to content

Commit b295b20

Browse files
authored
Remove firedrake-env image (#4138)
* Remove firedrake-env image It only contained a trivial amount of setup code (now moved to firedrake-vanilla) and had the potential to trip up CI if it needed to be rebuilt.
1 parent fecd305 commit b295b20

File tree

4 files changed

+27
-61
lines changed

4 files changed

+27
-61
lines changed

.github/workflows/build.yml

+7-6
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,12 @@ jobs:
3030
arch: [default, complex]
3131
runs-on: [self-hosted, Linux]
3232
container:
33-
image: firedrakeproject/firedrake-env:latest
33+
image: ubuntu:latest
3434
env:
3535
OMPI_ALLOW_RUN_AS_ROOT: 1
3636
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
37+
OMP_NUM_THREADS: 1
38+
OPENBLAS_NUM_THREADS: 1
3739
FIREDRAKE_CI: 1
3840
PYOP2_CI_TESTS: 1
3941
PYOP2_SPMD_STRICT: 1
@@ -56,8 +58,9 @@ jobs:
5658
- name: Install system dependencies
5759
run: |
5860
apt-get update
61+
apt-get -y install python3
5962
apt-get -y install \
60-
$(python3 ./firedrake-repo/scripts/firedrake-configure --arch ${{ matrix.arch }} --show-system-packages)
63+
$(python3 ./firedrake-repo/scripts/firedrake-configure --arch ${{ matrix.arch }} --show-system-packages) python3-venv parallel
6164
6265
- name: Install PETSc
6366
run: |
@@ -220,10 +223,8 @@ jobs:
220223
tag: ${{ env.RELEASE_TAG }}
221224

222225
docker:
223-
name: "Build Docker containers"
224-
# Only run on master, but always generate firedrake-env image,
225-
# even if build fails (see docker.yml)
226-
if: always() && (github.ref == 'refs/heads/master')
226+
name: Build Docker containers
227+
if: github.ref == 'refs/heads/master'
227228
needs: [test, docker_tag]
228229
uses: ./.github/workflows/docker.yml
229230
with:

.github/workflows/docker.yml

-29
Original file line numberDiff line numberDiff line change
@@ -20,39 +20,10 @@ on:
2020
required: true
2121

2222
jobs:
23-
# Firedrake environment container
24-
docker_build_env:
25-
strategy:
26-
fail-fast: false
27-
matrix:
28-
os: [Linux, macOS]
29-
include:
30-
- os: Linux
31-
platform: linux/amd64
32-
- os: macOS
33-
platform: linux/arm64
34-
uses: ./.github/workflows/docker_build.yml
35-
with:
36-
os: ${{ matrix.os }}
37-
platform: ${{ matrix.platform }}
38-
target: firedrake-env
39-
tag: ${{ inputs.tag }}
40-
dockerfile: docker/Dockerfile.env
41-
secrets: inherit
42-
43-
docker_merge_env:
44-
uses: ./.github/workflows/docker_merge.yml
45-
needs: docker_build_env
46-
with:
47-
target: firedrake-env
48-
tag: ${{ inputs.tag }}
49-
secrets: inherit
50-
5123
# Firedrake container (just Firedrake)
5224
docker_build_vanilla:
5325
# Only run if Firedrake tests pass
5426
if: inputs.status == 'success'
55-
needs: docker_merge_env
5627
strategy:
5728
fail-fast: false
5829
matrix:

docker/Dockerfile.env

-23
This file was deleted.

docker/Dockerfile.vanilla

+20-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,29 @@
11
# Dockerfile for a plain Firedrake suitable for testing Firedrake components and applications
22

3-
FROM firedrakeproject/firedrake-env:latest
3+
FROM ubuntu:latest
4+
5+
# Firedrake arch to build
6+
ARG ARCH="default"
47

58
# Set '-o pipefail' to avoid linter error (https://github.com/hadolint/hadolint/wiki/DL4006)
69
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
710

8-
# Firedrake arch to build
9-
ARG ARCH="default"
11+
# Use a more sane locale
12+
ENV LC_ALL=C.UTF-8
13+
14+
# Avoid tzdata prompt
15+
# (https://stackoverflow.com/questions/61388002/how-to-avoid-question-during-the-docker-build)
16+
ENV DEBIAN_FRONTEND=noninteractive
17+
ENV TZ=Europe/London
18+
19+
# Install 'parallel' because it is needed by 'firedrake-run-split-tests'
20+
RUN apt-get update \
21+
&& apt-get -y install curl parallel python3 python3-pip python3-venv sudo \
22+
&& rm -rf /var/lib/apt/lists/*
23+
24+
# Allow pip to install into system package locations without prompting
25+
ENV PIP_BREAK_SYSTEM_PACKAGES=1
26+
ENV OMP_NUM_THREADS=1 OPENBLAS_NUM_THREADS=1
1027

1128
# Download firedrake-configure
1229
RUN curl -O --output-dir /opt https://raw.githubusercontent.com/firedrakeproject/firedrake/master/scripts/firedrake-configure

0 commit comments

Comments
 (0)