Dex: Adding power support for image(dexidp/dex) at quay.io

Created on 22 Jan 2019  路  14Comments  路  Source: dexidp/dex

Hi All,

I had a hard-requirement of using this image here - https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml for power(ppc64le) architecture. However i have noticed that images available here - https://quay.io/repository/dexidp/dex?tab=tags have support for "amd64" only as seen below

$ Using image available currently at quay.io
# docker inspect quay.io/dexidp/dex:v2.14.0 | grep Arch
        "Architecture": "amd64",

Was able to build this image locally on a power machine as seen below

# arch
ppc64le

# /gopath/src/github.com/dexidp/dex# git branch
* (HEAD detached at v2.14.0)
  master

# docker images | grep dex
quay.io/dexidp/dex                   v2.14.0             e98acf514934        2 minutes ago       29.3MB

# docker inspect quay.io/dexidp/dex:v2.14.0 | grep Arch
        "Architecture": "ppc64le",

# docker run quay.io/dexidp/dex:v2.14.0
dex Version: v2.14.0
Go Version: go1.11.3
Go OS/ARCH: linux ppc64le

Can anyone let me know how can we add power support as well to make this image a multi-arch one at "quay.io" ?

aredistribution help wanted

Most helpful comment

Now coming to my original query - with travis support added for ppc64le in this repo using above , can we then think of making "dex" docker image a multi-arch one at quay.io ? :)

You're going to use this, right? So, can I ask for your help in testing the docker image before we do a release? 馃槂

All 14 comments

Can anyone let me know how can we add power support as well to make this image a multi-arch one at "quay.io" ?

I have no idea how to do that. If there's a switch somewhere, I'm happy to toggle it 馃槃 @ghatwala do you know what to do? Could you find out? We might have to change our Dockerfile...? 馃

@srenatus -

We might have to change our Dockerfile...?

do you know what to do? Could you find out?

This is an example of an multi-arch image - https://doi-janky.infosiftr.net/job/multiarch/job/ppc64le/job/hello-world/

Other images use a suffix for their images https://quay.io/repository/coreos/flannel?tab=tags

Happy to see changes to the Makefile to support building different architectures. However, if we're going to publish images for other architectures under "quay.io/dexidp" I'd like a builder to ensure we're actually testing those code paths.

I'd like a builder to ensure we're actually testing those code paths.

馃挴 -- I guess we're looking for a co-maintainer focusing on the _power_ arch then... I don't have access (or time to get access) to that.

@srenatus and @ericchiang - i did make an attempt to add your travis builds on power by using below
`os:

  • linux

    • linux-ppc64le`

https://travis-ci.org/ghatwala/dex/builds/483752059. however this fails with below curl command

until curl --fail http://localhost:5000/v3; do as present in your .travis.yml.

The issue found is due to the docker images mentioned in that *.yml mainly - openio/openstack-keystone:pike and gcr.io/etcd-development/etcd:v3.2.9 to be intel arch based only.

Also noted that there's power tag available for etcd image atleast and that works.

# docker run -d --net=host gcr.io/etcd-development/etcd:v3.2.26-ppc64le
c43dddb08c2e474d1b4e0660cad612d486baae13cc192c8bb9feca89d0a5c25f

# docker ps -a | grep etcd
c43dddb08c2e        gcr.io/etcd-development/etcd:v3.2.26-ppc64le   "/usr/local/bin/etcd"    3 seconds ago       Up 2 seconds                                            practical_pike

@ghatwala I suppose you could try expanding .travis.yml to use a build matrix, as outlined here:

matrix:
    include:
        - os: linux
          env: ETCD_TAG=v3.2.26
        - os: linux-ppc64le
          env: ETCD_TAG=v3.2.26-ppc64le
# ...

So, there's _no keystone image_, am I understanding that correctly? 馃

@srenatus - yeah also as seen there are no ppc64le tags here - https://hub.docker.com/r/openio/openstack-keystone/tags . Also as in the github repo for this image - https://github.com/open-io/dockerfiles/tree/master/openstack-keystone .
I checked for centos:7 base image , on a power machine .

$ yum search centos-release-openstack
centos-release-openstack-ocata.noarch : OpenStack from the CentOS Cloud SIG repo configs
centos-release-openstack-queens.noarch : OpenStack from the CentOS Cloud SIG repo configs
centos-release-openstack-rocky.noarch : OpenStack from the CentOS Cloud SIG repo configs

So in short guess ocata/queens/rocky version would be present for openstack/ppc64le for centos base image. I am able to create power images for queens - https://github.com/open-io/dockerfiles/blob/master/openstack-keystone/queens/Dockerfile.

Looks like we could either

  • not test keystone (on travis) with ppc64le
  • build out own keystone images for amd64 and ppc64le
  • ask the maintainer of the open-io dockerfile to push a ppc64le image

@ghatwala does that sound accurate? Or did I misunderstand the situation? Also, what would you propose? 馃槂

@srenatus - this looks best to me -

not test keystone (on travis) with ppc64le

  • as don't want to keep a dependency with keystone community . as regards to creating images which again be time consuming , so this will be the quickest/easiest solution.

Now coming to my original query - with travis support added for ppc64le in this repo using above , can we then think of making "dex" docker image a multi-arch one at quay.io ? :)

Now coming to my original query - with travis support added for ppc64le in this repo using above , can we then think of making "dex" docker image a multi-arch one at quay.io ? :)

You're going to use this, right? So, can I ask for your help in testing the docker image before we do a release? 馃槂

Sure , i can do the validation of the image

@srenatus - any updates on above , please ?

@ghatwala Can you open a PR setting the stage for including ppc64le in our travis tests, please? I'll look into getting quay to work then...

Was this page helpful?
0 / 5 - 0 ratings

Related issues

srenatus picture srenatus  路  3Comments

ericchiang picture ericchiang  路  7Comments

lukasmrtvy picture lukasmrtvy  路  5Comments

simonswine picture simonswine  路  4Comments

whereisaaron picture whereisaaron  路  6Comments