The Packet Manager is a MOSIP module that creates, reads, validates, and manages packets across registration and identity lifecycle processes with support for multiple sources, processes and object store adapters.
The registration packet structure is available here: Packet structure
- Packet creation and reading APIs
- Packet validation against ID schema
- Tag management (add/update/delete)
- Priority-based packet reading
- Multi-source and multi-process support
- Object store integration (S3, POSIX, Swift)
The Packet Manager module contains the following:
- Packet Manager Library (
commons-packet-manager) - Core library utilized by Registration Client and Resident Service for packet operations. - Packet Service (
commons-packet-service) - A RESTful service providing APIs for managing packets in the object store.
NA (Not applicable)
The project can be set up in two ways:
Before you begin, ensure you have the following installed:
- JDK: 21
- Maven: 3.9.6
- Docker: Latest stable version
- Keycloak: Check here
Ensure the following artifacts are available in the classpath or loader path:
kernel-auth-adapter.jar- For IAM authentication.kernel-ref-idobjectvalidator.jar- For ID object validation.cache-provider.jar- For caching support.
- Packet Manager uses configuration files from the mosip-config repository.
- Refer to the tagged version corresponding to your release.
- Key configuration files:
-
Ensure the Config Server is running and accessible.
-
Clone the repository:
git clone https://github.com/mosip/packet-manager.git
cd packet-manager
- Build the project:
cd commons-packet
mvn clean install -Dmaven.javadoc.skip=true -Dgpg.skip=true
-
Start the application:
- Run via IDE or command line:
java -jar commons-packet-service/target/commons-packet-service-*.jar
- Run via IDE or command line:
-
Verify Swagger is accessible at:
http://localhost:<port>/packetmanager/swagger-ui/index.html
Recommended for quick demos and testing.
docker pull mosipid/kernel-packet-manager:1.3.0
Run the service:
docker run -d -p 8086:8086 --name packet-manager mosipid/kernel-packet-manager:1.3.0
Recommended for developers.
-
Build the project (as shown in Local Setup).
-
Navigate to the service directory and build the Docker image:
cd commons-packet/commons-packet-service
docker build -t packet-manager:local .
- Run the service:
docker run -d -p <port>:<port> --name <service-name> <service-name>
Check that the container is running:
docker ps
Access the services at http://localhost:<port> using the port mappings listed above.
To deploy Packet Manager on a Kubernetes cluster, refer to the Sandbox Deployment Guide.
For additional details, refer to the documents listed below:
API endpoints and Swagger documentation are available at: MOSIP Packet Manager API Documentation.
For functional details and use cases, refer to: Packet Manager Module Documentation.
• To learn how you can contribute code to this application, click here.
• If you have questions or encounter issues, visit the MOSIP Community for support.
• For any GitHub issues: Report here
This project is licensed under the Mozilla Public License 2.0.