This document describes how to deploy the EDA-Controller (AKA eda-server). Currently there are three supported ways to deploy the EDA-Controller:
- Using the eda-server-operator for k8s/ocp (recommended one)
- Using docker-compose
- Using kind (Kubernetes in Docker)
If you are looking for a development environment, please refer to the development document.
The recommended way to deploy the EDA-Controller is using the eda-server-operator. This operator is available in the eda-server-operator repository
Look at the eda-server-operator documentation for more information.
- Git
- Docker or Podman
- Docker Compose plugin or
docker-composepython package. - Taskfile
You'll need to install Docker or Podman.
For further information please refer our guidelines.
For further information please refer our guidelines.
For further information please refer our guidelines.
git clone git@github.com:ansible/eda-server.gitYou might want to configure the AWX integration. To do so, you need to set the environment variables EDA_CONTROLLER_URL and EDA_CONTROLLER_SSL_VERIFY. For example:
export EDA_CONTROLLER_URL=https://awx-example.com
export EDA_CONTROLLER_SSL_VERIFY=yescd tools/dockerYou may want to pull the latest images from the registry:
docker-compose -p eda -f docker-compose-stage.yaml pullYou can start all services with:
docker-compose -p eda -f docker-compose-stage.yaml upNote: You can use the environment variables EDA_IMAGE_URL and EDA_UI_IMAGE to use a different image url. By default is the latest code from the main branch.
Kind is the recommended method for local Kubernetes deployments
-
Copy environment properties example file to default location
cp ./tools/deploy/environment.properties.example ./tools/deploy/environment.properties
-
Edit ./tools/deploy/environment.properties file and add your values.
-
Create a kind cluster if one is not already running:
kind create cluster
-
Ensure the kind cluster is up and running:
kind get clusters
-
Run the deployment:
task kind:all
-
Forward the webserver port to the localhost:
task kind:fp:ui
-
Access the UI at https://localhost:8443/ with the default credentials
admin/testpass.You can also inspect the API documentation at https://localhost:8443/api/eda/v1/docs or navigate through the resources with the DRF browsable API at https://localhost:8443/api/eda/v1/.
Note: For fedora, the binary may be go-task.
Note: Image builds use podman by default. To use Docker instead, set the CONTAINER_ENGINE variable:
CONTAINER_ENGINE=docker task kind:all