diff --git a/docs/assets/scss/_sidebar-tree.scss b/docs/assets/scss/_sidebar-tree.scss index e6cc7ed9e..6868d7af9 100644 --- a/docs/assets/scss/_sidebar-tree.scss +++ b/docs/assets/scss/_sidebar-tree.scss @@ -68,6 +68,13 @@ font-size: .6em; } + // When a foldable section is expanded its child links are visible, so if a + // child carries its own "New" badge, hide the parent section's badge to + // avoid showing the same "New" twice. + li:has(> ul .sidebar-new-badge) > input:checked + label .sidebar-new-badge { + display: none; + } + a { font-size: .9rem; &:hover { diff --git a/docs/content/getting-started/_index.md b/docs/content/getting-started/_index.md index b6c524b9c..1787f166e 100644 --- a/docs/content/getting-started/_index.md +++ b/docs/content/getting-started/_index.md @@ -16,6 +16,6 @@ This guide will show you how to quickly get started with Radius. You will do a b ## Organization -This guide is organized into four sequential parts. +This guide is organized into five sequential parts. {{< button text="Get started: Install Radius" page="getting-started/install-radius" >}} diff --git a/docs/content/getting-started/add-connection/_index.md b/docs/content/getting-started/add-connection/_index.md index 84005af4a..209e4b528 100644 --- a/docs/content/getting-started/add-connection/_index.md +++ b/docs/content/getting-started/add-connection/_index.md @@ -68,6 +68,6 @@ rad uninstall kubernetes --purge ## Next steps -You have installed Radius, deployed the Radius Demo application, and connected it to a PostgreSQL database. Continue with the hands-on labs for deeper, real-world scenarios. +You have installed Radius, deployed the Radius Demo application, and connected it to a PostgreSQL database. Next, use the GitHub Copilot app to model and deploy an application directly from your source code repository. -{{< button text="Next step: Explore the labs" page="getting-started/labs" >}} +{{< button text="Next step: Use the GitHub Copilot app" page="getting-started/try-github-copilot-app" >}} diff --git a/docs/content/getting-started/install-radius/_index.md b/docs/content/getting-started/install-radius/_index.md index dd116892f..a9ebbc249 100644 --- a/docs/content/getting-started/install-radius/_index.md +++ b/docs/content/getting-started/install-radius/_index.md @@ -8,7 +8,7 @@ weight: 100 In part one, you will install Radius on an existing Kubernetes cluster. -## Prerequisites +## Before you begin For this guide you only need a **Kubernetes cluster**. To install Radius, your user must have the cluster-admin role. Radius }}">supports AKS, EKS, k3d, and kind clusters. Running a local cluster with k3d or kind is recommended. diff --git a/docs/content/getting-started/labs/_index.md b/docs/content/getting-started/labs/_index.md index b4d236c16..20b88431c 100644 --- a/docs/content/getting-started/labs/_index.md +++ b/docs/content/getting-started/labs/_index.md @@ -1,9 +1,9 @@ --- type: docs -title: "4. Hands-on labs" -linkTitle: "4. Hands-on labs" +title: "5. Hands-on labs" +linkTitle: "5. Hands-on labs" description: "Hands-on, scenario-based labs for Radius" -weight: 400 +weight: 500 --- Now that you have installed Radius and deployed an application, work through the hands-on labs for deeper, real-world scenarios. Each lab is a self-contained project with source code and step-by-step instructions. diff --git a/docs/content/getting-started/try-github-copilot-app/add-radius-marketplace.png b/docs/content/getting-started/try-github-copilot-app/add-radius-marketplace.png new file mode 100644 index 000000000..d30d58f37 Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/add-radius-marketplace.png differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/application-graph-diff.png b/docs/content/getting-started/try-github-copilot-app/application-graph-diff.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/application-graph-diff.png rename to docs/content/getting-started/try-github-copilot-app/application-graph-diff.png diff --git a/docs/content/getting-started/try-github-copilot-app/choose-cloud-credentials.png b/docs/content/getting-started/try-github-copilot-app/choose-cloud-credentials.png new file mode 100644 index 000000000..e5ca2c813 Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/choose-cloud-credentials.png differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/connect-github-to-cloud.png b/docs/content/getting-started/try-github-copilot-app/connect-github-to-cloud.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/connect-github-to-cloud.png rename to docs/content/getting-started/try-github-copilot-app/connect-github-to-cloud.png diff --git a/docs/content/getting-started/try-github-copilot-app/create-azure-credential-profile.png b/docs/content/getting-started/try-github-copilot-app/create-azure-credential-profile.png new file mode 100644 index 000000000..b0b09d266 Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/create-azure-credential-profile.png differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/deploy-application.png b/docs/content/getting-started/try-github-copilot-app/deploy-application.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/deploy-application.png rename to docs/content/getting-started/try-github-copilot-app/deploy-application.png diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/deployed-application-graph.png b/docs/content/getting-started/try-github-copilot-app/deployed-application-graph.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/deployed-application-graph.png rename to docs/content/getting-started/try-github-copilot-app/deployed-application-graph.png diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/feedback.png b/docs/content/getting-started/try-github-copilot-app/feedback.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/feedback.png rename to docs/content/getting-started/try-github-copilot-app/feedback.png diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/index.md b/docs/content/getting-started/try-github-copilot-app/index.md similarity index 53% rename from docs/content/integrations/github-copilot-app/canvas-extension/index.md rename to docs/content/getting-started/try-github-copilot-app/index.md index b46d4b9e2..46daaa24f 100644 --- a/docs/content/integrations/github-copilot-app/canvas-extension/index.md +++ b/docs/content/getting-started/try-github-copilot-app/index.md @@ -1,13 +1,25 @@ --- type: docs -title: "Model, visualize, and deploy applications using Radius Canvas extension" -linkTitle: "Radius Canvas extension" -weight: 2 -description: "Install the Radius Canvas extension to model, visualize, and deploy an application in the GitHub Copilot app" +title: "4. Use the GitHub Copilot app" +linkTitle: "4. Use the GitHub Copilot app" +weight: 400 +description: "Install the Radius plugin and use it to model, visualize, and deploy an application in the GitHub Copilot app" hide_preview_release_banner: true +aliases: + - /integrations/github-copilot-app/canvas-extension/ --- -## Prerequisites +{{% alert title="Preview Release" color="warning" %}} +Radius integration with the GitHub Copilot app is a preview release. It is only compatible with **containerized applications deployed to Azure**. +{{% /alert %}} + +In this guide, you will install the Radius plugin for the GitHub Copilot app and use it to model, visualize, and deploy a containerized application to Azure, all from within the app. + +The Radius integration with the GitHub Copilot app is completely self-contained and separate from a standalone Radius installation. It runs Radius operations as GitHub Actions workflows in your repository. If you installed Radius on a Kubernetes cluster in the previous pages of this Getting Started guide, this integration does not use that control plane. You do not need a local `rad` installation or an existing Radius control plane to complete this guide. + +## Before you begin + +Make sure you have: - The latest version of the [GitHub Copilot app](https://docs.github.com/en/copilot/concepts/agents/github-copilot-app). - An Azure subscription. @@ -39,97 +51,75 @@ You can use your own application or fork one of these open-source samples: {{< image src="open-add-marketplace-menu.png" alt="Plugins settings with the Install menu open and Add marketplace selected" width=800px >}} -4. Enter `radius-project/ai-extensions`, and then select **Add marketplace**. +4. Enter the following under **Add marketplace**: + + ```text + radius-project/ai-extensions + ``` {{< image src="add-radius-marketplace.png" alt="Add marketplace dialog with radius-project/ai-extensions entered as the marketplace source" width=800px >}} -5. In the `radius-plugins` marketplace, install the `radius-edge` plugin. +5. Expand the **`radius-plugins`** marketplace and install the `radius-edge` plugin. {{< image src="install-radius-plugin.png" alt="Radius plugins marketplace showing the radius-edge plugin available to install" width=700px >}} -6. Restart your Copilot session so the skills and canvas become available. - -The plugin bundles the Radius skills and canvas extension into one installation. After installation, use the plugin's three-dot menu to update or uninstall it. - -{{% alert title="Preview installation" color="info" %}} -Adding the Radius marketplace manually is temporary. When the extension is released for public preview, the plugin will be available from the `awesome-copilot` marketplace. -{{% /alert %}} +6. Restart your Copilot session so the skills and the Radius Canvas extension become available. ## Step 2: Model your Application 1. Create a new Copilot session. Select **GitHub repository**, and then add the repository you want to model. - {{< image src="select-github-repository.png" alt="GitHub Copilot App menu for starting a session from a GitHub repository" width=500px >}} - -2. In the chat, enter **Show me the application graph**. + {{< image src="select-github-repository.png" alt="GitHub Copilot app menu for starting a session from a GitHub repository" width=500px class="d-block mb-4" >}} - {{< image src="prompt-application-graph.png" alt="GitHub Copilot App chat prompt asking Copilot to show the application graph" width=800px >}} +2. In the chat, type: - Copilot runs the Radius app-modeling skill. The skill analyzes your source code, manifests, and Dockerfiles, identifies your workloads and their dependencies, generates a Radius Application definition, and writes it into your repository. The canvas opens and renders the definition as an interactive Application graph. + ```text + Show me the application graph + ``` - {{< image src="modeled-application-graph-create-environment.png" alt="Radius Canvas Modeled graph with the Create Environment action" width=800px >}} + Copilot analyzes your source code, manifests, and Dockerfiles, identifies your workloads and their dependencies, and generates an application definition. It writes the definition to `.radius/app.bicep` in your repository, creating the `.radius/` directory if it does not already exist. The Radius panel opens and renders the definition as an interactive Application graph. - {{% alert title="Canvas troubleshooting" color="info" %}} - If Radius Canvas does not open, ask Copilot to `Fix my Radius extension`. This invokes the Radius repair skill, which copies the required Canvas extension files into place. - {{% /alert %}} - - The **Modeled** view visualizes the generated application definition `.radius/app.bicep` file. The graph represents the workloads, routes, backing services, and connections Radius identified in the repository. - - Review the connections in the graph: - - - Verify that all application workloads appear in the graph. - - Check that the graph includes the expected backing services and infrastructure dependencies. - - Ensure that the connections between resources accurately represent the application architecture. - - Select **View source code** to open the file where Radius detected the service or dependency. - -3. Select **Create Environment** next to the **Modeled** graph to begin configuring the Environment and planning the deployment. + The **Modeled** view visualizes the generated application definition `.radius/app.bicep` file. The graph represents the workloads, routes, backing services, and connections Radius identified in the repository. Select a resource on the graph and **View source code** to open the file where Radius detected the service or dependency. ## Step 3: Configure your Environment -An Environment defines where your Application runs and the infrastructure available to it. After you select **Create Environment**, the canvas opens the environment configuration flow. +An Environment defines where your Application is deployed to. + +1. Select **Create Environment** next to the **Modeled** graph to begin configuring the Environment and planning the deployment. -1. Under **Choose Cloud credentials**, open the credential profile dropdown, and then select **Create new profile**. +2. Under **Choose Cloud credentials**, open the credential profile dropdown, and then select **Create new profile**. A credential profile is a reusable, named set of cloud credentials—the provider, Azure tenant, and subscription—that Radius uses to authenticate to your cloud and establish OIDC trust with GitHub Actions. - {{< image src="choose-cloud-credentials.png" alt="Choose cloud credentials step with the option to create a credential profile" width=800px >}} + {{< image src="choose-cloud-credentials.png" alt="Choose cloud credentials step with the option to create a credential profile" width=800px class="d-block mb-4" >}} -2. Enter a profile name, select **Azure** as the provider, and enter your Azure tenant ID and subscription. +3. Enter a profile name, select **Azure** as the provider, enter your Azure tenant ID and subscription, then click **Verify credentials**. - {{< image src="create-azure-credential-profile.png" alt="Create Credential Profile form for an Azure tenant and subscription" width=800px >}} + {{< image src="create-azure-credential-profile.png" alt="Create Credential Profile form for an Azure tenant and subscription" width=800px class="d-block mb-4" >}} -3. Select **Verify credentials**. 4. After verification succeeds, select **Save and continue**. -5. Next, enter a name for the environment and select the GitHub account and the saved credential profile under **Connect GitHub to a cloud**. +5. Enter a name for the Environment and select the GitHub account and the saved credential profile under **Connect GitHub to a cloud**. {{< image src="connect-github-to-cloud.png" alt="Create Environment form connecting a GitHub account to an Azure credential profile" width=800px >}} 6. Under **Deploy identity**, the Microsoft Entra app registration name is already populated. -7. Under **Infrastructure**, select the Azure resource group and AKS cluster. Select an existing Kubernetes namespace or enter a namespace such as `my-app`. -8. Select **Create the Environment**. You can follow the status of the Environment configuration. - - {{< image src="environment-creation-progress.png" alt="Environment creation progress showing deploy identity authorization, configuration, and credential verification" width=800px >}} - - Radius establishes OIDC trust with GitHub Actions, so deployment workflows authenticate with short-lived credentials instead of long-lived secrets stored in the repository. +7. Under **Infrastructure**, select the Azure resource group and AKS cluster. Select an existing Kubernetes namespace or enter a new namespace. +8. Select **Create the Environment**. Radius then configures OIDC authentication between GitHub Actions and Azure. ## Step 4: Plan the deployment -When Environment configuration is complete, the canvas displays **View planned graph** that takes you the **Planned** graph view. +When the Environment configuration is complete, the panel displays the **Planned** graph view. 1. Confirm that the correct Application, branch, and Environment are selected. - {{< image src="planned-application-graph.png" alt="Radius Canvas Planned graph showing application workloads and supporting infrastructure" width=800px >}} - -2. Review the planned Application and supporting infrastructure. -3. Confirm how Radius will deploy each workload and provide its infrastructure dependencies in the selected Environment. + {{< image src="planned-application-graph.png" alt="Radius Canvas Planned graph showing application workloads and supporting infrastructure" width=800px class="d-block mb-4" >}} -Viewing the planned graph does not deploy or change cloud resources. +2. Review the Planned graph to verify that it includes the expected Application resources, connections, and supporting infrastructure for the selected Environment. +3. Select any resource on the graph to see additional details, such as its Radius resource type, its connections to other resources, and links to **View source code** where the resource is defined in your repository or **View app definition** to open its entry in `.radius/app.bicep`. ## Step 5: Deploy your Application -Select **Deploy Application**. +Select **Deploy Application** and the **Deployments** panel opens, where you can monitor deployment progress and open the GitHub Actions workflow run for more details. Radius dispatches a GitHub Actions workflow run that deploys the Application to the selected Environment and provisions the required infrastructure. The workflow is committed to your repository, so you review it before it runs and maintain it alongside your Application code. -{{< image src="deploy-application.png" alt="Deployments view for selecting an Application, Environment, and branch to deploy" width=800px >}} - -The canvas opens the **Deployments** area, where you can monitor deployment progress and open the GitHub Actions run. Radius generates a GitHub Actions workflow that provisions the required infrastructure and deploys the Application to the selected Environment. The workflow is committed to your repository, so you review it before it runs and maintain it alongside your Application code. +{{< image src="deploy-application.png" alt="Deployments view for selecting an Application, Environment, and branch to deploy" width=800px class="d-block mb-4" >}} When the deployment completes, return to the Application graph and open the **Deployed** view to see the Application and its resources running in the Environment. @@ -137,19 +127,15 @@ When the deployment completes, return to the Application graph and open the **De ## Step 6: Access your Application -In the Copilot chat, enter **Access my deployed application**. +In the Copilot chat, type: -Copilot sets up port forwarding and provides a URL to access the deployed Application. +```text +Access my deployed application +``` -## Step 7: Clean up - -1. In the **Deployments** view, select **Delete Deployment**, and then confirm the deletion. -2. Monitor the deletion workflow until it completes. Radius deletes the Application and the infrastructure resources owned by it. -3. If you no longer need the Radius Environment, open the **Environments** view and delete it. - -Deleting the Radius deployment or Environment does not delete the AKS cluster or Azure resource group. +Copilot sets up port forwarding and provides a URL to access the deployed Application. -## Compare Application changes +## Step 7: Compare Application changes Make changes to your Application on a branch, and then open the **Diff** view to compare the updated Application against `main`. @@ -162,10 +148,27 @@ You can generate a Markdown summary of the graph diff and post it as part of a p {{< image src="application-graph-diff.png" alt="Radius Canvas Diff view comparing application resources and connections between two branches" width=800px >}} -## Report bugs and feedback -Before opening an issue, check the [existing Radius AI extensions backlog](https://github.com/orgs/radius-project/projects/23/views/14?layout=table) for a matching report. +## Step 8: Clean up -Submit bugs and feedback with the [feedback or bug report form](https://github.com/radius-project/ai-extensions/issues/new?template=feedback-or-bug-report.yml). You can also open the form from the feedback button in the bottom right corner of the canvas extension. +1. In the **Deployments** view, select **Delete Deployment**, and then confirm the deletion. +2. Monitor the deletion workflow until it completes. Radius deletes the Application and the infrastructure resources. +3. If you no longer need the Radius Environment, open the **Environments** view and delete it. + +Deleting the Radius deployment or Environment does not delete the AKS cluster or Azure resource group. + +## Troubleshooting + +If the Radius panel does not open, ask Copilot to `Fix my Radius extension`. This invokes the Radius repair skill, which copies the required Radius Canvas extension files into place. + +## Report bugs and feedback + +Submit bugs and feedback with the [feedback or bug report form](https://github.com/radius-project/ai-extensions/issues/new?template=feedback-or-bug-report.yml). You can also open the form from the feedback button in the bottom right corner of the panel. {{< image src="feedback.png" alt="Feedback button in the canvas extension" width=250px >}} + +## Next steps + +You have modeled, deployed, and inspected an application with the GitHub Copilot app. Continue with the hands-on labs for deeper, real-world scenarios. + +{{< button text="Next step: Explore the labs" page="getting-started/labs" >}} diff --git a/docs/content/getting-started/try-github-copilot-app/install-radius-plugin.png b/docs/content/getting-started/try-github-copilot-app/install-radius-plugin.png new file mode 100644 index 000000000..8dded2d64 Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/install-radius-plugin.png differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/modeled-application-graph.png b/docs/content/getting-started/try-github-copilot-app/modeled-application-graph.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/modeled-application-graph.png rename to docs/content/getting-started/try-github-copilot-app/modeled-application-graph.png diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/modeled-graph-create-environment.png b/docs/content/getting-started/try-github-copilot-app/modeled-graph-create-environment.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/modeled-graph-create-environment.png rename to docs/content/getting-started/try-github-copilot-app/modeled-graph-create-environment.png diff --git a/docs/content/getting-started/try-github-copilot-app/open-add-marketplace-menu.png b/docs/content/getting-started/try-github-copilot-app/open-add-marketplace-menu.png new file mode 100644 index 000000000..0d13cf5cd Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/open-add-marketplace-menu.png differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/planned-application-graph.png b/docs/content/getting-started/try-github-copilot-app/planned-application-graph.png similarity index 100% rename from docs/content/integrations/github-copilot-app/canvas-extension/planned-application-graph.png rename to docs/content/getting-started/try-github-copilot-app/planned-application-graph.png diff --git a/docs/content/getting-started/try-github-copilot-app/select-github-repository.png b/docs/content/getting-started/try-github-copilot-app/select-github-repository.png new file mode 100644 index 000000000..3ab3b30f8 Binary files /dev/null and b/docs/content/getting-started/try-github-copilot-app/select-github-repository.png differ diff --git a/docs/content/integrations/_index.md b/docs/content/integrations/_index.md index 934877f73..d0127ac30 100644 --- a/docs/content/integrations/_index.md +++ b/docs/content/integrations/_index.md @@ -4,5 +4,4 @@ title: "Integrations" linkTitle: "Integrations" description: "Use Radius with other common tools" weight: 800 -new_badge: true --- diff --git a/docs/content/integrations/github-copilot-app/_index.md b/docs/content/integrations/github-copilot-app/_index.md index 8d21360b5..39cf52953 100644 --- a/docs/content/integrations/github-copilot-app/_index.md +++ b/docs/content/integrations/github-copilot-app/_index.md @@ -1,49 +1,55 @@ --- type: docs -title: "GitHub Copilot App integration" -linkTitle: "GitHub Copilot App" +title: "GitHub Copilot app integration" +linkTitle: "GitHub Copilot app" weight: 1 new_badge: true -description: "Use Radius with the GitHub Copilot App to model, visualize, configure, and deploy applications" +description: "Use Radius with the GitHub Copilot app to model, visualize, and deploy applications" hide_preview_release_banner: true --- -{{% alert title="Public preview" color="info" %}} -Radius Canvas is in public preview and is available only for containerized applications deployed to Azure. +{{% alert title="Preview Release" color="warning" %}} +Radius integration with the GitHub Copilot app is a preview release. It is only compatible with **containerized applications deployed to Azure**. {{% /alert %}} -The Radius integration for the GitHub Copilot App helps you understand, model, and deploy applications directly from your source code repository. Ask Copilot to analyze your repository and Radius creates an application model that captures your workloads, dependencies, connections, and infrastructure requirements. You can review the model visually in Radius Canvas, configure a target Radius Environment, plan and deploy the application all from within the GitHub Copilot App. +The Radius integration with the GitHub Copilot app helps you understand, model, and deploy applications directly from your source code repository. Ask Copilot to analyze your repository and Radius creates a model of your application that captures your workloads, dependencies, and infrastructure requirements. You can review the model visually, configure a target Environment, and plan and deploy the Application, all from within the GitHub Copilot app. -## How Radius works with GitHub Copilot App +## How Radius works with GitHub Copilot app -The Radius integration for the GitHub Copilot App is available as the `radius` plugin. The plugin brings together Radius skills, the Radius Canvas extension, and GitHub Actions workflows. +The Radius integration with the GitHub Copilot app is available as the `radius` plugin, which you [install from within the GitHub Copilot app]({{< ref "/getting-started/try-github-copilot-app" >}}). The plugin brings together Radius skills, the Radius Canvas extension, and GitHub Actions workflows. -**Radius skills** let you work with your application through natural language instructions. They help Copilot analyze the source code repository, create and update Radius Application definitions, and perform Radius operations on your behalf. +**Radius skills** let you work with your application through natural language instructions. They help Copilot analyze the source code repository, create and update application definitions, and perform Radius operations on your behalf. -**Radius Canvas** provides the visual experience. It displays the application graph, shows changes to the application model, previews how the application will be deployed to an Environment, and enables you to deploy applications. +**The Radius Canvas extension** provides the visual experience. It displays the Application graph, shows changes to the application model, previews how the Application will be deployed to an Environment, and enables you to deploy applications. -**GitHub Actions workflows** support Environment creation and credential verification, deploy applications, and delete deployments. The Canvas extension configures the Radius workflow templates for the application and Environment, then adds the required workflow files to the application repository. +**GitHub Actions workflows** run the Radius control plane within GitHub Actions to create Environments, verify credentials, deploy applications, and delete deployments. The Radius Canvas extension configures the Radius workflow templates for the Application and Environment, then adds the required workflow files to the application repository. ## What you can do -With the Radius integration for GitHub Copilot, you can: +With the Radius integration for the GitHub Copilot app, you can: -- **Model an application from an existing repository.** Radius analyzes application code and configuration to generate a Radius Application definition that captures workloads, resources, and connections. -- **Visualize the application.** Use Radius Canvas to visualize workloads, resources, and connections as an application graph along with the source code reference for each component. +- **Model an application from an existing repository.** Radius analyzes application code and configuration to generate an application definition that captures workloads, resources, and connections. +- **Visualize the application.** Use the Radius Canvas extension to visualize workloads, resources, and connections as an Application graph along with the source code reference for each component. - **Understand application changes.** Compare application models across branches to see how changes to the source code affect the application architecture and deployment requirements. - **Configure the Environment.** Create and configure a Radius Environment for the application's deployment target. -- **Preview deployment infrastructure.** See the application and supporting infrastructure Radius plans to deploy before creating cloud resources. -- **Deploy through GitHub Actions.** Generate a workflow that provisions the required infrastructure and deploys the application. -- **View deployed applications.** Follow deployment status and inspect the application running in the selected Environment. +- **Preview deployment infrastructure.** See the Application and supporting infrastructure Radius plans to deploy before creating cloud resources. +- **Deploy through GitHub Actions.** Generate a workflow that provisions the required infrastructure and deploys the Application. +- **View deployed applications.** Follow deployment status and inspect the Application running in the selected Environment. - **Keep deployment artifacts with your code.** Radius artifacts are stored in the repository so the application model and deployment configuration can be versioned and reused across branches and commits. ## From source code to deployed application The Radius Canvas extension takes your application through four stages: -1. **Model:** Copilot analyzes the repository and creates a Radius Application definition in `.radius/app.bicep`. -2. **Plan:** Select a Radius Environment to see how the application's requirements will be fulfilled for that deployment target. -3. **Deploy:** Deploy the application and its infrastructure through GitHub Actions and view the resulting deployment in Canvas. +1. **Model:** Copilot analyzes the repository and creates an application definition in `.radius/app.bicep`. +2. **Plan:** Select an Environment to see how the application's requirements will be fulfilled for that deployment target. +3. **Deploy:** Deploy the Application and its infrastructure through GitHub Actions and view the resulting deployment in the Radius Canvas extension. 4. **Diff:** Compare application models across branches to see how changes to the source code affect the application architecture and deployment requirements. -Because each stage uses the same Radius Application definition, the application model you review is also the model Radius uses to plan and deploy the application. \ No newline at end of file +Because each stage uses the same application definition, the application model you review is also the model Radius uses to plan and deploy the Application. + +## Next steps + +To install the `radius` plugin and walk through modeling, planning, and deploying an application step by step, follow the hands-on guide. + +{{< button text="Get started: Use the GitHub Copilot app" page="/getting-started/try-github-copilot-app" >}} diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/add-radius-marketplace.png b/docs/content/integrations/github-copilot-app/canvas-extension/add-radius-marketplace.png deleted file mode 100644 index ceca9d154..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/add-radius-marketplace.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/choose-cloud-credentials.png b/docs/content/integrations/github-copilot-app/canvas-extension/choose-cloud-credentials.png deleted file mode 100644 index 725b9bd88..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/choose-cloud-credentials.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/create-azure-credential-profile.png b/docs/content/integrations/github-copilot-app/canvas-extension/create-azure-credential-profile.png deleted file mode 100644 index 8577ec410..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/create-azure-credential-profile.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/environment-creation-progress.png b/docs/content/integrations/github-copilot-app/canvas-extension/environment-creation-progress.png deleted file mode 100644 index 71a84e823..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/environment-creation-progress.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/install-radius-plugin.png b/docs/content/integrations/github-copilot-app/canvas-extension/install-radius-plugin.png deleted file mode 100644 index 7385773b3..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/install-radius-plugin.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/modeled-application-graph-create-environment.png b/docs/content/integrations/github-copilot-app/canvas-extension/modeled-application-graph-create-environment.png deleted file mode 100644 index 1a8b42430..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/modeled-application-graph-create-environment.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/open-add-marketplace-menu.png b/docs/content/integrations/github-copilot-app/canvas-extension/open-add-marketplace-menu.png deleted file mode 100644 index f1bfe706c..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/open-add-marketplace-menu.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/prompt-application-graph.png b/docs/content/integrations/github-copilot-app/canvas-extension/prompt-application-graph.png deleted file mode 100644 index 372bfb0e5..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/prompt-application-graph.png and /dev/null differ diff --git a/docs/content/integrations/github-copilot-app/canvas-extension/select-github-repository.png b/docs/content/integrations/github-copilot-app/canvas-extension/select-github-repository.png deleted file mode 100644 index eed466f3d..000000000 Binary files a/docs/content/integrations/github-copilot-app/canvas-extension/select-github-repository.png and /dev/null differ diff --git a/docs/content/management/container-platforms/_index.md b/docs/content/management/container-platforms/_index.md index 5c1ca0be0..7c82579d5 100644 --- a/docs/content/management/container-platforms/_index.md +++ b/docs/content/management/container-platforms/_index.md @@ -28,7 +28,7 @@ The rest of this guide walks through the `azure-aci` Recipe Pack, which deploys The `azure-aci` Recipe Pack provisions `Radius.Compute/containers` on Azure Container Instances, along with the `Radius.Compute/persistentVolumes` and `Radius.Security/secrets` those containers use, backed by Azure Files and Azure Key Vault. For more information on the platform itself, consult the [Azure Container Instances documentation](https://learn.microsoft.com/azure/container-instances/). To see exactly how these resources are provisioned, review the [ACI recipes in `resource-types-contrib`](https://github.com/radius-project/resource-types-contrib/tree/main/Compute/containers/recipes/azure/bicep). -### Prerequisites +### Before you begin The ACI recipes provision Azure resources, so before you use the pack you need: diff --git a/docs/layouts/partials/has-new-badge.html b/docs/layouts/partials/has-new-badge.html new file mode 100644 index 000000000..4198fcade --- /dev/null +++ b/docs/layouts/partials/has-new-badge.html @@ -0,0 +1,16 @@ +{{- /* + Returns true if the given page, or any descendant page, has `new_badge: true`. + Lets a parent section inherit a child's "New" badge without setting new_badge + on the parent itself. Called from the sidebar tree. +*/ -}} +{{- $found := .Params.new_badge | default false -}} +{{- if not $found -}} + {{- range .Pages -}} + {{- if not $found -}} + {{- if partialCached "has-new-badge.html" . .RelPermalink -}} + {{- $found = true -}} + {{- end -}} + {{- end -}} + {{- end -}} +{{- end -}} +{{- return $found -}} diff --git a/docs/layouts/partials/sidebar-tree.html b/docs/layouts/partials/sidebar-tree.html index a329882cb..57973afca 100644 --- a/docs/layouts/partials/sidebar-tree.html +++ b/docs/layouts/partials/sidebar-tree.html @@ -94,6 +94,12 @@ {{ end -}} {{ $withChild := gt (len $pages) 0 -}} + {{/* Show the New badge if this section is new or, for non-root sections, any + descendant is new, so a parent inherits a child's New badge. */ -}} + {{ $showNewBadge := $s.Params.new_badge | default false -}} + {{ if and (not $treeRoot) (not $showNewBadge) -}} + {{ $showNewBadge = partialCached "has-new-badge.html" $s $s.RelPermalink -}} + {{ end -}} {{ $manualLink := cond (isset $s.Params "manuallink") @@ -146,7 +152,7 @@ {{- $s.LinkTitle -}} - {{- if $s.Params.new_badge }} + {{- if $showNewBadge }} New {{- end }} {{- /**/ -}} {{- /**/ -}} @@ -174,7 +180,7 @@ "> {{- $s.LinkTitle -}} - {{- if $s.Params.new_badge }} + {{- if $showNewBadge }} New {{- end }} diff --git a/docs/layouts/shortcodes/image.html b/docs/layouts/shortcodes/image.html index 7300cadf9..e7d2c1ee1 100644 --- a/docs/layouts/shortcodes/image.html +++ b/docs/layouts/shortcodes/image.html @@ -1,9 +1,10 @@ {{ $imagePath := .Get "src" }} {{ $altText := .Get "alt" }} {{ $width := .Get "width" | default "600px" }} +{{ $class := .Get "class" }} {{ $image := .Page.Resources.GetMatch $imagePath }} {{ with $image }} - + {{ . }} {{ end }}