From c2cc19af98cdaf67b1b8646544a20339b8f5adbd Mon Sep 17 00:00:00 2001 From: strophy Date: Fri, 31 Jan 2025 19:26:34 +0100 Subject: [PATCH] chore: build protoc-gen-swift and protoc-gen-grpc-swift from separate repos --- .github/renovate.json | 8 +++++++- .github/workflows/dockerimage.yml | 3 ++- Dockerfile | 30 ++++++++++++++++++++++++------ deps.list | 3 ++- 4 files changed, 35 insertions(+), 9 deletions(-) diff --git a/.github/renovate.json b/.github/renovate.json index 7c2e8d11..54f3b2d8 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -49,10 +49,16 @@ }, { "fileMatch": ["^deps\\.list$"], - "matchStrings": ["GRPC_SWIFT_VERSION=(?.*?)\\n"], + "matchStrings": ["PROTOC_GEN_SWIFT_VERSION=(?.*?)\\n"], "depNameTemplate": "grpc/grpc-swift", "datasourceTemplate": "github-releases" }, + { + "fileMatch": ["^deps\\.list$"], + "matchStrings": ["GRPC_SWIFT_VERSION=(?.*?)\\n"], + "depNameTemplate": "grpc/grpc-swift-protobuf", + "datasourceTemplate": "github-releases" + }, { "fileMatch": ["^deps\\.list$"], "matchStrings": ["GRPC_WEB_VERSION=(?.*?)\\n"], diff --git a/.github/workflows/dockerimage.yml b/.github/workflows/dockerimage.yml index d1224e75..aff54ab4 100644 --- a/.github/workflows/dockerimage.yml +++ b/.github/workflows/dockerimage.yml @@ -103,12 +103,13 @@ jobs: PROTOC_GEN_JSONSCHEMA_VERSION=${{ env.PROTOC_GEN_JSONSCHEMA_VERSION }} PROTOC_GEN_LINT_VERSION=${{ env.PROTOC_GEN_LINT_VERSION }} PROTOC_GEN_NANOPB_VERSION=${{ env.PROTOC_GEN_NANOPB_VERSION }} + PROTOC_GEN_OPENAPI_VERSION=${{ env.PROTOC_GEN_OPENAPI_VERSION }} PROTOC_GEN_PBANDK_VERSION=${{ env.PROTOC_GEN_PBANDK_VERSION }} PROTOC_GEN_RUST_VERSION=${{ env.PROTOC_GEN_RUST_VERSION }} PROTOC_GEN_SCALA_VERSION=${{ env.PROTOC_GEN_SCALA_VERSION }} + PROTOC_GEN_SWIFT_VERSION=${{ env.PROTOC_GEN_SWIFT_VERSION }} PROTOC_GEN_TS_VERSION=${{ env.PROTOC_GEN_TS_VERSION }} PROTOC_GEN_VALIDATE_VERSION=${{ env.PROTOC_GEN_VALIDATE_VERSION }} - PROTOC_GEN_OPENAPI_VERSION=${{ env.PROTOC_GEN_OPENAPI_VERSION }} RUST_IMAGE_VERSION=${{ env.RUST_IMAGE_VERSION }} SCALA_SBT_IMAGE_VERSION=${{ env.SCALA_SBT_IMAGE_VERSION }} SWIFT_IMAGE_VERSION=${{ env.SWIFT_IMAGE_VERSION }} diff --git a/Dockerfile b/Dockerfile index be02adbd..0c206d5e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -282,15 +282,19 @@ RUN install -D /grpc-rust/target/$(xx-cargo --print-target-triple)/release/proto RUN xx-verify /out/usr/bin/protoc-gen-rust-grpc -FROM --platform=$BUILDPLATFORM swift:${SWIFT_IMAGE_VERSION}-noble AS grpc_swift -ARG GRPC_SWIFT_VERSION SWIFT_IMAGE_VERSION +FROM --platform=$BUILDPLATFORM swift:${SWIFT_IMAGE_VERSION}-noble AS swift_target +ARG SWIFT_IMAGE_VERSION RUN apt-get update && \ apt-get install -y curl RUN swift sdk install \ https://download.swift.org/swift-${SWIFT_IMAGE_VERSION}-release/static-sdk/swift-${SWIFT_IMAGE_VERSION}-RELEASE/swift-${SWIFT_IMAGE_VERSION}-RELEASE_static-linux-0.0.1.artifactbundle.tar.gz \ --checksum 67f765e0030e661a7450f7e4877cfe008db4f57f177d5a08a6e26fd661cdd0bd + + +FROM --platform=$BUILDPLATFORM swift_target AS grpc_gen_swift +ARG PROTOC_GEN_SWIFT_VERSION RUN mkdir -p /grpc-swift -RUN curl -sSL https://api.github.com/repos/grpc/grpc-swift/tarball/${GRPC_SWIFT_VERSION} | tar xz --strip 1 -C /grpc-swift +RUN curl -sSL https://api.github.com/repos/grpc/grpc-swift/tarball/${PROTOC_GEN_SWIFT_VERSION} | tar xz --strip 1 -C /grpc-swift WORKDIR /grpc-swift ARG TARGETOS TARGETARCH RUN <