Skip to content

Commit 3294e7e

Browse files
Changed default cloudmachine.json location (Azure#38096)
* small fixes to CloudMachine * updated api files * PR feedback * fix
1 parent c1868b4 commit 3294e7e

File tree

5 files changed

+13
-8
lines changed

5 files changed

+13
-8
lines changed

sdk/core/Azure.Core.Experimental/api/Azure.Core.Experimental.net461.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ namespace Azure
33
public partial class CloudMachine
44
{
55
public CloudMachine(System.IO.Stream configurationContent) { }
6-
public CloudMachine(string configurationFile = "cloudmachine.json") { }
6+
public CloudMachine(string? configurationFile = null) { }
77
public string DisplayName { get { throw null; } set { } }
88
public string Id { get { throw null; } }
99
public string Region { get { throw null; } }

sdk/core/Azure.Core.Experimental/api/Azure.Core.Experimental.net6.0.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ namespace Azure
33
public partial class CloudMachine
44
{
55
public CloudMachine(System.IO.Stream configurationContent) { }
6-
public CloudMachine(string configurationFile = "cloudmachine.json") { }
6+
public CloudMachine(string? configurationFile = null) { }
77
public string DisplayName { get { throw null; } set { } }
88
public string Id { get { throw null; } }
99
public string Region { get { throw null; } }

sdk/core/Azure.Core.Experimental/api/Azure.Core.Experimental.netstandard2.0.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ namespace Azure
33
public partial class CloudMachine
44
{
55
public CloudMachine(System.IO.Stream configurationContent) { }
6-
public CloudMachine(string configurationFile = "cloudmachine.json") { }
6+
public CloudMachine(string? configurationFile = null) { }
77
public string DisplayName { get { throw null; } set { } }
88
public string Id { get { throw null; } }
99
public string Region { get { throw null; } }

sdk/core/Azure.Core.Experimental/src/CloudMachine.cs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,12 @@ public static CloudMachine Create(string subscriptionId, string region)
5656
/// <summary>
5757
/// Loads CloudMachine settings from configurationFile
5858
/// </summary>
59-
/// <param name="configurationFile"></param>
59+
/// <param name="configurationFile">Default value is .azure\cloudmachine.json</param>
6060
/// <exception cref="InvalidCloudMachineConfigurationException"></exception>
61-
public CloudMachine(string configurationFile = "cloudmachine.json")
61+
public CloudMachine(string? configurationFile = default)
6262
{
63+
configurationFile ??= Path.Combine(".azure", "cloudmachine.json");
64+
6365
try
6466
{
6567
byte[] configurationContent = File.ReadAllBytes(configurationFile);
@@ -145,7 +147,9 @@ public void Save(Stream stream)
145147
[EditorBrowsable(EditorBrowsableState.Never)]
146148
public void Save(string filepath)
147149
{
148-
using var stream = File.OpenWrite(filepath);
150+
string? directory = Path.GetDirectoryName(filepath);
151+
if (directory != null && !Directory.Exists(directory)) Directory.CreateDirectory(directory);
152+
using FileStream stream = File.OpenWrite(filepath);
149153
Save(stream);
150154
}
151155

sdk/core/Azure.Core.Experimental/tests/CloudMachineTests.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,11 @@ public void SerializationRoundTrip()
2727
[Test]
2828
public void DefaultCtor()
2929
{
30+
var path = Path.Combine(".azure", "cloudmachine.json");
3031
try
3132
{
3233
var cm = CloudMachine.Create(Guid.NewGuid().ToString(), "westus2");
33-
cm.Save("cloudmachine.json");
34+
cm.Save(path);
3435
var deserialized = new CloudMachine();
3536
Assert.AreEqual(cm.Id, deserialized.Id);
3637
Assert.AreEqual(cm.DisplayName, deserialized.DisplayName);
@@ -39,7 +40,7 @@ public void DefaultCtor()
3940
}
4041
finally
4142
{
42-
File.Delete("cloudmachine.json");
43+
File.Delete(path);
4344
}
4445
}
4546
}

0 commit comments

Comments
 (0)