i am deciding whether to migrate a react azure f

PDF · 2 Apr 2026

The document provides a comprehensive decision framework for a small GRDC team deciding whether to keep a React + Azure Function (.NET 8/C#) project in Azure DevOps or migrate it to GitHub. It compares GitHub Advanced Security (GHAS) with GitHub Advanced Security for Azure DevOps (GHAzDO), highlighting the unique AI‑driven Copilot Autofix advantage of GHAS. It evaluates GitHub Actions versus Azure Pipelines, noting functional parity but differing ergonomics, especially around Azure service connections and deployment gates. The cost and risk analysis shows that mid‑project migration adds governance risk and regression testing overhead, while a post‑delivery migration is low‑risk, fast (5‑10 min per repo using the gh ado2gh CLI), and aligns with Microsoft’s roadmap that bundles Azure DevOps Basic licenses with GitHub Enterprise. A staged pilot approach is recommended: create a shadow GitHub repo, set up OIDC‑based Azure connections, draft equivalent Actions workflows, validate in a non‑production slot, then cut over after delivery, optionally keeping Azure Pipelines pointed at the new repo or switching to Actions. The broader strategic view stresses that agentic AI features (Copilot Workspace, Autofix) are GitHub‑only and will increasingly differentiate productivity. The second part analyses the existing NVT Long‑Term Yield (LTY) SPA (app.nvt.grdc.com.au/lty/table), extracting its deep‑linkable URL routing, multi‑dimensional data model (crop, state, region, site, year), colour‑coded yield bands, and UI patterns (filter cascade, virtualised data table, onboarding walkthrough). Based on this, the guide recommends a front‑end stack: TanStack Table v8, TanStack Virtual, TanStack Query, React Router v6 with URL‑encoded filter state, and a lightweight state manager (Zustand/Jotai). It outlines backend Azure Function endpoints to serve cascade data and a pre‑computed MET matrix with yield‑index values, and provides code snippets for URL state hooks, data fetching, colour‑band mapping, and virtualised table rendering. Accessibility (WCAG AA colour contrast) and performance (row/column virtualization) requirements are emphasized, along with a testing strategy (Playwright/Cypress integration tests in CI). Governance considerations for GRDC (audit trails, deployment approvals) are woven throughout. The document concludes that the project is a suitable migration pilot if the shadow setup is isolated from active delivery, allowing the team to gain experience with GitHub’s AI tooling and modern front‑end architecture without jeopardising the current delivery schedule.

Topics

Decision Framework Overview: Stay in Azure DevOps for Delivery, Migrate Post‑Delivery

High‑level recommendation to keep the current Azure DevOps pipeline for the active GRDC delivery and perform a structured migration after the project is shipped.

More from Gerri

PDF

i_am_evaluating_augment_code_as_the_primary_ai-ass.pdf

6mo ago
PDF

i_am_managing_quality_assurance_for_an_ai-assisted.pdf

6mo ago
PDF

i_am_building_a_reusable_ai-assisted_development_c.pdf

6mo ago
PDF

i_am_designing_an_ai-assisted_development_workflow.pdf

6mo ago
PDF

i_am_implementing_microsoft_entra_external_id_oau.pdf

6mo ago
PDF

i_am_architecting_a_standalone_react_web_applicati.pdf

6mo ago
PDF

i_am_implementing_a_nightly_in-memory_caching_patt.pdf

6mo ago
PDF

i_am_assessing_whether_to_extract_and_adapt_existi.pdf

6mo ago
PDF

GN_865_Add_Trial_Coord_Company_to_Trial_Search_QUOTE_v2_0___ns_approved_20_05_2025.pdf

6mo ago
PDF

GN_809_Import_Seed_Attributes_QUOTE_v2_0___ns_approved_07_05_2025.pdf

6mo ago
PDF

GN_804_Bulk_Trial_Ratings_Updates_QUOTE_v4_0.pdf

6mo ago
See all content