From 629688beb2005076718d627ef62e9eff7adf8137 Mon Sep 17 00:00:00 2001 From: "Olivier Wilkinson (reivilibre)" Date: Tue, 14 Jun 2022 18:56:17 +0100 Subject: [PATCH 1/4] Try to make apt less noisy Make apt-get less noisy in the Dockerfiles that Complement invokes --- .github/workflows/tests.yml | 2 +- docker/Dockerfile | 6 +++--- docker/Dockerfile-workers | 4 ++-- docker/complement/Dockerfile | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 4ce27ff4130b..ea02f57271b2 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -371,7 +371,7 @@ jobs: - name: "Install Complement Dependencies" run: | - sudo apt-get update && sudo apt-get install -y libolm3 libolm-dev + sudo apt-get -qq update && sudo apt-get -o=Dpkg::Use-Pty=0 install -qqy libolm3 libolm-dev go get -v github.com/haveyoudebuggedit/gotestfmt/v2/cmd/gotestfmt@latest - name: Run actions/checkout@v2 for synapse diff --git a/docker/Dockerfile b/docker/Dockerfile index 7af0e51f97d2..c676f83775d0 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -40,7 +40,7 @@ FROM docker.io/python:${PYTHON_VERSION}-slim as requirements RUN \ --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - apt-get update && apt-get install -y git \ + apt-get update -qq && apt-get install -yqq git \ && rm -rf /var/lib/apt/lists/* # We install poetry in its own build stage to avoid its dependencies conflicting with @@ -73,7 +73,7 @@ FROM docker.io/python:${PYTHON_VERSION}-slim as builder RUN \ --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - apt-get update && apt-get install -y \ + apt-get update -qq && apt-get install -yqq \ build-essential \ libffi-dev \ libjpeg-dev \ @@ -118,7 +118,7 @@ LABEL org.opencontainers.image.licenses='Apache-2.0' RUN \ --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - apt-get update && apt-get install -y \ + apt-get update -qq && apt-get install -yqq \ curl \ gosu \ libjpeg62-turbo \ diff --git a/docker/Dockerfile-workers b/docker/Dockerfile-workers index 83db0a95b9fd..0f1570cfb654 100644 --- a/docker/Dockerfile-workers +++ b/docker/Dockerfile-workers @@ -6,8 +6,8 @@ FROM matrixdotorg/synapse:$SYNAPSE_VERSION RUN \ --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - apt-get update && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ + apt-get update -qq && \ + DEBIAN_FRONTEND=noninteractive apt-get install -yqq --no-install-recommends \ redis-server nginx-light # Install supervisord with pip instead of apt, to avoid installing a second diff --git a/docker/complement/Dockerfile b/docker/complement/Dockerfile index 50684c956de6..8bec0f611649 100644 --- a/docker/complement/Dockerfile +++ b/docker/complement/Dockerfile @@ -9,7 +9,7 @@ FROM matrixdotorg/synapse-workers:$SYNAPSE_VERSION # Install postgresql RUN apt-get update && \ - DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y postgresql-13 + DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -yqq postgresql-13 # Configure a user and create a database for Synapse RUN pg_ctlcluster 13 main start && su postgres -c "echo \ From 6541082a2bc62be079fcb1ec9b8ffec9d66928d9 Mon Sep 17 00:00:00 2001 From: "Olivier Wilkinson (reivilibre)" Date: Tue, 14 Jun 2022 18:58:47 +0100 Subject: [PATCH 2/4] Newsfile Signed-off-by: Olivier Wilkinson (reivilibre) --- changelog.d/13058.misc | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/13058.misc diff --git a/changelog.d/13058.misc b/changelog.d/13058.misc new file mode 100644 index 000000000000..4102bf96b5b6 --- /dev/null +++ b/changelog.d/13058.misc @@ -0,0 +1 @@ +Make Complement CI logs easier to read. \ No newline at end of file From f18a9067a5d4c1d83f6d9b8c3db084c70d05c887 Mon Sep 17 00:00:00 2001 From: "Olivier Wilkinson (reivilibre)" Date: Wed, 15 Jun 2022 12:10:55 +0100 Subject: [PATCH 3/4] Collapse the Docker builds --- scripts-dev/complement.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/scripts-dev/complement.sh b/scripts-dev/complement.sh index 52ef1fd07f9f..f1843717cb68 100755 --- a/scripts-dev/complement.sh +++ b/scripts-dev/complement.sh @@ -24,6 +24,15 @@ # Exit if a line returns a non-zero exit code set -e + +# Helper to emit annotations that collapse portions of the log in GitHub Actions +echo_if_github() { + if [[ -n "$GITHUB_WORKFLOW" ]]; then + echo $* + fi +} + + # enable buildkit for the docker builds export DOCKER_BUILDKIT=1 @@ -41,14 +50,20 @@ if [[ -z "$COMPLEMENT_DIR" ]]; then fi # Build the base Synapse image from the local checkout +echo_if_github "::group::Build Docker image: matrixdotorg/synapse" docker build -t matrixdotorg/synapse -f "docker/Dockerfile" . +echo_if_github "::endgroup::" # Build the workers docker image (from the base Synapse image we just built). +echo_if_github "::group::Build Docker image: matrixdotorg/synapse-workers" docker build -t matrixdotorg/synapse-workers -f "docker/Dockerfile-workers" . +echo_if_github "::endgroup::" # Build the unified Complement image (from the worker Synapse image we just built). +echo_if_github "::group::Build Docker image: complement/Dockerfile" docker build -t complement-synapse \ -f "docker/complement/Dockerfile" "docker/complement" +echo_if_github "::endgroup::" export COMPLEMENT_BASE_IMAGE=complement-synapse From 91ac001f430f65a0995bf311ac32d9e9521966aa Mon Sep 17 00:00:00 2001 From: "Olivier Wilkinson (reivilibre)" Date: Wed, 15 Jun 2022 12:50:04 +0100 Subject: [PATCH 4/4] Remove forgotten Use-Pty=0 option --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ea02f57271b2..56f3e46465cb 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -371,7 +371,7 @@ jobs: - name: "Install Complement Dependencies" run: | - sudo apt-get -qq update && sudo apt-get -o=Dpkg::Use-Pty=0 install -qqy libolm3 libolm-dev + sudo apt-get -qq update && sudo apt-get install -qqy libolm3 libolm-dev go get -v github.com/haveyoudebuggedit/gotestfmt/v2/cmd/gotestfmt@latest - name: Run actions/checkout@v2 for synapse