Worklows state management with Firestore

In Workflows, sometimes, you need to store some state, a key/value pair, in a step in one execution and later read that state in another step in another execution. There’s no intrinsic key/value store in Workflows. However, you can use Firestore as a key/value store and that’s what I want to show you here. If you want to skip to see some samples, check out workflow.yaml. If you want to learn more about it, keep reading. [Read More]

Applying a path pattern when filtering in Eventarc

You can now apply a path pattern when filtering in Eventarc. This is especially useful when you need to filter on resource names beyond exact match. Path pattern syntax allows you to define a regex-like expression that matches events as broadly as you like. Let’s take a look at a concrete example. Without path patterns Let’s say you want to listen for new file creations in a Cloud Storage bucket with an AuditLog trigger. [Read More]

Building APIs with Cloud Functions and API Gateway

Building APIs with Cloud Run If I want to build an API, I usually use Cloud Run. In Cloud Run, you run a container and in that container, you run a web server that handles a base URL in this format: https://<service-name>-<hash>-<region> You can then have the web server handle any path under that base URL such as: https://<service-name>-<hash>-<region> https://<service-name>-<hash>-<region> Building APIs with Cloud Functions In Cloud Functions, you only have access to a function (no web server) and that function can only handle the base path: [Read More]

.NET 6 support in Google Cloud Buildpacks and Cloud Run

I really like the idea of containers, a reproducible context that our apps can rely on. However, I really dislike having to create a Dockerfile to define my container images. I always need to copy & paste it from somewhere and it takes me some time to get it right. That’s why I like using Google Cloud Buildpacks to build containers without having to worry about a Dockerfile. I’m happy to announce that, as of yesterday, Google Cloud Buildpacks now supports . [Read More]

Auto-completion for Workflows JSON and YAML on Visual Studio Code

If you’re like me, you probably use VS Code to author your Workflows JSON or YAML. You also probably expect some kind syntax validation or auto-completion as you work on your workflow. Unfortunately, there’s no VS Code extension for Workflows and Cloud Code for VS Code does not support Workflows. However, there’s a way to get partial auto-completion for Workflows in VS Code. VS Code and JSON Schema VS Code has the ability to display auto-complete suggestions for JSON and YAML files out of the box. [Read More]

Get notified when an expensive BigQuery job executes using Eventarc and SendGrid

Events supported by Eventarc Last week, I put together a list of events supported by Eventarc in our eventarc-samples repo. Thanks to our docs team, this list is now part of our official docs under reference section. After looking at the full list, I started thinking about some use cases enabled by these events. I want to talk about one of those use cases today: How to get notified when an expensive BigQuery job executes? [Read More]

Introducing Eventarc in Pic-a-Daily Serverless Workshop

Pic-a-Daily Serverless Workshop As you might know, Guillaume Larforge and I have a Pic-a-Daily Serverless Workshop. In this workshop, we build a picture sharing application using Google Cloud serverless technologies such as Cloud Functions, App Engine, Cloud Run and more. We recently added a new service to the workshop. In this blog post, I want to talk about the new service. I also want to talk about Eventarc and how it helped us to get events to the new service. [Read More]

Knative v0.18.0 update

I got around to updating my Knative Tutorial from Knative v0.16.0 to the latest Knative Serving v0.18.0 release and Knative Eventing v0.18.1 release. In this short blog post, I want to outline a couple of minor issues I encountered during my upgrade. Note that I skipped v0.17 altogether, some of these changes might have happened in that release. Istio Installation The biggest change I encountered is how Istio is installed for Knative. [Read More]

Events for Cloud Run for Anthos >= Knative Eventing on Kubernetes

Introduction We recently announced a new feature, Events for Cloud Run for Anthos, to build event driven systems on Google Kubernetes Engine (GKE). In the announcement, we also stated that the solution is based on open-source Knative. In this blog post, I want to further explain the relationship between this new feature and Knative. I also want to convince you that our solution is an easier way to deploy Knative compliant event consuming services on Google Cloud. [Read More]

A first look at serverless orchestration with Workflows

Challenges in connecting services When I think about my recent projects, I probably spent half of my time coding new services and the other half in connecting services. Service A calling Service B, or Service C calling an external service and using the result to feed into another Service D. Connecting services is one of those things that ‘should be easy’ but in reality, it takes a lot of time and effort. [Read More]