Help us shape the future of Go! Take the 2026 Go Developer Survey

service-extensions-samples

module
v0.0.0-...-8e4d611 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 16, 2026 License: Apache-2.0

README

Google Cloud Service Extensions Samples

Recipes and code samples for Google Cloud Service Extensions.

Service Extensions allow you to insert custom code inline in the networking data path. Service Extensions offers two types of extensions:

  • Plugin extensions: extensions that let you insert custom code inline in the networking data path. You build these plugins by using WebAssembly (Wasm) and Proxy-Wasm ABI. Plugin extensions run as Wasm modules on a Google-managed sandbox infrastructure similar to a serverless infrastructure.

    Plugin extensions are supported by both Cloud Application Load Balancers and Media CDN.

    Example recipes are found in the plugins subdirectory.

  • Callout extensions: extensions that let you use Cloud Load Balancing to make gRPC calls to user-managed services during data processing. You write callout extensions against Envoy's external processing gRPC API. Callout extensions run as general-purpose gRPC servers on user-managed compute VMs and Google Kubernetes Engine Pods on Google Cloud, multicloud, or on-premises environments.

    Callout extensions are supported by Cloud Application Load Balancers.

License

All recipes and samples within this repository are provided under the Apache 2.0 license. Please see the LICENSE file for more detailed terms and conditions.

Code of Conduct

For our code of conduct, see Code of Conduct.

Contributing

Contributions welcome! See the Contributing Guide.

Directories

Path Synopsis
callouts
go module
plugins
samples/ab_testing command
[START serviceextensions_plugin_ab_testing]
[START serviceextensions_plugin_ab_testing]
samples/ad_insertion command
[START serviceextensions_plugin_ad_insertion]
[START serviceextensions_plugin_ad_insertion]
samples/add_custom_response command
[START serviceextensions_plugin_add_custom_response]
[START serviceextensions_plugin_add_custom_response]
samples/add_device_type command
[START serviceextensions_plugin_device_type]
[START serviceextensions_plugin_device_type]
samples/add_request_header command
[START serviceextensions_plugin_add_request_header]
[START serviceextensions_plugin_add_request_header]
samples/add_response_header command
[START serviceextensions_plugin_add_repoonse_header]
[START serviceextensions_plugin_add_repoonse_header]
samples/check_pii command
[START serviceextensions_plugin_check_pii]
[START serviceextensions_plugin_check_pii]
samples/config_denylist command
[START serviceextensions_plugin_config_denylist]
[START serviceextensions_plugin_config_denylist]
samples/docs_first_plugin command
[START serviceextensions_plugin_docs_first_plugin]
[START serviceextensions_plugin_docs_first_plugin]
samples/docs_plugin_config command
[START serviceextensions_plugin_docs_plugin_config]
[START serviceextensions_plugin_docs_plugin_config]
samples/error_page_with_traceid command
[START serviceextensions_plugin_error_page_with_traceid]
[START serviceextensions_plugin_error_page_with_traceid]
samples/geo_directional_origin command
[START serviceextensions_plugin_geo_routing]
[START serviceextensions_plugin_geo_routing]
samples/jwt_auth command
[START serviceextensions_plugin_jwt_auth]
[START serviceextensions_plugin_jwt_auth]
samples/log_query command
[START serviceextensions_plugin_log_query]
[START serviceextensions_plugin_log_query]
samples/normalize_header command
[START serviceextensions_plugin_normalize_header]
[START serviceextensions_plugin_normalize_header]
samples/overwrite_errcode command
[START serviceextensions_plugin_overwrite_errcode]
[START serviceextensions_plugin_overwrite_errcode]
samples/overwrite_header command
[START serviceextensions_plugin_overwrite_header]
[START serviceextensions_plugin_overwrite_header]
samples/redirect command
[START serviceextensions_plugin_redirect]
[START serviceextensions_plugin_redirect]
samples/redirect_bulk command
[START serviceextensions_plugin_redirect_bulk]
[START serviceextensions_plugin_redirect_bulk]
samples/regex_rewrite command
[START serviceextensions_plugin_regex_rewrite]
[START serviceextensions_plugin_regex_rewrite]
samples/remove_cookie command
[START serviceextensions_plugin_remove_setcookie]
[START serviceextensions_plugin_remove_setcookie]
samples/set_cookie command
[START serviceextensions_plugin_set_cookie]
[START serviceextensions_plugin_set_cookie]
samples/set_reset_cookie command
[START serviceextensions_plugin_set_reset_cookie]
[START serviceextensions_plugin_set_reset_cookie]

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL