Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions plugins/apple/servicetalk/v0.42.62/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*
!Dockerfile
15 changes: 15 additions & 0 deletions plugins/apple/servicetalk/v0.42.62/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# syntax=docker/dockerfile:1.19
FROM debian:bookworm-20251229 AS build

WORKDIR /app
RUN apt-get update \
&& apt-get install -y curl
RUN curl -fsSL -o servicetalk-grpc-protoc.jar https://repo1.maven.org/maven2/io/servicetalk/servicetalk-grpc-protoc/0.42.62/servicetalk-grpc-protoc-0.42.62-all.jar

FROM gcr.io/distroless/java21-debian12:latest@sha256:ed87b011df38601c55503cb24a0d136fed216aeb3bcd57925719488d93d236f4 AS base

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 --chown=root:root /app/servicetalk-grpc-protoc.jar .
USER nobody
ENTRYPOINT [ "/usr/bin/java", "-jar", "/servicetalk-grpc-protoc.jar"]
22 changes: 22 additions & 0 deletions plugins/apple/servicetalk/v0.42.62/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
version: v1
name: buf.build/apple/servicetalk
plugin_version: v0.42.62
source_url: https://github.com/apple/servicetalk
integration_guide_url: https://docs.servicetalk.io/
description: A networking framework that evolves with your application.
deps:
- plugin: buf.build/protocolbuffers/java:v33.3
output_languages:
- java
spdx_license_id: Apache-2.0
license_url: https://github.com/apple/servicetalk/blob/0.42.62/LICENSE.txt
registry:
maven:
deps:
- io.servicetalk:servicetalk-data-protobuf:0.42.62
- io.servicetalk:servicetalk-grpc-api:0.42.62
- io.servicetalk:servicetalk-grpc-protobuf:0.42.62
# Add direct dependency on newer protobuf
- com.google.protobuf:protobuf-java:4.33.3
opts:
- javaDocs=false
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*
!Dockerfile
15 changes: 15 additions & 0 deletions plugins/community/sudorandom-connect-openapi/v0.22.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# syntax=docker/dockerfile:1.19
FROM --platform=$BUILDPLATFORM golang:1.25.5-bookworm AS build

ARG TARGETOS TARGETARCH
ENV CGO_ENABLED=0 GOOS=$TARGETOS GOARCH=$TARGETARCH

RUN --mount=type=cache,target=/go/pkg/mod \
go install -ldflags "-s -w" -tags remote_plugin -trimpath github.com/sudorandom/protoc-gen-connect-openapi@v0.22.1 \
&& mv /go/bin/${GOOS}_${GOARCH}/protoc-gen-connect-openapi /go/bin/protoc-gen-connect-openapi || true

FROM scratch
COPY --from=build --link /etc/passwd /etc/passwd
COPY --from=build --link --chown=root:root /go/bin/protoc-gen-connect-openapi .
USER nobody
ENTRYPOINT [ "/protoc-gen-connect-openapi" ]
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
version: v1
name: buf.build/community/sudorandom-connect-openapi
plugin_version: v0.22.1
source_url: https://github.com/sudorandom/protoc-gen-connect-openapi
description: Plugin for generating OpenAPIv3 from Protobufs matching the Connect RPC interface.
spdx_license_id: MIT
license_url: https://github.com/sudorandom/protoc-gen-connect-openapi/blob/v0.22.1/LICENSE
2 changes: 2 additions & 0 deletions plugins/connectrpc/python/v0.7.1/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
*
!Dockerfile
16 changes: 16 additions & 0 deletions plugins/connectrpc/python/v0.7.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# syntax=docker/dockerfile:1.19
FROM python:3.11.14-bookworm AS build
WORKDIR /app
RUN python -mvenv /app
RUN . ./bin/activate \
&& pip install --no-cache-dir protoc-gen-connect-python==0.7.1 \
&& pip uninstall --yes pip setuptools \
&& rm -f bin/activate.fish bin/activate.csh bin/Activate.ps1

FROM gcr.io/distroless/python3-debian12:latest@sha256:8ce6bba3f793ba7d834467dfe18983c42f9b223604970273e9e3a22b1891fc27 AS base

FROM scratch
COPY --link --from=base / /
COPY --link --from=build --chmod=0755 /app /app
USER nobody
ENTRYPOINT [ "/app/bin/protoc-gen-connect-python" ]
19 changes: 19 additions & 0 deletions plugins/connectrpc/python/v0.7.1/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
version: v1
name: buf.build/connectrpc/python
plugin_version: v0.7.1
source_url: https://github.com/connectrpc/connect-python
description: Generates client and server stubs for Connect Python. Compatible with the Connect RPC protocol.
spdx_license_id: Apache-2.0
license_url: https://github.com/connectrpc/connect-python/blob/v0.7.1/LICENSE
deps:
- plugin: buf.build/protocolbuffers/python:v33.3
output_languages:
- python
registry:
python:
package_type: "runtime"
# https://github.com/connectrpc/connect-python/blob/v0.7.1/protoc-gen-connect-python/pyproject.toml#L11
requires_python: ">=3.10"
deps:
# https://pypi.org/project/connect-python/
- "connect-python >= 0.7.1"
4 changes: 4 additions & 0 deletions plugins/protocolbuffers/cpp/v33.3/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*
!BUILD
!cpp.cc
!Dockerfile
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/cpp/v33.3/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
cc_binary(
name = "protoc-gen-cpp",
srcs = ["cpp.cc"],
deps = [
"//:protoc_lib",
],
)
30 changes: 30 additions & 0 deletions plugins/protocolbuffers/cpp/v33.3/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# syntax=docker/dockerfile:1.19
FROM debian:bookworm-20251229 AS build

