Skip to content

Add Go (preview) runtime reference for Azure Functions migration - #2929

Open
Harshitha Vegaraju (harshivcodes) wants to merge 2 commits into
microsoft:mainfrom
harshivcodes:harshivcodes/add-golang-runtime-skill
Open

Add Go (preview) runtime reference for Azure Functions migration#2929
Harshitha Vegaraju (harshivcodes) wants to merge 2 commits into
microsoft:mainfrom
harshivcodes:harshivcodes/add-golang-runtime-skill

Conversation

@harshivcodes

Copy link
Copy Markdown

Summary

Adds a Go (preview) runtime reference for the Azure Functions Lambda-migration skill, based on the azure-functions-golang-worker SDK.

What's in runtimes/go.md

  • Project setup with the verified func init --worker-runtime go scaffolding (host.json, local.settings.json), scoped as local-only per Microsoft Learn.
  • All supported triggers: HTTP, Blob (extension), Queue, Timer, Event Grid, Cosmos DB, Service Bus, Event Hubs, SQL.
  • SDK-for-Go patterns with DefaultAzureCredential for non-HTTP I/O (Go worker is triggers-only by design).
  • Handler-return-value → retry / poison behavior per trigger.
  • Goroutine panic recovery (sdk.RecoverTo / sdk.Recover).
  • Flex Consumption build & hosting constraints (CGO disabled, ELF app binary, zip permission bits, EventGrid-source blob-trigger requirements).

Supporting edits

Small carve-outs in code-migration.md, global-rules.md, and lambda-to-functions.md so the shared migration rules ("no function.json", "bindings over SDKs", programming-model mapping) know about Go and preview-runtime confirmation.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a Go (preview) runtime reference to the azure-cloud-migrate Azure Functions migration documentation set, and updates shared migration rules/mapping docs so they correctly account for Go’s preview status and triggers-only programming model.

Changes:

  • Introduces a new Go runtime reference (runtimes/go.md) documenting setup, supported triggers, SDK-based I/O patterns, retry semantics, and Flex Consumption constraints.
  • Expands Lambda → Functions programming-model mapping and runtime-specific links to include the Go worker (preview).
  • Updates shared rules to require explicit user confirmation for preview runtimes and to document Go’s “SDK for all non-HTTP I/O” exception.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 5 comments.

File Description
plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md New Go (preview) runtime reference covering triggers, SDK patterns, and hosting constraints.
plugin/skills/azure-cloud-migrate/references/services/functions/lambda-to-functions.md Adds Go worker column to programming-model mapping and links to Go migration rules.
plugin/skills/azure-cloud-migrate/references/services/functions/global-rules.md Requires ask_user confirmation for preview runtimes and documents the Go triggers-only exception.
plugin/skills/azure-cloud-migrate/references/services/functions/code-migration.md Adds Go-specific “no function.json”, preview confirmation, and triggers-only I/O exception guidance.

Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Comment thread plugin/skills/azure-cloud-migrate/references/services/functions/runtimes/go.md Outdated
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 40bda0fe-2317-44bf-9727-7d60f896dc06
@harshivcodes
Harshitha Vegaraju (harshivcodes) force-pushed the harshivcodes/add-golang-runtime-skill branch from 2a5d40e to 4df7a8c Compare August 17, 2026 21:45
@harshivcodes

Copy link
Copy Markdown
Author

Rick Winter (@RickWinter) - apologies on the delayed turn around on this. I was waiting for some go quick start templates to be live before resuming work on this PR. I've addressed all your feedback on this. Could you please take another look?

cc: Madhura Bharadwaj (@MadhuraBharadwaj-MSFT)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants