Skip to content

Commit fa15c84

Browse files
committed
Fixed issue in PublishCommand with non-Metalama products.
1 parent 9902cb1 commit fa15c84

File tree

13 files changed

+53
-22
lines changed

13 files changed

+53
-22
lines changed

src/PostSharp.Engineering.BuildTools/Build/Helpers/GitIntegrationHelper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ internal static class GitIntegrationHelper
1818
{
1919
public static bool TryAddTagToLastCommit( BuildContext context, PublishSettings settings )
2020
{
21-
if ( !AutoUpdatedVersionsFile.TryRead( context, out var releasedVersion, out _ ) )
21+
if ( !VersionComponents.TryCompute( context, settings, out var version ) )
2222
{
2323
return false;
2424
}
2525

26-
var versionTag = $"release/{releasedVersion}";
26+
var versionTag = $"release/{version.PackageVersion}";
2727

2828
ToolInvocationHelper.InvokeTool(
2929
context.Console,

src/PostSharp.Engineering.BuildTools/Build/Model/VersionComponents.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,28 @@ public static bool TryCompute(
123123
return TryCompute( context, configuration, mainVersionFile, inheritedMainVersion, versionSpec, settings.UserName, out version );
124124
}
125125

126+
public static bool TryCompute(
127+
BuildContext context,
128+
BuildSettings settings,
129+
[NotNullWhen( true )] out VersionComponents? version )
130+
{
131+
if ( !MainVersionFile.TryRead( context, out var mainVersionFile ) )
132+
{
133+
version = null;
134+
135+
return false;
136+
}
137+
138+
return TryCompute(
139+
context,
140+
settings.BuildConfiguration,
141+
mainVersionFile,
142+
null,
143+
settings.GetVersionSpec( settings.BuildConfiguration ),
144+
settings.UserName,
145+
out version );
146+
}
147+
126148
public static bool TryCompute(
127149
BuildContext context,
128150
BuildConfiguration configuration,

src/PostSharp.Engineering.BuildTools/Build/Publishing/PublishCommand.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,9 @@ private static bool Execute( BuildContext context, PublishSettings settings )
129129
return false;
130130
}
131131

132-
// For consolidated deployments, this is part of the post-deployment step.
133-
if ( !product.ProductFamily.HasConsolidatedBuild && !settings.IsStandalone )
132+
// Tag the commit in the release branch.
133+
// For product families that have a consolidated product, this is not done, because this is part of the post-deployment step.
134+
if ( product is { DependencyDefinition.IsVersioned: true, ProductFamily.HasConsolidatedProduct: false } && !settings.IsStandalone )
134135
{
135136
if ( !GitHelper.TryConfigureCredentials( context ) )
136137
{

src/PostSharp.Engineering.BuildTools/ContinuousIntegration/TeamCity/Generation/TeamCitySettingsFile.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ internal static bool TryWrite( BuildContext context, CommonCommandSettings setti
105105
}
106106

107107
// Only versioned products that don't have consolidated version bump can be bumped individually.
108-
if ( !product.ProductFamily.HasConsolidatedBuild && product.DependencyDefinition.IsVersioned )
108+
if ( !product.ProductFamily.HasConsolidatedProduct && product.DependencyDefinition.IsVersioned )
109109
{
110110
var dependencies = product.ParametrizedDependencies;
111111

@@ -212,7 +212,10 @@ private static TeamCityBuildConfiguration CreateDownstreamMergeConfiguration( Pr
212212
product.ParametrizedDependencies
213213
.Where( d => d.Definition.GenerateSnapshotDependency && d.Definition.ProductFamily.DownstreamProductFamily != null )
214214
.Select( d => d.Definition )
215-
.Select( d => new TeamCitySnapshotDependency( d.CiConfiguration.DownstreamMergeBuildType, true, FailureAction: FailureAction.AddProblem ) ) );
215+
.Select( d => new TeamCitySnapshotDependency(
216+
d.CiConfiguration.DownstreamMergeBuildType,
217+
true,
218+
FailureAction: FailureAction.AddProblem ) ) );
216219

217220
var downstreamMergeConfiguration = new TeamCityBuildConfiguration(
218221
"DownstreamMerge",

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/MetalamaDependencies.V2025_0.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ public MetalamaDependencyDefinition(
5454

5555
public static ProductFamily Family { get; } = new( _projectName, "2025.0", DevelopmentDependencies.Family, PostSharpDependencies.V2025_0.Family )
5656
{
57+
ConsolidatedProjectName = "Metalama.Consolidated"
58+
5759
// Downstream merge to 2025.1 is disabled because of repo merge.
5860
// UpstreamProductFamily = V2024_2.Family,
5961
// DownstreamProductFamily = V2025_1.Family
@@ -67,7 +69,7 @@ public MetalamaDependencyDefinition(
6769

6870
public static DependencyDefinition Consolidated { get; } =
6971
new MetalamaDependencyDefinition(
70-
ProductFamily.ConsolidatedProjectName,
72+
"Metalama.Consolidated",
7173
VcsProvider.GitHub,
7274
MetalamaGitHubOrganization.Metalama,
7375
false,

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/MetalamaDependencies.V2025_1.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public MetalamaDependencyDefinition(
5656
public static ProductFamily Family { get; } = new( _projectName, "2025.1", DevelopmentDependencies.Family, PostSharpDependencies.V2025_1.Family )
5757
{
5858
// UpstreamProductFamily = V2025_0.Family,
59-
DownstreamProductFamily = V2025_2.Family
59+
DownstreamProductFamily = V2025_2.Family, ConsolidatedProjectName = "Metalama.Consolidated"
6060
};
6161

6262
// The release build is intentionally used for the debug configuration because we want dependencies to consume the release
@@ -213,7 +213,7 @@ public MetalamaDependencyDefinition(
213213

214214
public static DependencyDefinition Consolidated { get; } =
215215
new MetalamaDependencyDefinition(
216-
ProductFamily.ConsolidatedProjectName,
216+
"Metalama.Consolidated",
217217
VcsProvider.GitHub,
218218
MetalamaGitHubOrganization.Metalama,
219219
false,

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/MetalamaDependencies.V2025_2.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public MetalamaDependencyDefinition(
5555

5656
public static ProductFamily Family { get; } = new( _projectName, "2025.2", DevelopmentDependencies.Family, PostSharpDependencies.V2025_1.Family )
5757
{
58-
UpstreamProductFamily = V2025_1.Family, DownstreamProductFamily = V2026_0.Family
58+
UpstreamProductFamily = V2025_1.Family, DownstreamProductFamily = V2026_0.Family, ConsolidatedProjectName = "Metalama.Consolidated"
5959
};
6060

6161
// The release build is intentionally used for the debug configuration because we want dependencies to consume the release
@@ -211,7 +211,7 @@ public MetalamaDependencyDefinition(
211211

212212
public static DependencyDefinition Consolidated { get; } =
213213
new MetalamaDependencyDefinition(
214-
ProductFamily.ConsolidatedProjectName,
214+
"Metalama.Consolidated",
215215
VcsProvider.GitHub,
216216
MetalamaGitHubOrganization.Metalama,
217217
false,

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/MetalamaDependencies.V2026_0.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public MetalamaDependencyDefinition(
5555

5656
public static ProductFamily Family { get; } = new( _projectName, "2026.0", DevelopmentDependencies.Family, PostSharpDependencies.V2025_1.Family )
5757
{
58-
UpstreamProductFamily = V2025_2.Family
58+
UpstreamProductFamily = V2025_2.Family, ConsolidatedProjectName = "Metalama.Consolidated"
5959

6060
// DownstreamProductFamily = V2026_1.Family
6161
};
@@ -213,7 +213,7 @@ public MetalamaDependencyDefinition(
213213

214214
public static DependencyDefinition Consolidated { get; } =
215215
new MetalamaDependencyDefinition(
216-
ProductFamily.ConsolidatedProjectName,
216+
"Metalama.Consolidated",
217217
VcsProvider.GitHub,
218218
MetalamaGitHubOrganization.Metalama,
219219
false,

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/TestDependencies.V2023_1.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,13 @@ public TestDependencyDefinition(
3636
}
3737

3838
public static ProductFamily Family { get; } =
39-
new( _projectName, "2023.1", DevelopmentDependencies.Family ) { DownstreamProductFamily = V2023_2.Family };
39+
new( _projectName, "2023.1", DevelopmentDependencies.Family )
40+
{
41+
DownstreamProductFamily = V2023_2.Family, ConsolidatedProjectName = "Consolidated"
42+
};
4043

4144
public static DependencyDefinition Consolidated { get; } = new TestDependencyDefinition(
42-
ProductFamily.ConsolidatedProjectName,
45+
"Consolidated",
4346
VcsProvider.AzureDevOps,
4447
false,
4548
customRepositoryName: "PostSharp.Engineering.Test.Consolidated" );

src/PostSharp.Engineering.BuildTools/Dependencies/Definitions/TestDependencies.V2023_2.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,11 @@ public TestDependencyDefinition(
3737

3838
public static ProductFamily Family { get; } = new( _projectName, "2023.2", DevelopmentDependencies.Family )
3939
{
40-
UpstreamProductFamily = V2023_1.Family, DownstreamProductFamily = V2023_3.Family
40+
UpstreamProductFamily = V2023_1.Family, DownstreamProductFamily = V2023_3.Family, ConsolidatedProjectName = "Consolidated"
4141
};
4242

4343
public static DependencyDefinition Consolidated { get; } = new TestDependencyDefinition(
44-
ProductFamily.ConsolidatedProjectName,
44+
"Consolidated",
4545
VcsProvider.AzureDevOps,
4646
false,
4747
customRepositoryName: "PostSharp.Engineering.Test.Consolidated" );

0 commit comments

Comments
 (0)