ARG TARGETARCH
ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"

RUN apt-get update \
&& apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-${TARGETARCH} \
&& chmod +x /usr/local/bin/bazelisk \
&& mkdir /build \
&& chown nobody:nogroup /build \
&& usermod --home /build nobody

USER nobody
WORKDIR /build
RUN curl -fsSL -o protoc.tar.gz https://github.com/protocolbuffers/protobuf/releases/download/v33.3/protobuf-33.3.tar.gz \
&& tar --strip-components=1 -zxf protoc.tar.gz \
&& rm protoc.tar.gz
RUN bazelisk ${BAZEL_OPTS} build '//:protoc_lib'
COPY --link BUILD cpp.cc plugins/
RUN bazelisk ${BAZEL_OPTS} build '//plugins:protoc-gen-cpp.stripped'

FROM gcr.io/distroless/cc-debian12:latest@sha256:0c8eac8ea42a167255d03c3ba6dfad2989c15427ed93d16c53ef9706ea4691df AS base

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-cpp .
USER nobody
ENTRYPOINT ["/protoc-gen-cpp"]
11 changes: 11 additions & 0 deletions plugins/protocolbuffers/cpp/v33.3/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: v1
name: buf.build/protocolbuffers/cpp
plugin_version: v33.3
source_url: https://github.com/protocolbuffers/protobuf
description: Base types for C++. Generates message and enum types.
output_languages:
- cpp
spdx_license_id: BSD-3-Clause
license_url: https://github.com/protocolbuffers/protobuf/blob/v33.3/LICENSE
registry:
cmake: {}
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/cpp/v33.3/cpp.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#include <google/protobuf/compiler/cpp/generator.h>
#include <google/protobuf/compiler/plugin.h>

int main(int argc, char *argv[]) {
google::protobuf::compiler::cpp::CppGenerator generator;
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
}
5 changes: 5 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*
!BUILD
!csharp.cc
!Dockerfile
!build.csproj
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
cc_binary(
name = "protoc-gen-csharp",
srcs = ["csharp.cc"],
deps = [
"//:protoc_lib",
],
)
36 changes: 36 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# syntax=docker/dockerfile:1.19
FROM debian:bookworm-20251229 AS build

ARG TARGETARCH
ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"

RUN apt-get update \
&& apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-${TARGETARCH} \
&& chmod +x /usr/local/bin/bazelisk \
&& mkdir /build \
&& chown nobody:nogroup /build \
&& usermod --home /build nobody

USER nobody
WORKDIR /build
RUN curl -fsSL -o protoc.tar.gz https://github.com/protocolbuffers/protobuf/releases/download/v33.3/protobuf-33.3.tar.gz \
&& tar --strip-components=1 -zxf protoc.tar.gz \
&& rm protoc.tar.gz
RUN bazelisk ${BAZEL_OPTS} build '//:protoc_lib'
COPY --link BUILD csharp.cc plugins/
RUN bazelisk ${BAZEL_OPTS} build '//plugins:protoc-gen-csharp.stripped'

FROM mcr.microsoft.com/dotnet/sdk:8.0.416-bookworm-slim@sha256:2c7794fef0107c1815193dc157ed3f8ca60eb504a439806a29b6f9bf1ce73679 AS dotnetrestore
WORKDIR /build
COPY --link ./build.csproj /build/build.csproj
RUN mkdir /nuget && dotnet restore --packages /nuget

FROM gcr.io/distroless/cc-debian12:latest@sha256:0c8eac8ea42a167255d03c3ba6dfad2989c15427ed93d16c53ef9706ea4691df AS base

FROM scratch
COPY --from=base --link / /
COPY --link --from=dotnetrestore /nuget /nuget
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-csharp .
USER nobody
ENTRYPOINT ["/protoc-gen-csharp"]
18 changes: 18 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
version: v1
name: buf.build/protocolbuffers/csharp
plugin_version: v33.3
source_url: https://github.com/protocolbuffers/protobuf
description: Base types for C#. Generates message and enum types.
output_languages:
- csharp
spdx_license_id: BSD-3-Clause
license_url: https://github.com/protocolbuffers/protobuf/blob/v33.3/LICENSE
registry:
opts:
- base_namespace=
nuget:
target_frameworks:
- netstandard2.0
deps:
- name: Google.Protobuf
version: 3.33.3
8 changes: 8 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/build.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Google.Protobuf" Version="3.33.3" />
</ItemGroup>
</Project>
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/csharp/v33.3/csharp.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#include <google/protobuf/compiler/csharp/csharp_generator.h>
#include <google/protobuf/compiler/plugin.h>

