File tree 4 files changed +27
-61
lines changed
4 files changed +27
-61
lines changed Original file line number Diff line number Diff line change @@ -30,10 +30,12 @@ jobs:
30
30
arch : [default, complex]
31
31
runs-on : [self-hosted, Linux]
32
32
container :
33
- image : firedrakeproject/firedrake-env :latest
33
+ image : ubuntu :latest
34
34
env :
35
35
OMPI_ALLOW_RUN_AS_ROOT : 1
36
36
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM : 1
37
+ OMP_NUM_THREADS : 1
38
+ OPENBLAS_NUM_THREADS : 1
37
39
FIREDRAKE_CI : 1
38
40
PYOP2_CI_TESTS : 1
39
41
PYOP2_SPMD_STRICT : 1
56
58
- name : Install system dependencies
57
59
run : |
58
60
apt-get update
61
+ apt-get -y install python3
59
62
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
61
64
62
65
- name : Install PETSc
63
66
run : |
@@ -220,10 +223,8 @@ jobs:
220
223
tag : ${{ env.RELEASE_TAG }}
221
224
222
225
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'
227
228
needs : [test, docker_tag]
228
229
uses : ./.github/workflows/docker.yml
229
230
with :
Original file line number Diff line number Diff line change 20
20
required : true
21
21
22
22
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
-
51
23
# Firedrake container (just Firedrake)
52
24
docker_build_vanilla :
53
25
# Only run if Firedrake tests pass
54
26
if : inputs.status == 'success'
55
- needs : docker_merge_env
56
27
strategy :
57
28
fail-fast : false
58
29
matrix :
Load Diff This file was deleted.
Original file line number Diff line number Diff line change 1
1
# Dockerfile for a plain Firedrake suitable for testing Firedrake components and applications
2
2
3
- FROM firedrakeproject/firedrake-env:latest
3
+ FROM ubuntu:latest
4
+
5
+ # Firedrake arch to build
6
+ ARG ARCH="default"
4
7
5
8
# Set '-o pipefail' to avoid linter error (https://github.com/hadolint/hadolint/wiki/DL4006)
6
9
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
7
10
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
10
27
11
28
# Download firedrake-configure
12
29
RUN curl -O --output-dir /opt https://raw.githubusercontent.com/firedrakeproject/firedrake/master/scripts/firedrake-configure
You can’t perform that action at this time.
0 commit comments