Path Forward for grpc s390x architecture support
Overview
The gRPC
project currently supports Cryptography via BoringSSL.
Upstream BoringSSL
will not add compatibility for the s390x
architecture, thus GitLab and other open source projects that depend on BoringSSL
, such as gRPC
, lack sustainable support for the platform.
Proposal
To gain broad support for the s390x
architecture, we propose helping upstream gRPC
support building against OpenSSL. Building gRPC
with OpenSSL
means that all Cloud Native Foundation projects using gRPC
now have access to s390x
architecture by default.
The most beneficial outcome would be a drop in replacement for BoringSSL
that enables other projects to easily support s390x
and have a sustained upstream project designed for production usage by other parties1.
Resources needed
gRPC
project
Allocation to - Initial spike group of engineers with experience in Go,
gRPC
, and cryptography that can add build support to upstreamgRPC
including both functionality and tests to prevent regressions - Access to
s390x
build systems in support of continuous integration testing - Long-term engineering commitment to help with
s390x
support in future releases and updates
Allocation to GitLab
- Access to
s390x
systems that allow Enterprise Edition builds for customers requiring features not present in Community Edition - Established line of communication via issues and live chat for engineering resources to collaborate on the technical issues as they arise
Nice to have
-
BoringSSL
is a known blocker tos390x
support for upstreamGo
projects, so an easy drop in is a win for the Open Source community.- Identify any existing projects that can be adapted for this usage or allocate engineering resources to create one
- Community advocates and help building support across multiple communities for adoption
- Engineering support to help projects adopt the
BoringSSL
drop in replacement
Footnotes
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.