Command line utility for SoftwareOne Marketplace Platform
- Docker and Docker Compose plugin (
docker composeCLI) make- CodeRabbit CLI (optional. Used for running review check locally)
Common development workflows are wrapped in the Makefile. Run make help to see the list of available commands.
The project uses a modular Makefile structure that organizes commands into logical groups:
- Main Makefile (
Makefile): Entry point that automatically includes all.mkfiles from themake/directory - Modular includes (
make/*.mk): Commands are organized by category:common.mk- Core development commands (build, test, format, etc.)repo.mk- Repository management and dependency commandsmigrations.mk- Database migration commands (Only available in extension repositories)external_tools.mk- Integration with external tools
You can extend the Makefile with your own custom commands creating a local.mk file inside make folder. This file is
automatically ignored by git, so your personal commands won't affect other developers or appear in version control.
Follow these steps to set up the development environment:
git clone <repository-url>cd swo-marketplace-cliBuild the development environment:
make buildThis will create the Docker images with all required dependencies and the virtualenv.
Run the test suite to ensure everything is configured correctly:
make testYou're now ready to start developing! See Running the cli for next steps.
Before running, ensure your .env file is populated.
Start the cli:
make runUseful helper targets during development:
make bash # open a bash shell in the app container
make check # run ruff, flake8, and lockfile checks
make check-all # run checks and tests
make format # auto-format code and imports
make review # check the code in the cli by running CodeRabbit