mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-09-17 23:07:55 +00:00
agent: Remove get_key_value
to enable building in stable rust.
The get_key_value method is currently only avaiable in nightly rust. As only this feature is required it worth to refactor and enable building in the stable channel. The method was removed by first getting the value from the CGROUPS hashmap, then key is get by iterating over all the keys. The checks for an empty key and key == "devices" were moved out of the hashmap block. The README.md was updated as well to detail the instructions for stable rust. Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
This commit is contained in:
@@ -45,9 +45,7 @@ The `rust-agent` depends on [`grpc-rs`](https://github.com/pingcap/grpc-rs) by P
|
||||
### Build from Source
|
||||
The rust-agent need to be built with rust nightly, and static linked with musl.
|
||||
```bash
|
||||
rustup toolchain install nightly
|
||||
rustup default nightly
|
||||
rustup target add x86_64-unknown-linux-musl --toolchain=nightly
|
||||
rustup target add x86_64-unknown-linux-musl
|
||||
git submodule update --init --recursive
|
||||
sudo ln -s /usr/bin/g++ /bin/musl-g++
|
||||
cargo build --target x86_64-unknown-linux-musl --release
|
||||
|
@@ -588,24 +588,22 @@ pub fn get_cgroup_mounts(logger: &Logger, cg_path: &str) -> Result<Vec<INIT_MOUN
|
||||
}
|
||||
}
|
||||
|
||||
match CGROUPS.get_key_value(fields[0]) {
|
||||
Some((key, value)) => {
|
||||
if *key == "" {
|
||||
continue;
|
||||
}
|
||||
if fields[0] == "" {
|
||||
continue;
|
||||
}
|
||||
|
||||
if *key == "devices" {
|
||||
has_device_cgroup = true;
|
||||
}
|
||||
if fields[0] == "devices" {
|
||||
has_device_cgroup = true;
|
||||
}
|
||||
|
||||
cg_mounts.push(INIT_MOUNT {
|
||||
fstype: "cgroup",
|
||||
src: "cgroup",
|
||||
dest: *value,
|
||||
options: vec!["nosuid", "nodev", "noexec", "relatime", *key],
|
||||
});
|
||||
}
|
||||
None => continue,
|
||||
if let Some(value) = CGROUPS.get(&fields[0]) {
|
||||
let key = CGROUPS.keys().find(|&&f| f == fields[0]).unwrap();
|
||||
cg_mounts.push(INIT_MOUNT {
|
||||
fstype: "cgroup",
|
||||
src: "cgroup",
|
||||
dest: *value,
|
||||
options: vec!["nosuid", "nodev", "noexec", "relatime", key]
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user