Skip to content

Commit

Permalink
Add Bitbucket Cloud provider (#789)
Browse files Browse the repository at this point in the history
  • Loading branch information
LoremFooBar committed Jul 30, 2022
1 parent 032cbc6 commit 0568520
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/Cake.GitVersioning/GitVersioningCloudProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,10 @@ public enum GitVersioningCloudProvider
/// Use the Jetbrains Space cloud build provider.
/// </summary>
SpaceAutomation,

/// <summary>
/// Use the Bitbucket cloud build provider.
/// </summary>
BitbucketCloud,
}
}
1 change: 1 addition & 0 deletions src/NerdBank.GitVersioning/CloudBuild.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ public static class CloudBuild
new GitLab(),
new Travis(),
new SpaceAutomation(),
new BitbucketCloud(),
};

/// <summary>
Expand Down
42 changes: 42 additions & 0 deletions src/NerdBank.GitVersioning/CloudBuildServices/BitbucketCloud.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
// Copyright (c) .NET Foundation and Contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.

namespace Nerdbank.GitVersioning.CloudBuildServices;

/// <summary>
/// Cloud build handling for Bitbucket Cloud.
/// </summary>
/// <remarks>
/// The Bitbucket-specific properties referenced here are <see href="https://support.atlassian.com/bitbucket-cloud/docs/variables-and-secrets/">documented here</see>.
/// </remarks>
public class BitbucketCloud : ICloudBuild
{
/// <inheritdoc />
public bool IsApplicable => !string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("BITBUCKET_PIPELINE_UUID")) &&
!string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("BITBUCKET_STEP_UUID")) &&
!string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("BITBUCKET_STEP_TRIGGERER_UUID"));

/// <inheritdoc />
public bool IsPullRequest => !string.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("BITBUCKET_PR_ID"));

/// <inheritdoc />
public string BuildingBranch => Environment.GetEnvironmentVariable("BITBUCKET_BRANCH");

/// <inheritdoc />
public string BuildingTag => Environment.GetEnvironmentVariable("BITBUCKET_TAG");

/// <inheritdoc />
public string GitCommitId => Environment.GetEnvironmentVariable("BITBUCKET_COMMIT");

/// <inheritdoc />
public IReadOnlyDictionary<string, string> SetCloudBuildNumber(string buildNumber, TextWriter stdout, TextWriter stderr)
{
return new Dictionary<string, string>();
}

/// <inheritdoc />
public IReadOnlyDictionary<string, string> SetCloudBuildVariable(string name, string value, TextWriter stdout, TextWriter stderr)
{
return new Dictionary<string, string>();
}
}

0 comments on commit 0568520

Please sign in to comment.