Skip to content

Instantly share code, notes, and snippets.

View bijukunjummen's full-sized avatar

Biju Kunjummen bijukunjummen

View GitHub Profile
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-skaffold-gke-deployment
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: hello-skaffold-gke
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-skaffold-gke-deployment
spec:
replicas: 1
selector:
matchLabels:
app: hello-skaffold-gke
template:
apiVersion: skaffold/v2beta16
kind: Config
metadata:
name: hello-skaffold-gke
build:
artifacts:
- image: hello-skaffold-gke
jib: {}
deploy:
kubectl:
plugins{
id 'java'
id "io.github.bijukunjummen.cloudfunction"
}
dependencies {
...
}
cloudFunction {
configurations {
invoker
}
dependencies {
...
invoker("com.google.cloud.functions.invoker:java-function-invoker:1.1.0")
...
}
import com.google.cloud.functions.HttpFunction;
import com.google.cloud.functions.HttpRequest;
import com.google.cloud.functions.HttpResponse;
public class HelloHttp implements HttpFunction {
@Override
public void service(HttpRequest request, HttpResponse response) throws IOException {
final BufferedWriter writer = response.getWriter();
response.setContentType("application/html");
package org.bk.logback.custom;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.contrib.json.classic.JsonLayout;
import com.google.cloud.logging.Severity;
import java.util.Map;
public class GcpJsonLayout extends JsonLayout {
@bijukunjummen
bijukunjummen / publish-springcloudgcp.java
Created April 9, 2022 04:31
Publish to Cloud Pub/Sub using Spring Cloud GCP
public Mono<Void> publish(Message message) {
ByteString data = ByteString.copyFromUtf8(JsonUtils.writeValueAsString(message, objectMapper));
PubsubMessage pubSubMessage = PubsubMessage.newBuilder().setData(data).build();
return Mono.fromFuture(pubSubTemplate.publish(pubSubProperties.topic(), pubSubMessage).completable()).then();
}
@bijukunjummen
bijukunjummen / publishmessage.java
Created April 9, 2022 04:15
Publish a message to GCP Pub/Sub Topic
public Mono<Void> publish(Message message) {
ByteString data = ByteString.copyFromUtf8(JsonUtils.writeValueAsString(message, objectMapper));
PubsubMessage pubSubMessage = PubsubMessage.newBuilder().setData(data).build();
ApiFuture<String> messageIdFuture = publisher.publish(pubSubMessage);
Mono<String> messageIdMono = ApiFutureUtil.toMono(messageIdFuture);
return messageIdMono.then();
}
public record Message(String id, String payload) {
}