Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Configure “Docker” runtime to multi-architecture build. #24

Closed
wants to merge 1 commit into from

Conversation

jonpspri
Copy link

@jonpspri jonpspri commented Mar 27, 2018

Use gradle-docker-plugin and (my) gradle-fatmanifest-plugin to create a multi-architecture manifest for the nodejs runtime. The process relies on having PPC64LE and S390X docker environments available. The TLS certificates for these environments are encrypted in the repo. The GPG key for them has been encrypted as well, accessible by my fork and by ‘apache/incubator-openwhisk-runtime-nodejs’. Other forks can be given access — it is necessary to add encryption’s of the GPG key and the JSON specifying the repository locations in the .travis.yml. They will also need to provide their own Docker registry (or we need to do some additional work to support using an ephemeral registry — the problem is that we then need to add a capability to the gradle-fatmanifest-plugin to copy blobs between registries, not a pretty proposition.

I’m going to try to add some documentation of the process to the files and to a docs folder, but I wanted to get review started now, as I suspect there’ll be many questions and those will in turn inform the documentation.

This is a key milestone in being able to run OpenWhisk in a multi-architecture environment. Being able to take advantage of it will eventually depend upon OpenWhisk Issue 3412 and other following changes to do away with hard-coding. (See OpenWhisk PR 3407 for an outline of upcoming changes.)

There is a severe backlog of cleanup coming, too. Issue to follow to document needed cleanup.

@csantanapr

Bump to the Python version used and to use Alpine 3.7 image (python defaults to Alpine 3.4, which has no multiarch image built).

@jonpspri jonpspri changed the title Multiarch Docker runtime Configure “Docker” runtime to multi-architecture build. Apr 2, 2018
@jonpspri jonpspri closed this Dec 19, 2018
@jonpspri jonpspri deleted the multiarch branch April 7, 2019 13:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant