private ReplicaInfoBuilder(bool useFQDN) { environment = "default"; application = EnvironmentInfo.Application; host = useFQDN ? EnvironmentInfo.FQDN : EnvironmentInfo.Host; processName = EnvironmentInfo.ProcessName; processId = EnvironmentInfo.ProcessId; baseDirectory = EnvironmentInfo.BaseDirectory; commitHash = AssemblyCommitHashExtractor.ExtractFromEntryAssembly(); releaseDate = AssemblyBuildTimeExtractor.ExtractFromEntryAssembly()?.ToString("O"); dependencies = AssemblyDependenciesExtractor.ExtractFromEntryAssembly(); }
public object Query() => AppDomain.CurrentDomain .GetAssemblies() .Where(assembly => !assembly.IsDynamic) .OrderBy(assembly => assembly.GetName().Name, StringComparer.OrdinalIgnoreCase) .Select(assembly => new { assembly.GetName().Name, assembly.GetName().Version, CommitHash = AssemblyCommitHashExtractor.ExtractFromAssembly(assembly), BuildTimestamp = AssemblyBuildTimeExtractor.ExtractFromAssembly(assembly)?.ToString("u") }) .ToArray();
public static void ExtractFromAssembly_by_path_should_be_not_null() => AssemblyBuildTimeExtractor.ExtractFromAssembly( Assembly.GetAssembly(typeof(AssemblyCommitHashExtractor)).Location) .Should() .NotBeNull();