DemesneGH opened a new pull request, #193:
URL: https://github.com/apache/incubator-teaclave-trustzone-sdk/pull/193

   As discussed in 
https://github.com/apache/incubator-teaclave-trustzone-sdk/issues/189, 
providing a Docker image for quick start can significantly improve the 
onboarding experience for developers using the SDK — especially first-time 
users.
   
   This PR introduces a Dockerfile that pre-builds the essential dependencies, 
reducing build time and allowing developers to quickly set up their environment 
and perform a minimal build with ease.
   
   ### Current Usage
   
   This Dockerfile enables a simple and streamlined workflow:
   
   ```bash
   # Clone the SDK repository
   $ git clone https://github.com/apache/incubator-teaclave-trustzone-sdk.git 
&& cd incubator-teaclave-trustzone-sdk
   
   # Build the Docker image (will support docker pull after we publish on 
dockerhub)
   $ docker build -f Dockerfile.quickstart -t teaclave-trustzone-sdk-quickstart 
.
   
   # Launch the container
   $ docker run -it --rm \
     -v$(pwd):/root/teaclave_sdk_src \
     -w /root/teaclave_sdk_src \
     teaclave-trustzone-sdk-quickstart bash
   ```
   
   Once inside the container, build and test the Hello World example:
   
   ```bash
   $ source environment
   $ make -C examples/hello_world-rs/
   $ cd tests/
   $ ./test_hello_world.sh
   ```
   
   The README is also updated for the quick start workflow.
   
   ### Future Plans & TODOs
   
   This is the initial version and there's room for improvement. Possible 
enhancements include:
   
   * Currently supports only `no-std` mode; add support for `std`.
   * Parameterize options like `PLATFORM`.
   * Consider building OP-TEE images inside the Docker image. I had a quick try 
and the considerations are as follows:
     * Pros: Tests will use locally built images, no dependency on downloading 
from`nightlies.apache.org`.
     * Cons: Increases image size to \~22GB. Need to experiment with cache 
cleanup to reduce size.
     * Other notes: OP-TEE needs to be patched with expanded memory settings to 
run all tests reliably.
   * Quick Development: Add a helper script to quickly initialize a new TA 
project by name.
   * Quick Debug: Add tooling for quick setup TA debugging environment:
     * A script to launch the emulator and split terminals.
     * Support multi-arch prebuilt QEMU for debugging (initially support 
`aarch64` only).
   * Simplify CI jobs by reusing this image to cut down build time.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@teaclave.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@teaclave.apache.org
For additional commands, e-mail: dev-h...@teaclave.apache.org

Reply via email to