Skip to content
Merged
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
4 changes: 4 additions & 0 deletions plugins/protocolbuffers/cpp/v35.1/.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/v35.1/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/v35.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# syntax=docker/dockerfile:1.24
FROM debian:trixie-20260610@sha256:fe7312b5f05bf5f43fad76bcd8945642e4e47a68aefd1b73f447615899d0fac1 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.28.1/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/v35.1/protobuf-35.1.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-debian13:latest@sha256:a017e74bd2a12d98342dbecd33d121d2b160415ed777573dc1808969e989d94d 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/v35.1/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: v35.1
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/v35.1/LICENSE
registry:
cmake: {}
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/cpp/v35.1/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/v35.1/.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/v35.1/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/v35.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# syntax=docker/dockerfile:1.24
FROM debian:trixie-20260610@sha256:fe7312b5f05bf5f43fad76bcd8945642e4e47a68aefd1b73f447615899d0fac1 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.28.1/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/v35.1/protobuf-35.1.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.422-bookworm-slim@sha256:2b9d38734c2f5d5945e03f6e49feeda5f12ae28a22ba04ebd0357d6cf502e800 AS dotnetrestore
WORKDIR /build
COPY --link ./build.csproj /build/build.csproj
RUN mkdir /nuget && dotnet restore --packages /nuget

FROM gcr.io/distroless/cc-debian13:latest@sha256:a017e74bd2a12d98342dbecd33d121d2b160415ed777573dc1808969e989d94d 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/v35.1/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: v35.1
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/v35.1/LICENSE
registry:
opts:
- base_namespace=
nuget:
target_frameworks:
- netstandard2.0
deps:
- name: Google.Protobuf
version: 3.35.1
8 changes: 8 additions & 0 deletions plugins/protocolbuffers/csharp/v35.1/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.35.1" />
</ItemGroup>
</Project>
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/csharp/v35.1/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);
}
5 changes: 5 additions & 0 deletions plugins/protocolbuffers/java/v35.1/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*
!BUILD
!Dockerfile
!java.cc
!pom.xml
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/java/v35.1/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",
],
)
35 changes: 35 additions & 0 deletions plugins/protocolbuffers/java/v35.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# syntax=docker/dockerfile:1.24
FROM debian:trixie-20260610@sha256:fe7312b5f05bf5f43fad76bcd8945642e4e47a68aefd1b73f447615899d0fac1 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.28.1/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/v35.1/protobuf-35.1.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-debian13:latest@sha256:a017e74bd2a12d98342dbecd33d121d2b160415ed777573dc1808969e989d94d AS base

FROM maven:3.9.11-eclipse-temurin-21 AS maven-deps
COPY pom.xml /tmp/pom.xml
RUN cd /tmp && mvn -f pom.xml dependency:go-offline

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-java .
COPY --from=maven-deps /root/.m2/repository /maven-repository
USER nobody
ENTRYPOINT ["/protoc-gen-java"]
19 changes: 19 additions & 0 deletions plugins/protocolbuffers/java/v35.1/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: v35.1
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/v35.1/LICENSE
registry:
maven:
deps:
- com.google.protobuf:protobuf-java:4.35.1
additional_runtimes:
- name: lite
deps:
- com.google.protobuf:protobuf-javalite:4.35.1
- build.buf:protobuf-javalite:4.35.1
opts: [lite]
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/java/v35.1/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);
}
24 changes: 24 additions & 0 deletions plugins/protocolbuffers/java/v35.1/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>temp</groupId>
<artifactId>temp</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>4.35.1</version>
</dependency>
<!-- lite -->
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-javalite</artifactId>
<version>4.35.1</version>
</dependency>
<dependency>
<groupId>build.buf</groupId>
<artifactId>protobuf-javalite</artifactId>
<version>4.35.1</version>
</dependency>
</dependencies>
</project>
5 changes: 5 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*
!BUILD
!Dockerfile
!kotlin.cc
!pom.xml
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/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",
],
)
35 changes: 35 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# syntax=docker/dockerfile:1.24
FROM debian:trixie-20260610@sha256:fe7312b5f05bf5f43fad76bcd8945642e4e47a68aefd1b73f447615899d0fac1 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.28.1/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/v35.1/protobuf-35.1.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-debian13:latest@sha256:a017e74bd2a12d98342dbecd33d121d2b160415ed777573dc1808969e989d94d AS base

FROM maven:3.9.11-eclipse-temurin-21 AS maven-deps
COPY pom.xml /tmp/pom.xml
RUN cd /tmp && mvn -f pom.xml dependency:go-offline

FROM scratch
COPY --from=base --link / /
COPY --from=build --link --chmod=0755 /build/bazel-bin/plugins/protoc-gen-kotlin .
COPY --from=maven-deps /root/.m2/repository /maven-repository
USER nobody
ENTRYPOINT ["/protoc-gen-kotlin"]
28 changes: 28 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/buf.plugin.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
version: v1
name: buf.build/protocolbuffers/kotlin
plugin_version: v35.1
source_url: https://github.com/protocolbuffers/protobuf
integration_guide_url: https://protobuf.dev/getting-started/kotlintutorial
description: Base types for Kotlin. Generates message and enum types.
deps:
- plugin: buf.build/protocolbuffers/java:v35.1
output_languages:
- kotlin
spdx_license_id: BSD-3-Clause
license_url: https://github.com/protocolbuffers/protobuf/blob/v35.1/LICENSE
registry:
maven:
compiler:
kotlin:
api_version: "2.1"
version: "2.2.21"
deps:
- com.google.protobuf:protobuf-kotlin:4.35.1
- org.jetbrains.kotlin:kotlin-stdlib:2.2.21
- org.jetbrains.kotlin:kotlin-stdlib-jdk8:2.2.21
additional_runtimes:
- name: lite
deps:
- com.google.protobuf:protobuf-kotlin-lite:4.35.1
- org.jetbrains.kotlin:kotlin-stdlib:2.2.21
opts: [lite]
7 changes: 7 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/kotlin.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#include <google/protobuf/compiler/kotlin/generator.h>
#include <google/protobuf/compiler/plugin.h>

int main(int argc, char *argv[]) {
google::protobuf::compiler::kotlin::KotlinGenerator generator;
return google::protobuf::compiler::PluginMain(argc, argv, &generator);
}
56 changes: 56 additions & 0 deletions plugins/protocolbuffers/kotlin/v35.1/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>temp</groupId>
<artifactId>temp</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-kotlin</artifactId>
<version>4.35.1</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<version>2.2.21</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-jdk8</artifactId>
<version>2.2.21</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>4.35.1</version>
</dependency>
<!-- lite -->
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-kotlin-lite</artifactId>
<version>4.35.1</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-javalite</artifactId>
<version>4.35.1</version>
</dependency>
<dependency>
<groupId>build.buf</groupId>
<artifactId>protobuf-javalite</artifactId>
<version>4.35.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>2.2.21</version>
<configuration>
<apiVersion>2.1</apiVersion>
</configuration>
</plugin>
</plugins>
</build>
</project>
Loading
Loading