private static void SetupGitlabEnvironment() { IsCI = true; Provider = "gitlab"; Repository = EnvironmentHelpers.GetEnvironmentVariable("CI_REPOSITORY_URL"); Commit = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_SHA"); Branch = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_BRANCH"); Tag = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_TAG"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_REF_NAME"); } SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("CI_PROJECT_DIR"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("CI_PROJECT_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_ID"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("CI_PROJECT_PATH"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_IID"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_URL"); JobUrl = EnvironmentHelpers.GetEnvironmentVariable("CI_JOB_URL"); JobName = EnvironmentHelpers.GetEnvironmentVariable("CI_JOB_NAME"); StageName = EnvironmentHelpers.GetEnvironmentVariable("CI_JOB_STAGE"); // Clean pipeline url PipelineUrl = PipelineUrl?.Replace("/-/pipelines/", "/pipelines/"); }
private static void StartProcesses() { if (AzureAppServices.Metadata.DebugModeEnabled) { const string ddLogLevelKey = "DD_LOG_LEVEL"; if (EnvironmentHelpers.GetEnvironmentVariable(ddLogLevelKey) == null) { // This ensures that a single setting from applicationConfig can enable debug logs for every aspect of the extension EnvironmentHelpers.SetEnvironmentVariable(ddLogLevelKey, "debug"); } } foreach (var metadata in Processes) { if (!string.IsNullOrWhiteSpace(metadata.ProcessPath)) { if (!metadata.IsBeingManaged) { metadata.KeepAliveTask = StartProcessWithKeepAlive(metadata); } } else { Log.Debug("There is no path configured for {ProcessName}.", metadata.Name); } } }
private static void SetupAppveyorEnvironment() { IsCI = true; Provider = "appveyor"; string repoProvider = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_PROVIDER"); if (repoProvider == "github") { Repository = string.Format("https://github.com/{0}.git", EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_NAME")); } else { Repository = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_NAME"); } Commit = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_FOLDER"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_FOLDER"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_ID"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_NAME"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_NUMBER"); PipelineUrl = string.Format("https://ci.appveyor.com/project/{0}/builds/{1}", EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_NAME"), EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_ID")); JobUrl = PipelineUrl; Branch = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH"); Tag = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_TAG_NAME"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_BRANCH"); } }
public void Refresh() { var rawValue = EnvironmentHelpers.GetEnvironmentVariable(EnvironmentVariableName); var value = JsonConvert.DeserializeObject <PerformanceCountersValue>(rawValue); _statsd.Gauge(MetricsNames.Gen0HeapSize, value.Gen0Size); _statsd.Gauge(MetricsNames.Gen1HeapSize, value.Gen1Size); _statsd.Gauge(MetricsNames.Gen2HeapSize, value.Gen2Size); _statsd.Gauge(MetricsNames.LohSize, value.LohSize); var gen0 = GC.CollectionCount(0); var gen1 = GC.CollectionCount(1); var gen2 = GC.CollectionCount(2); if (_previousGen0Count != null) { _statsd.Increment(MetricsNames.Gen0CollectionsCount, gen0 - _previousGen0Count.Value); } if (_previousGen1Count != null) { _statsd.Increment(MetricsNames.Gen1CollectionsCount, gen1 - _previousGen1Count.Value); } if (_previousGen2Count != null) { _statsd.Increment(MetricsNames.Gen2CollectionsCount, gen2 - _previousGen2Count.Value); } _previousGen0Count = gen0; _previousGen1Count = gen1; _previousGen2Count = gen2; Log.Debug("Sent the following metrics: {metrics}", GarbageCollectionMetrics); }
private static void SetupGithubActionsEnvironment() { IsCI = true; Provider = "github"; Repository = string.Format("https://github.com/{0}.git", EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REPOSITORY")); Commit = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_SHA"); string headRef = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_HEAD_REF"); string ghRef = !string.IsNullOrEmpty(headRef) ? headRef : EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REF"); if (ghRef.Contains("tags")) { Tag = ghRef; } else { Branch = ghRef; } SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKSPACE"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKSPACE"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_NUMBER"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKFLOW"); PipelineUrl = $"https://github.com/{EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REPOSITORY")}/commit/{Commit}/checks"; JobUrl = PipelineUrl; }
private static void SetupTravisEnvironment() { IsCI = true; Provider = "travisci"; string prSlug = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_PULL_REQUEST_SLUG"); string repoSlug = !string.IsNullOrEmpty(prSlug) ? prSlug : EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_REPO_SLUG"); Repository = string.Format("https://github.com/{0}.git", repoSlug); Commit = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_COMMIT"); Tag = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_TAG"); if (string.IsNullOrEmpty(Tag)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_PULL_REQUEST_BRANCH"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BRANCH"); } } SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_DIR"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_NUMBER"); PipelineName = repoSlug; PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_WEB_URL"); JobUrl = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_JOB_WEB_URL"); }
public ProfilerStatus() { _isProfilingEnabled = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.ProfilingEnabled)?.ToBoolean() ?? false; Log.Information("Continuous Profiler is {IsEnabled}.", _isProfilingEnabled ? "enabled" : "disabled"); _lockObj = new(); _isInitialized = false; }
static MethodBuilder() { ForceMdTokenLookup = bool.TryParse(EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.Debug.ForceMdTokenLookup), out bool result) ? result : false; ForceFallbackLookup = bool.TryParse(EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.Debug.ForceFallbackLookup), out result) ? result && !ForceMdTokenLookup : false; }
private static string GetLogDirectory() { var nativeLogFile = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.ProfilerLogPath); string logDirectory = null; if (!string.IsNullOrEmpty(nativeLogFile)) { logDirectory = Path.GetDirectoryName(nativeLogFile); } // This entire block may throw a SecurityException if not granted the System.Security.Permissions.FileIOPermission // because of the following API calls // - Directory.Exists // - Environment.GetFolderPath // - Path.GetTempPath if (logDirectory == null) { if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { var windowsDefaultDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), @"Datadog .NET Tracer", "logs"); if (Directory.Exists(windowsDefaultDirectory)) { logDirectory = windowsDefaultDirectory; } } else { // Linux if (Directory.Exists(NixDefaultDirectory)) { logDirectory = NixDefaultDirectory; } else { try { var di = Directory.CreateDirectory(NixDefaultDirectory); logDirectory = NixDefaultDirectory; } catch { // Unable to create the directory meaning that the user // will have to create it on their own. } } } } if (logDirectory == null) { // Last effort at writing logs logDirectory = Path.GetTempPath(); } return(logDirectory); }
private static string GetLogDirectory() { string logDirectory = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.LogDirectory); if (logDirectory == null) { #pragma warning disable 618 // ProfilerLogPath is deprecated but still supported var nativeLogFile = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.ProfilerLogPath); #pragma warning restore 618 if (!string.IsNullOrEmpty(nativeLogFile)) { logDirectory = Path.GetDirectoryName(nativeLogFile); } } // This entire block may throw a SecurityException if not granted the System.Security.Permissions.FileIOPermission // because of the following API calls // - Directory.Exists // - Environment.GetFolderPath // - Path.GetTempPath if (logDirectory == null) { #if NETFRAMEWORK logDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), @"Datadog .NET Tracer", "logs"); #else if (RuntimeInformation.IsOSPlatform(System.Runtime.InteropServices.OSPlatform.Windows)) { logDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), @"Datadog .NET Tracer", "logs"); } else { // Linux logDirectory = "/var/log/datadog/dotnet"; } #endif } if (!Directory.Exists(logDirectory)) { try { Directory.CreateDirectory(logDirectory); } catch { // Unable to create the directory meaning that the user // will have to create it on their own. // Last effort at writing logs logDirectory = Path.GetTempPath(); } } return(logDirectory); }
/// <summary> /// Invoked by the loader /// </summary> public static void Initialize() { try { if (DomainMetadata.Instance.ShouldAvoidAppDomain()) { Log.Information("Skipping process manager initialization for AppDomain: {AppDomain}", DomainMetadata.Instance.AppDomainName); return; } var automaticTraceEnabled = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.TraceEnabled, string.Empty)?.ToBoolean() ?? true; if (AzureAppServices.Metadata.CustomTracingEnabled || automaticTraceEnabled) { if (string.IsNullOrWhiteSpace(TraceAgentMetadata.ProcessPath)) { Log.Warning("Requested to start the Trace Agent but the process path hasn't been supplied in environment."); } else if (!Directory.Exists(TraceAgentMetadata.DirectoryPath)) { Log.Warning("Directory for trace agent does not exist: {Directory}. The process won't be started.", TraceAgentMetadata.DirectoryPath); } else { Processes.Add(TraceAgentMetadata); } } if (AzureAppServices.Metadata.NeedsDogStatsD || automaticTraceEnabled) { if (string.IsNullOrWhiteSpace(DogStatsDMetadata.ProcessPath)) { Log.Warning("Requested to start dogstatsd but the process path hasn't been supplied in environment."); } else if (!Directory.Exists(DogStatsDMetadata.DirectoryPath)) { Log.Warning("Directory for dogstatsd does not exist: {Directory}. The process won't be started.", DogStatsDMetadata.DirectoryPath); } else { Processes.Add(DogStatsDMetadata); } } if (Processes.Count > 0) { Log.Debug("Starting {Count} child processes from process {ProcessName}, AppDomain {AppDomain}.", Processes.Count, DomainMetadata.Instance.ProcessName, DomainMetadata.Instance.AppDomainName); StartProcesses(); } } catch (Exception ex) { Log.Error(ex, "Error when attempting to initialize process manager."); } }
private static void SetupBitbucketEnvironment() { IsCI = true; Provider = "bitbucketpipelines"; Repository = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_GIT_SSH_ORIGIN"); Commit = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_CLONE_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_PIPELINE_UUID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_BUILD_NUMBER"); PipelineUrl = null; }
public HomeController(ILogger <HomeController> logger) { _logger = logger; _hashId = new Hashids(); UrlPrefix = EnvironmentHelpers.GetEnvironmentVariable("URL_PREFIX"); AdminPassword = EnvironmentHelpers.GetEnvironmentVariable("ADMIN_PASSWORD"); if (!Directory.Exists("persistence")) { Directory.CreateDirectory("persistence"); } }
public void EnvironmentHelpersTests_GetEnvironmentVariable(string?process, string?user, string?machine, string expected) { // Arrange ConfigureEnvironmentVariableGetter(process, user, machine); // Act var actual = EnvironmentHelpers.GetEnvironmentVariable("jlhdfprtljedhfrptaejldhfprt"); // Assert Assert.Equal(expected, actual); }
private static string GetEnvironmentVariableIfIsNotEmpty(string key, string defaultValue) { string value = EnvironmentHelpers.GetEnvironmentVariable(key, defaultValue); if (string.IsNullOrEmpty(value)) { return(defaultValue); } return(value); }
private static void SetupBuildkiteEnvironment() { IsCI = true; Provider = "buildkite"; Repository = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_REPO"); Commit = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_CHECKOUT_PATH"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_NUMBER"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_URL"); Branch = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BRANCH"); }
private static void SetupGithubActionsEnvironment() { IsCI = true; Provider = "github"; Repository = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REPOSITORY"); Commit = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_SHA"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKSPACE"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_NUMBER"); PipelineUrl = $"{Repository}/commit/{Commit}/checks"; Branch = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REF"); }
private static void SetupCircleCiEnvironment() { IsCI = true; Provider = "circleci"; Repository = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_REPOSITORY_URL"); Commit = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_SHA1"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_WORKING_DIRECTORY"); PipelineId = null; PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_BUILD_NUM"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_BUILD_URL"); Branch = EnvironmentHelpers.GetEnvironmentVariable("CIRCLE_BRANCH"); }
private static int GetRateLimit() { string rawRateLimit = EnvironmentHelpers.GetEnvironmentVariable(ConfigurationKeys.LogRateLimit); if (!string.IsNullOrEmpty(rawRateLimit) && int.TryParse(rawRateLimit, out var rate) && (rate >= 0)) { return(rate); } return(DefaultLogMessageRateLimit); }
internal static NativeCallTargetDefinition[] GetServerlessDefinitions() { try { LambdaHandler handler = new LambdaHandler(EnvironmentHelpers.GetEnvironmentVariable(HandlerEnvName)); var assemblyName = typeof(InstrumentationDefinitions).Assembly.FullName; var paramCount = handler.ParamTypeArray.Length; var integrationType = GetIntegrationType(handler.ParamTypeArray[0], paramCount); return(new NativeCallTargetDefinition[] { new(handler.GetAssembly(), handler.GetFullType(), handler.GetMethodName(), handler.ParamTypeArray, 0, 0, 0, 65535, 65535, 65535, assemblyName, integrationType) }); }
private static void SetupBuildkiteEnvironment() { IsCI = true; Provider = "buildkite"; Repository = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_REPO"); Commit = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_COMMIT"); Branch = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BRANCH"); Tag = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_TAG"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_CHECKOUT_PATH"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_CHECKOUT_PATH"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_NUMBER"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_PIPELINE_SLUG"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_URL"); JobUrl = string.Format("{0}#{1}", EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_BUILD_URL"), EnvironmentHelpers.GetEnvironmentVariable("BUILDKITE_JOB_ID")); }
private static void SetupAppveyorEnvironment() { IsCI = true; Provider = "appveyor"; Repository = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_NAME"); Commit = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_FOLDER"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_NUMBER"); PipelineUrl = string.Format("https://ci.appveyor.com/project/{0}/builds/{1}", EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_PROJECT_SLUG"), EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_BUILD_ID")); Branch = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("APPVEYOR_REPO_BRANCH"); } }
private static DateTimeOffset?GetDateTimeOffsetEnvironmentVariableIfIsNotEmpty(string key, DateTimeOffset?defaultValue) { string value = EnvironmentHelpers.GetEnvironmentVariable(key); if (string.IsNullOrEmpty(value)) { return(defaultValue); } if (DateTimeOffset.TryParseExact(value, "yyyy-MM-ddTHH:mm:sszzz", CultureInfo.InvariantCulture, DateTimeStyles.None, out var valueDateTimeOffset)) { return(valueDateTimeOffset); } return(defaultValue); }
private void SetupGithubActionsEnvironment() { IsCI = true; Provider = "github"; var serverUrl = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_SERVER_URL"); if (string.IsNullOrWhiteSpace(serverUrl)) { serverUrl = "https://github.com"; } var rawRepository = $"{serverUrl}/{EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REPOSITORY")}"; Repository = $"{rawRepository}.git"; Commit = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_SHA"); string headRef = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_HEAD_REF"); string ghRef = !string.IsNullOrEmpty(headRef) ? headRef : EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REF"); if (ghRef?.Contains("tags") == true) { Tag = ghRef; } else { Branch = ghRef; } SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKSPACE"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKSPACE"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_NUMBER"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_WORKFLOW"); var attempts = EnvironmentHelpers.GetEnvironmentVariable("GITHUB_RUN_ATTEMPT"); if (string.IsNullOrWhiteSpace(attempts)) { PipelineUrl = $"{rawRepository}/actions/runs/{PipelineId}"; } else { PipelineUrl = $"{rawRepository}/actions/runs/{PipelineId}/attempts/{attempts}"; } JobUrl = $"{serverUrl}/{EnvironmentHelpers.GetEnvironmentVariable("GITHUB_REPOSITORY")}/commit/{Commit}/checks"; }
private void SetupAzurePipelinesEnvironment() { IsCI = true; Provider = "azurepipelines"; SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCESDIRECTORY"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCESDIRECTORY"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BUILD_BUILDID"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("BUILD_DEFINITIONNAME"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BUILD_BUILDID"); PipelineUrl = string.Format( "{0}{1}/_build/results?buildId={2}", EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_TEAMFOUNDATIONSERVERURI"), EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_TEAMPROJECTID"), EnvironmentHelpers.GetEnvironmentVariable("BUILD_BUILDID")); StageName = EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_STAGEDISPLAYNAME"); JobName = EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_JOBDISPLAYNAME"); JobUrl = string.Format( "{0}{1}/_build/results?buildId={2}&view=logs&j={3}&t={4}", EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_TEAMFOUNDATIONSERVERURI"), EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_TEAMPROJECTID"), EnvironmentHelpers.GetEnvironmentVariable("BUILD_BUILDID"), EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_JOBID"), EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_TASKINSTANCEID")); string prRepo = EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_PULLREQUEST_SOURCEREPOSITORYURI"); Repository = !string.IsNullOrWhiteSpace(prRepo) ? prRepo : EnvironmentHelpers.GetEnvironmentVariable("BUILD_REPOSITORY_URI"); string prCommit = EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_PULLREQUEST_SOURCECOMMITID"); Commit = !string.IsNullOrWhiteSpace(prCommit) ? prCommit : EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCEVERSION"); string prBranch = EnvironmentHelpers.GetEnvironmentVariable("SYSTEM_PULLREQUEST_SOURCEBRANCH"); Branch = !string.IsNullOrWhiteSpace(prBranch) ? prBranch : EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCEBRANCH"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCEBRANCHNAME"); } Message = EnvironmentHelpers.GetEnvironmentVariable("BUILD_SOURCEVERSIONMESSAGE"); AuthorName = EnvironmentHelpers.GetEnvironmentVariable("BUILD_REQUESTEDFORID"); AuthorEmail = EnvironmentHelpers.GetEnvironmentVariable("BUILD_REQUESTEDFOREMAIL"); }
private static void SetupTravisEnvironment() { IsCI = true; Provider = "travis"; Repository = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_REPO_SLUG"); Commit = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_NUMBER"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BUILD_WEB_URL"); JobUrl = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_JOB_WEB_URL"); Branch = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_PULL_REQUEST_BRANCH"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("TRAVIS_BRANCH"); } }
/// <summary> /// Construct an instance of the membership storage system /// </summary> /// <param name="iTableStorageRootURLEnvironVarName">Root Azure table storage URL</param> /// <param name="iConnectionStringEnvironVarName">Environment variable name of the connection string to use</param> /// <param name="iFunctionName">The name of the function</param> public Storage(String iTableStorageRootURLEnvironVarName, String iConnectionStringEnvironVarName, String iFunctionName) { cStrTableStorageRootURL = EnvironmentHelpers.GetEnvironmentVariable(iTableStorageRootURLEnvironVarName); if (cStrTableStorageRootURL.EndsWith("/")) { cStrTableStorageRootURL.TrimEnd('/'); } cStrConnectionString = EnvironmentHelpers.GetEnvironmentVariable(iConnectionStringEnvironVarName); cStrFunctionName = iFunctionName; cCSAAccount = CloudStorageAccount.Parse(cStrConnectionString); cCTeUsers = new CloudTable(UsersTableURI, cCSAAccount.Credentials); cCTeProfiles = new CloudTable(ProfilesTableURI, cCSAAccount.Credentials); cCTeFunctionHits = new CloudTable(FunctionHitsTableURI, cCSAAccount.Credentials); cCTeFriendsLists = new CloudTable(FriendsListsTableURI, cCSAAccount.Credentials); }
private static void SetupJenkinsEnvironment() { IsCI = true; Provider = "jenkins"; Repository = EnvironmentHelpers.GetEnvironmentVariable("GIT_URL"); Commit = EnvironmentHelpers.GetEnvironmentVariable("GIT_COMMIT"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("WORKSPACE"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BUILD_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BUILD_NUMBER"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("BUILD_URL"); JobUrl = EnvironmentHelpers.GetEnvironmentVariable("JOB_URL"); Branch = EnvironmentHelpers.GetEnvironmentVariable("GIT_BRANCH"); if (Branch?.IndexOf("origin/", StringComparison.Ordinal) == 0) { Branch = Branch.Substring(7); } }
private static void SetupGitlabEnvironment() { IsCI = true; Provider = "gitlab"; Repository = EnvironmentHelpers.GetEnvironmentVariable("CI_REPOSITORY_URL"); Commit = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_SHA"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("CI_PROJECT_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_ID"); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_IID"); PipelineUrl = EnvironmentHelpers.GetEnvironmentVariable("CI_PIPELINE_URL"); JobUrl = EnvironmentHelpers.GetEnvironmentVariable("CI_JOB_URL"); Branch = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_BRANCH"); if (string.IsNullOrWhiteSpace(Branch)) { Branch = EnvironmentHelpers.GetEnvironmentVariable("CI_COMMIT_REF_NAME"); } }
private static void SetupBitbucketEnvironment() { IsCI = true; Provider = "bitbucket"; Repository = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_GIT_SSH_ORIGIN"); Commit = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_COMMIT"); Branch = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_BRANCH"); Tag = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_TAG"); SourceRoot = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_CLONE_DIR"); WorkspacePath = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_CLONE_DIR"); PipelineId = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_PIPELINE_UUID")?.Replace("}", string.Empty).Replace("{", string.Empty); PipelineNumber = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_BUILD_NUMBER"); PipelineName = EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_REPO_FULL_NAME"); PipelineUrl = string.Format( "https://bitbucket.org/{0}/addon/pipelines/home#!/results/{1}", EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_REPO_FULL_NAME"), EnvironmentHelpers.GetEnvironmentVariable("BITBUCKET_BUILD_NUMBER")); JobUrl = PipelineUrl; }