Skip to content

[Nitro CLI] Consume composition settings stored in Nitro#9931

Open
tobias-tengler wants to merge 5 commits into
mainfrom
tte/consume-upstream-composition-settings
Open

[Nitro CLI] Consume composition settings stored in Nitro#9931
tobias-tengler wants to merge 5 commits into
mainfrom
tte/consume-upstream-composition-settings

Conversation

@tobias-tengler

Copy link
Copy Markdown
Member

No description provided.

@tobias-tengler tobias-tengler force-pushed the tte/consume-upstream-composition-settings branch from 372548e to 9d689de Compare June 18, 2026 16:38
@tobias-tengler tobias-tengler marked this pull request as ready for review June 18, 2026 16:39
Copilot AI review requested due to automatic review settings June 18, 2026 16:39

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

This PR extends the Nitro CLI/client to read Fusion composition settings stored on a stage in Nitro and apply them during fusion publish, ensuring stage-level composition configuration can override (or fall back to) archive-embedded settings.

Changes:

  • Added GraphQL schema + persisted operation to fetch Stage.compositionSettings and exposed it via IFusionConfigurationClient.GetStageCompositionSettingsAsync.
  • Updated Fusion publish flow to download stage composition settings and merge them into the effective composition settings used for composition.
  • Added/updated CLI tests to validate merging semantics (null/partial stage settings) and error handling when downloading stage settings fails.

Reviewed changes

Copilot reviewed 9 out of 11 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/Nitro/Common/src/ChilliCream.Nitro.Client/schema.graphql Adds schema fields/types for stage composition settings and related operations.
src/Nitro/Common/src/ChilliCream.Nitro.Client/persisted/operations.json Registers a new persisted query for fetching stage composition settings.
src/Nitro/Common/src/ChilliCream.Nitro.Client/FusionConfiguration/StageCompositionSettings.cs Introduces a client-side model for stage composition settings.
src/Nitro/Common/src/ChilliCream.Nitro.Client/FusionConfiguration/Operations/FusionStageCompositionSettingsQuery.graphql Adds the operation to fetch compositionSettings for a stage.
src/Nitro/Common/src/ChilliCream.Nitro.Client/FusionConfiguration/IFusionConfigurationClient.cs Adds the new API surface to retrieve stage composition settings.
src/Nitro/Common/src/ChilliCream.Nitro.Client/FusionConfiguration/FusionConfigurationClient.cs Implements the new stage composition settings fetch and mapping.
src/Nitro/CommandLine/src/CommandLine/Messages.cs Adds a CLI error message for failures when downloading stage composition settings.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionPublishHelpers.cs Fetches/merges stage composition settings into the compose pipeline.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionCommandTestBase.cs Adds test helpers for stage settings + archives with embedded composition settings.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionPublishCommandTests.cs Adds coverage for null/partial stage settings merge behavior and failure handling.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Nitro/CommandLine/src/CommandLine/Messages.cs
@tobias-tengler tobias-tengler force-pushed the tte/consume-upstream-composition-settings branch from 9d689de to f467045 Compare June 18, 2026 19:03
@github-code-quality

github-code-quality Bot commented Jun 18, 2026

Copy link
Copy Markdown

Code Coverage Overview

Languages: C#

C# / code-coverage/dotnet

The overall coverage in the branch remains at 49%, unchanged from the branch.

Show a code coverage summary of the most impacted files.
File ff220e6 2defc6f +/-
/home/runner/wo...onMiddleware.cs 94% 88% -6%
/home/runner/wo...PromiseCache.cs 81% 78% -3%
/home/runner/wo...SocketClient.cs 80% 78% -2%
/home/runner/wo...lient.Client.cs 1% 1% 0%
/home/runner/wo...DefaultTopic.cs 88% 90% +2%
/home/runner/wo...geDispatcher.cs 75% 77% +2%
/home/runner/wo...entsListener.cs 62% 66% +4%
/home/runner/wo...gsExtensions.cs 65% 72% +7%
/home/runner/wo...PendingMerge.cs 74% 81% +7%
/home/runner/wo...tionSettings.cs 0% 83% +83%

Updated June 19, 2026 07:37 UTC
Code Coverage is in Public Preview. Learn more and provide us with your feedback.

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.

2 participants