The following must be installed in order to build this project:
-
Rust (Install Rust), follow the steps prompted during the installation.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -
Install required packages for programming
sudo apt update sudo apt install linux-headers-$(uname -r) \ libbpfcc-dev \ libbpf-dev \ llvm \ clang \ gcc-multilib \ build-essential \ linux-tools-$(uname -r) \ linux-tools-common \ linux-tools-generic \ rpm \ musl-tools \ -
Install 'zip' package for build
sudo apt install zip -
Install dotnet package for build
sudo snap install dotnet-sdk --classic sudo chown -R root:root /var/lib
This section outlines the steps to build, prepare and build this project.
-
Copy your ssh private & public key to the Linux VM
scp -i "<path>\ssh.pem" "<path>\ssh.pem" <username>@<ip>:.ssh scp -i "<path>\ssh.pem" "<path>\ssh.pub" <username>@<ip>:.ssh -
Rename the ssh files to id_rsa at Linux VM
[ ~/.ssh ]$ mv ssh.pem id_rsa [ ~/.ssh ]$ mv ssh.pub id_rsa.pub -
Add permissions to the ssh files
[ ~/.ssh ]$ chmod 600 id_rsa [ ~/.ssh ]$ chmod 644 id_rsa.pub -
Clone the code
git clone git@github.com:Azure/GuestProxyAgent.git
By default this will clone the project under the GuestProxyAgent directory.
Navigate to this repo root folder and run
./build-linux.sh