Hi all. I would like to build and test my project for s390x architecture.
What is supposed way to do that on CircleCI?
As I understand it is not allowed that docker container would have architecture other than amd64.
If it is already described somewhere in documentation give me a reference please.
EDIT: As I understand it now one of the ways would be to run my docker container with s390x architecture inside linux machine image. So I will try this way but if you have any suggestions or examples feel free to share them with me.
Yes, this is not so fast(in my case 09:30 minutes for s390x vs 1:30 for x86) but it works which makes me very happy)
This is reference to my final .circleci/config.yml file: rabbit/config.yml at master · rokoDev/rabbit · GitHub . Its not perfect but just in case this information could be useful for someone I leave it here.
Just in case you didn’t know, and since you’re already enabling DOCKER_BUILDKIT, you might as well get rid of the old way of executing RUN commands with all the \ && annoyance, and instead use the #syntax directive to enable “heredoc” support in RUN statements, with set -ex taking care of printing each command when it’s executed and exiting immediately when a command fails. This makes it easier to write RUN commands that look like proper scripts:
# syntax=docker/dockerfile:1.4
FROM ubuntu@sha256:c18eff699e090d6b0336dda55b9f83cbbdf126100aa06d16de4fc58e2fa740df
RUN <<END_RUN
set -ex
apt update
apt upgrade -y
apt-get install -y \
build-essential \
git \
libssl-dev \
ninja-build \
;
END_RUN