int main(int argc, char *argv[]) {
google::protobuf::compiler::csharp::Generator generator;
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
}
4 changes: 4 additions & 0 deletions plugins/protocolbuffers/java/v33.3/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*
!BUILD
!Dockerfile
!java.cc
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/java/v33.3/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
cc_binary(
name = "protoc-gen-java",
srcs = ["java.cc"],
deps = [
"//:protoc_lib",
],
)
30 changes: 30 additions & 0 deletions plugins/protocolbuffers/java/v33.3/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# syntax=docker/dockerfile:1.19
FROM debian:bookworm-20251229 AS build

ARG TARGETARCH
ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"

RUN apt-get update \
&& apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-${TARGETARCH} \
&& chmod +x /usr/local/bin/bazelisk \
&& mkdir /build \
&& chown nobody:nogroup /build \
&& usermod --home /build nobody

USER nobody
WORKDIR /build
RUN curl -fsSL -o protoc.tar.gz https://github.com/protocolbuffers/protobuf/releases/download/v33.3/protobuf-33.3.tar.gz \
&& tar --strip-components=1 -zxf protoc.tar.gz \
&& rm protoc.tar.gz
RUN bazelisk ${BAZEL_OPTS} build '//:protoc_lib'
COPY --link BUILD java.cc plugins/
RUN bazelisk ${BAZEL_OPTS} build '//plugins:protoc-gen-java.stripped'

FROM gcr.io/distroless/cc-debian12:latest@sha256:0c8eac8ea42a167255d03c3ba6dfad2989c15427ed93d16c53ef9706ea4691df AS base

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-java .
USER nobody
ENTRYPOINT ["/protoc-gen-java"]
19 changes: 19 additions & 0 deletions plugins/protocolbuffers/java/v33.3/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
version: v1
name: buf.build/protocolbuffers/java
plugin_version: v33.3
source_url: https://github.com/protocolbuffers/protobuf
description: Base types for Java. Generates message and enum types.
output_languages:
- java
spdx_license_id: BSD-3-Clause
license_url: https://github.com/protocolbuffers/protobuf/blob/v33.3/LICENSE
registry:
maven:
deps:
- com.google.protobuf:protobuf-java:4.33.3
additional_runtimes:
- name: lite
deps:
- com.google.protobuf:protobuf-javalite:4.33.3
- build.buf:protobuf-javalite:4.33.3
opts: [lite]
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/java/v33.3/java.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#include <google/protobuf/compiler/java/generator.h>
#include <google/protobuf/compiler/plugin.h>

int main(int argc, char *argv[]) {
google::protobuf::compiler::java::JavaGenerator generator;
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
}
4 changes: 4 additions & 0 deletions plugins/protocolbuffers/kotlin/v33.3/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*
!BUILD
!Dockerfile
!kotlin.cc
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/kotlin/v33.3/BUILD
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
cc_binary(
name = "protoc-gen-kotlin",
srcs = ["kotlin.cc"],
deps = [
"//:protoc_lib",
],
)
30 changes: 30 additions & 0 deletions plugins/protocolbuffers/kotlin/v33.3/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# syntax=docker/dockerfile:1.19
FROM debian:bookworm-20251229 AS build

ARG TARGETARCH
ARG BAZEL_OPTS="--host_jvm_args=-Djava.net.preferIPv4Stack=true"

RUN apt-get update \
&& apt-get install -y curl git cmake build-essential autoconf clang libc++-dev libtool pkg-config unzip zip
RUN curl -fsSL -o /usr/local/bin/bazelisk https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-${TARGETARCH} \
&& chmod +x /usr/local/bin/bazelisk \
&& mkdir /build \
&& chown nobody:nogroup /build \
&& usermod --home /build nobody

USER nobody
WORKDIR /build
RUN curl -fsSL -o protoc.tar.gz https://github.com/protocolbuffers/protobuf/releases/download/v33.3/protobuf-33.3.tar.gz \
&& tar --strip-components=1 -zxf protoc.tar.gz \
&& rm protoc.tar.gz
RUN bazelisk ${BAZEL_OPTS} build '//:protoc_lib'
COPY --link BUILD kotlin.cc plugins/
RUN bazelisk ${BAZEL_OPTS} build '//plugins:protoc-gen-kotlin.stripped'

FROM gcr.io/distroless/cc-debian12:latest@sha256:0c8eac8ea42a167255d03c3ba6dfad2989c15427ed93d16c53ef9706ea4691df AS base

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-kotlin .
USER nobody
ENTRYPOINT ["/protoc-gen-kotlin"]
Loading