This sub-repository contains the Edge Infrastructure Manager Plugin implemented for Lenovo Open Cloud Automation (LOC-A), enabling the integration of the Edge Infrastructure Manager with LOC-A.
- Securely onboard and manage Edge Nodes
- Provision Edge Nodes with a curated set of bare metal agents and software, enabling the deployment of additional applications
Instructions on how to build and push the Edge Infrastructure Manager Plugin on your LOC-A instance.
Visit the LOC-A portal and navigate
to the Contact Us page to request a license.
Follow the Lenovo-provided documentation to set up LOC-A. After completing the configuration, verify its correctness by accessing the LOC-A UI.
Find the plugin-tool binary in the package provided by Lenovo under the obtained license and copy it in the current directory.
Locate the decrypt.py script in the Lenovo package and move it to the edge-node/filter_plugins directory.
Create a virtual environment and install the required dependencies.
Note: Ensure you have Python 3.x installed before proceeding.
# Create a virtual environment
make venv_locapluginActivate the virtual environment created in the previous step to ensure that all dependencies are correctly isolated and available for the plugin build process.
# Activate the virtual environment
source venv_locaplugin/bin/activateOpen the configs.yml file and enter the LOC-A URL and login credentials.
# Example LOC-A credentials
locaUrl: https://loca.example.com
locaUser: adminRun the create-loca-plugin.sh script to build and publish the Edge Infrastructure Manager Plugin.
# Run the script
./create-loca-plugin.shNote: Make sure to configure proxy on the host and set up a container tool of your choice, as the build process runs inside a container that requires internet access.
See the documentation if you want to learn more about using Edge Orchestrator.
To learn how to contribute to the project, see the contributor's guide. The project will accept contributions through Pull-Requests (PRs). PRs must be built successfully by the CI pipeline, pass linters verifications and the unit tests.
There are several convenience make targets to support developer activities, you can use help to see a list of makefile
targets. The following is a list of makefile targets that support developer activities:
lintto run a list of linting targetsansiblelintto lint ansible modulesmdlintto lint markdown filesyamllintto lint yaml filesreuseto check the reuse complianceshellcheckto lint shell scriptscleanto delete the virtual environment
To learn more about internals and software architecture, see Edge Infrastructure Manager developer documentation.