At this time, Continuous Integration is available to select partners only.
Automating your build and deployment processes is crucial for maintaining consistent, high-quality software releases. For teams working with the Vega SDK, integrating it into your Continuous Integration (CI) pipeline can significantly streamline your development workflow. This guide will walk you through the process, best practices, and common pitfalls to avoid.
1. Understanding Vega SDK Installation in CI Environments
The Vega SDK installation process needs special consideration when implementing it in a CI environment. Unlike developer workstations where interactive installation is common, CI environments require a fully automated approach.
Build Host Requirements
Your build host (whether virtual or physical) needs to meet the system requirements documented on the installation page:
- Compatible operating system (e.g., Ubuntu 20.04, 22.04, and 24.04 for Linux builds, Mac OS X)
- Appropriate architecture support (e.g., arm64 or x86_64 for Mac, x86_64 for Linux)
- Sufficient storage space for SDK installation
On the installation page, ensure that you select the corresponding platform for your CI build host and not for your development machine.
React Native Considerations
If you’re building a React Native application, you’ll need to configure your npm client to use Amazon’s private npm registry (required during this phase under disclosure). This ensures access to Vega-specific npm packages during the build process.
2. Key Behaviors and Important Changes
Non-root User Requirement
Non-root user accounts are no longer required for non-interactive installations. Set NONINTERACTIVE=true for CI environments.
Optional VVD Installation
To optimize your CI environment and reduce storage usage:
- The Vega Virtual Device (VVD) image installation is optional
- Set
SKIP_VVD_INSTALL=trueto skip VVD installation - This significantly reduces the installation footprint
Important: The VVD is not supported in Docker containers. Docker’s headless environment and limited GPU access prevent the VVD from functioning properly. For device testing, use dedicated testing infrastructure with display and GPU support.
VS Code Plugin Considerations
Don’t be alarmed by VS Code plugin installation warnings in your CI environment. These are expected and can be safely ignored as they don’t affect the SDK’s functionality in CI/CD pipelines.
3. Installation Control Through Environment Variables
The Vega SDK installer provides customization through environment variables. Here are the most important ones for CI environments:
| Variable | Default | Description |
|---|---|---|
NONINTERACTIVE |
FALSE | Skip all prompts and run automatically. Required for CI/CD. |
VEGA_SDK_VERSION |
(latest) | Install a specific SDK version (e.g., 0.21.5245). |
SKIP_SDK_INSTALL |
FALSE | Skip SDK installation entirely. |
SKIP_VVD_INSTALL |
FALSE | Skip VVD installation during SDK setup. |
4. Practical Implementation
Here’s an example Dockerfile that demonstrates how to integrate the Vega SDK into your build environment:
FROM --platform=linux/amd64 ubuntu:22.04
SHELL ["/bin/bash", "-c"]
ENV DEBIAN_FRONTEND=noninteractive
# Need cURL and utilities to fetch the installer.
RUN apt-get update && \
apt-get install -y curl tar jq ca-certificates --no-install-recommends && \
rm -rf /var/lib/apt/lists/*
# Install Vega SDK
ENV NONINTERACTIVE=true
ARG VEGA_SDK_VERSION=0.21.5245
ARG SKIP_VVD_INSTALL=true
ENV VEGA_SDK_VERSION=${VEGA_SDK_VERSION}
ENV SKIP_VVD_INSTALL=${SKIP_VVD_INSTALL}
RUN curl -fsSL https://sdk-installer.vega.labcollab.net/get_vvm.sh | bash
ENV PATH="/root/vega/bin:${PATH}"
# Verify vega command is available
RUN vega -v
# If you are building a React Native app, NodeJS and npm are required
RUN apt-get update && apt-get install -y nodejs npm && rm -rf /var/lib/apt/lists/*
## Set global npm config path to /etc/npmrc
## Bind mount your npmrc config to this location
ENV NPM_CONFIG_GLOBALCONFIG="/etc/npmrc"
## Verify node and npm commands are available
RUN node -v && npm -v
ENTRYPOINT [ "/bin/bash", "-c" ]
You would build that Docker image like this:
docker build . --tag vega-sdk \
--build-arg VEGA_SDK_VERSION=0.21.5245 \
--build-arg SKIP_VVD_INSTALL=true
Find the SDK version you need on the SDK installation page. Before copying the values, ensure that you select the corresponding platform for your CI build host and not for your development machine. If you select the incorrect platform, you may encounter installation or runtime errors.
5. Best Practices
-
Version Control
- Always specify exact SDK versions in your CI configuration
- Consider version pinning for stability
- Document version updates in your repository
-
Performance Optimization
- Skip VVD installation when not needed
- Use caching strategies for downloaded artifacts
- Consider using multi-stage builds
-
Security Considerations
- Use secure download URLs (HTTPS)
- Implement proper access controls for private registries
- Regular security audits of CI/CD pipelines
6. Common Issues and Solutions
-
Installation Failures
- Verify network connectivity to SDK repositories
- Ensure sufficient disk space
- Check environment variable configuration
- Ensure correct platform for build host was selected
-
Build Errors
- Verify SDK version compatibility
- Check for missing dependencies
- Review build logs for specific error messages
- Ensure correct platform for build host was selected during installation
7. Conclusion
Integrating Vega SDK into your CI pipeline might seem daunting at first, but with proper planning and implementation, it can significantly improve your development workflow. Focus on automation, performance, and security while following the best practices outlined above.
To get started:
- Evaluate your current CI environment
- Plan your integration strategy
- Implement the necessary changes
- Monitor and optimize the process
Remember to keep your SDK versions updated and regularly review your CI configuration for potential improvements.
Last updated: Mar 6, 2026
