@@ -6,6 +6,9 @@ Subject: [PATCH 1/3] Revert "*: remove cl-legacy feature"
6
6
This reverts commit 3e4b623b390ab756a6be963eec7198b3e7f44e20.
7
7
8
8
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
9
+ (dpark: Re-add hostname crate and its dependencies, as they are not
10
+ included by default in 5.5.)
11
+ Signed-off-by: Dongsu Park <dpark@linux.microsoft.com>
9
12
---
10
13
Cargo.toml | 3 +
11
14
src/metadata.rs | 8 +++
@@ -15,11 +18,62 @@ Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
15
18
5 files changed, 96 insertions(+)
16
19
create mode 100644 src/providers/vagrant_virtualbox/mod.rs
17
20
21
+ diff --git a/Cargo.lock b/Cargo.lock
22
+ index edb7819c..8bf34440 100644
23
+ --- a/Cargo.lock
24
+ +++ b/Cargo.lock
25
+ @@ -31,13 +31,14 @@ dependencies = [
26
+ "base64 0.21.5",
27
+ "cfg-if",
28
+ "clap",
29
+ + "hostname",
30
+ "ipnetwork",
31
+ "libflate",
32
+ "libsystemd",
33
+ "mailparse",
34
+ "maplit",
35
+ "mockito",
36
+ - "nix 0.26.4",
37
+ + "nix 0.27.1",
38
+ "openssh-keys",
39
+ "openssl",
40
+ "pnet_base",
41
+ @@ -901,6 +902,17 @@ dependencies = [
42
+ "digest",
43
+ ]
44
+
45
+ + [[package]]
46
+ + name = "hostname"
47
+ + version = "0.3.1"
48
+ + source = "registry+https://github.com/rust-lang/crates.io-index"
49
+ + checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867"
50
+ + dependencies = [
51
+ + "libc",
52
+ + "match_cfg",
53
+ + "winapi",
54
+ + ]
55
+ +
56
+ [[package]]
57
+ name = "http"
58
+ version = "0.2.11"
59
+ @@ -1159,6 +1171,12 @@ version = "1.0.2"
60
+ source = "registry+https://github.com/rust-lang/crates.io-index"
61
+ checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
62
+
63
+ + [[package]]
64
+ + name = "match_cfg"
65
+ + version = "0.1.0"
66
+ + source = "registry+https://github.com/rust-lang/crates.io-index"
67
+ + checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
68
+ +
69
+ [[package]]
70
+ name = "md-5"
71
+ version = "0.10.6"
18
72
diff --git a/Cargo.toml b/Cargo.toml
19
73
index e5b3dc3..f9b3e46 100644
20
74
--- a/Cargo.toml
21
75
+++ b/Cargo.toml
22
- @@ -26,6 +26,9 @@ lto = true
76
+ @@ -26,11 +26,15 @@ lto = true
23
77
# We assume we're being delivered via e.g. RPM which supports split debuginfo
24
78
debug = true
25
79
@@ -28,7 +82,13 @@ index e5b3dc3..f9b3e46 100644
28
82
+
29
83
[dependencies]
30
84
anyhow = "1.0"
31
- base64 = "0.13"
85
+ base64 = "0.21"
86
+ cfg-if = "1.0"
87
+ clap = { version = "4", "default_features" = false, "features" = ["std", "cargo", "derive", "error-context", "help", "suggestions", "usage", "wrap_help"] }
88
+ + hostname = "0.3.1"
89
+ ipnetwork = ">= 0.17, < 0.21"
90
+ libflate = "1.3"
91
+ libsystemd = ">= 0.2.1, < 0.8.0"
32
92
diff --git a/src/metadata.rs b/src/metadata.rs
33
93
index 758bb1e..8544de9 100644
34
94
--- a/src/metadata.rs
@@ -39,9 +99,9 @@ index 758bb1e..8544de9 100644
39
99
use crate::providers::powervs::PowerVSProvider;
40
100
+ #[cfg(feature = "cl-legacy")]
41
101
+ use crate::providers::vagrant_virtualbox::VagrantVirtualboxProvider;
102
+ use crate::providers::scaleway::ScalewayProvider;
42
103
use crate::providers::vmware::VmwareProvider;
43
104
use crate::providers::vultr::VultrProvider;
44
-
45
105
@@ -48,6 +50,8 @@ pub fn fetch_metadata(provider: &str) -> Result<Box<dyn providers::MetadataProvi
46
106
match provider {
47
107
"aliyun" => box_result!(AliyunProvider::try_new()?),
@@ -57,18 +117,18 @@ index 758bb1e..8544de9 100644
57
117
"gcp" => box_result!(GcpProvider::try_new()?),
58
118
+ #[cfg(feature = "cl-legacy")]
59
119
+ "gce" => box_result!(GcpProvider::try_new()?),
120
+ "hetzner" => box_result!(HetznerProvider::try_new()?),
60
121
// IBM Cloud - VPC Generation 2.
61
122
"ibmcloud" => box_result!(IBMGen2Provider::try_new()?),
62
- // IBM Cloud - Classic infrastructure.
63
123
@@ -63,6 +69,8 @@ pub fn fetch_metadata(provider: &str) -> Result<Box<dyn providers::MetadataProvi
64
124
"openstack-metadata" => box_result!(OpenstackProviderNetwork::try_new()?),
65
125
"packet" => box_result!(PacketProvider::try_new()?),
66
126
"powervs" => box_result!(PowerVSProvider::try_new()?),
67
127
+ #[cfg(feature = "cl-legacy")]
68
128
+ "vagrant-virtualbox" => box_result!(VagrantVirtualboxProvider::new()),
129
+ "scaleway" => box_result!(ScalewayProvider::try_new()?),
69
130
"vmware" => box_result!(VmwareProvider::try_new()?),
70
131
"vultr" => box_result!(VultrProvider::try_new()?),
71
- _ => bail!("unknown provider '{}'", provider),
72
132
diff --git a/src/providers/mod.rs b/src/providers/mod.rs
73
133
index f684d22..a67546c 100644
74
134
--- a/src/providers/mod.rs
@@ -79,9 +139,9 @@ index f684d22..a67546c 100644
79
139
pub mod powervs;
80
140
+ #[cfg(feature = "cl-legacy")]
81
141
+ pub mod vagrant_virtualbox;
142
+ pub mod scaleway;
82
143
pub mod vmware;
83
144
pub mod vultr;
84
-
85
145
diff --git a/src/providers/vagrant_virtualbox/mod.rs b/src/providers/vagrant_virtualbox/mod.rs
86
146
new file mode 100644
87
147
index 0000000..d7a9e0e
0 commit comments