-
Notifications
You must be signed in to change notification settings - Fork 134
Home
The best source for general ODP information is opendataplane.org, this wiki focuses on development related subjects.
This repository contains the odp-linux implementation of the ODP API. It’s focus is to provide a clear reference implementation of the ODP API rather than a performance optimal implementation on a given platform. Other implementations can be found at Platform specific implementations.
GitHub Actions CI uses Docker containers to fill the following requirements:
-
Not relay on distro package hosting.
-
Be able to locally reproduce any CI run task.
To build and upload Docker images we use odp-docker-images repository. The distribution environments are described in the Dockerfiles. There is also a GitHub Actions workflow, which automatically builds and deploys the images.
To run Docker locally:
-
install Docker (apt-get install docker.io)
-
cd to ODP source directory
-
copy and paste a run command from a GitHub Actions run, for example:
docker run -i -t -v `pwd`:/odp --shm-size 8g -e CC=clang ghcr.io/opendataplane/odp-docker-images/odp-ci-ubuntu_18.04-x86_64 /odp/scripts/ci/build_x86_64.sh
Where:
-
-i - means interactive. (For debug you can specify /bin/bash and run /odp/scripts/ci/build_x86_64.sh manually inside container. All container data will be lost on exit.)
-
-t, --tty Allocate a pseudo-TTY to make output visible on stdout,stderr.
-
-v
pwd
:/odp - means pass current host directory to container. (Directory is rw shared between host and container.) -
-e CC=clang - pass environment variable inside container
-
opendataplane/odp-docker-images/odp-ci-ubuntu_18.04-x86_64 - container name in GitHub Container Registry
-
/odp/scripts/ci/build_x86_64.sh - the latest parameter is command to run after container started.
To run CI on custom images you need:
-
Enable GitHub Container Registry for you account (link)
-
Fork https://github.com/OpenDataPlane/odp-docker-images project to your local name space.
-
Build and deploy custom images under your GitHub name space (and make them public if necessary)
-
In your ODP project, edit the GitHub Actions workflow environment variable CONTAINER_NAMESPACE to point to your account in GitHub.
Detailed analysis, go to site.
Detailed analysis, go to site.