Ruby is now available in Google Cloud Functions
Cloud Functions, Google Cloud’s Function as a Service (FaaS) offering, is a lightweight process stage for making single-reason, independent capacities that react to occasions, without dealing with a worker or runtime climate. Cloud capacities are an extraordinary fit for serverless, application, versatile or IoT backends, constant information preparing frameworks, video, picture and assumption investigation, and even things like chatbots, or menial helpers.
Today we’re bringing support for Ruby, a famous, universally useful programming language, to Cloud Functions. With the Functions Framework for Ruby, you can compose informal Ruby capacities to assemble business-basic applications and incorporation layers. Also, with Cloud Functions for Ruby, presently in Preview, you can send capacities in a completely overseen Ruby 2.6 or Ruby 2.7 climate, complete with admittance to assets in a private VPC organization. Ruby capacities scale consequently dependent on your heap. You can compose HTTP capacities to react to HTTP occasions, and CloudEvent capacities to handle occasions sourced from the different cloud and Google Cloud administrations including Pub/Sub, Cloud Storage, and Firestore.
You can create capacities utilizing the Functions Framework for Ruby, an open-source capacities as-a-administration structure for composing convenient Ruby capacities. With Functions Framework you create, test, and run your capacities locally, at that point send them to Cloud Functions, or another Ruby climate.
Composing Ruby capacities
The Functions Framework for Ruby backings HTTP capacities and CloudEvent capacities. An HTTP cloud work is anything but difficult to write in informal Ruby. Underneath, you’ll locate a straightforward HTTP work for Webhook/HTTP use cases.
01 require “functions_framework”
02
03 FunctionsFramework.http “hello_http” do |request|
04 “Hi, world!\n”
05 end
CloudEvent capacities on the Ruby runtime can likewise react to industry-standard CNCF CloudEvents. These occasions can be from different Google Cloud administrations, for example, Pub/Sub, Cloud Storage, and Firestore.
Here is a basic CloudEvent work working with Pub/Sub.
01 require “functions_framework”
02 require “base64”
03
04 FunctionsFramework.cloud_event “hello_pubsub” do |event|
05 name = Base64.decode64 event.data[“message”][“data”] salvage “World”
06 logger.info “Hi, #{name}!”
07 end
The Ruby Functions Framework fits easily with famous Ruby advancement cycles and instruments. Notwithstanding composing capacities, you can test capacities in disconnection utilizing Ruby test structures, for example, Minitest and RSpec, without expecting to turn up or mock a web worker. Here is a basic RSpec model:
01 require “RSpec”
02 require “functions_framework/testing”
03
04 depict “functions_helloworld_get” do
05 incorporate FunctionsFramework::Testing
06
07 it “produces the right reaction body” do
08 load_temporary “hi/app.rb” do
09 solicitation = make_get_request “http://example.com:8080/”
10 reaction = call_http “hello_http”, demand
11 expect(response.status).to eq 200
12 expect(response.body.join).to eq “Hi Ruby!\n”
13 end
14 end
15 end
Attempt Cloud Functions for Ruby today
Cloud Functions for Ruby is prepared for you to attempt today. Peruse the Quickstart control, figure out how to compose your first capacities, and give it a shot with a Google Cloud free preliminary. If you need to plunge somewhat more profound into the specialized angles, you can likewise peruse our Ruby Functions Framework documentation. In case you’re keen on the open-source Functions Framework for Ruby, kindly don’t spare a moment to examine the undertaking and conceivably even contribute. We’re anticipating seeing all the Ruby capacities you compose!