Skip to content

Commit 9ce7e0d

Browse files
authored
Merge pull request #19 from Project-MONAI/kavink/monai-app-package-builder
MONAI Application Packager (Packager)
2 parents 214e6a0 + 8b21ab4 commit 9ce7e0d

1 file changed

Lines changed: 72 additions & 0 deletions

File tree

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# MONAI Application Packager
2+
3+
## Description
4+
5+
This is a proposal for the MONAI Deploy Working Group.
6+
7+
- [Overview](#overview)
8+
- [Goal](#goal)
9+
- [Requirements](#requirements)
10+
- [Creates Deployable Single Container](#creates-deployable-single-container)
11+
- [Packages Required MAP Components](#packages-required-map-components)
12+
- [Offers Intuitive Interface](#offers-intuitive-interface)
13+
- [Input Requirements](#input-requirements)
14+
- [Converting Existing Images](#converting-existing-images)
15+
- [Architecture & Design](#architecture--design)
16+
- [Packager Specification](#packager-specification)
17+
- [Packaging MAP with MONAI Application](#packaging-map-with-monai-application)
18+
- [Packaging MAP from existing container](#packaging-map-from-existing-container)
19+
20+
## Overview
21+
Data scientists and application developers will require a utility to package their MONAI applications into deployable MONAI Application Packages (MAP). This proposal documents the specification of the initial version of the MONAI Application Packager (Packager).
22+
23+
### Goal
24+
25+
The goal of this proposal is to achieve clarity on the initial structure of the Packager, with regards specifically to how it should create a deployable package and the interface it should provide to users.
26+
27+
## Requirements
28+
29+
The following are requirements which need to be met by the MAP Packager specification to be considered complete and approved.
30+
31+
### Creates Deployable Single Container
32+
33+
Packager SHALL produce a functional MAP which SHALL be a deployable single containerized application
34+
35+
### Packages Required MAP Components
36+
37+
Packager SHALL package/provide all required components specified in [MONAI Application Package](./monai-application-package.md).
38+
39+
### Offers Intuitive Interface
40+
41+
Packager SHOULD provide users with an intuitive interface to package an application into a MAP.
42+
43+
Packager SHOULD provide a command-line interface for users to package an application into a MAP.
44+
45+
### Input Requirements
46+
47+
Packager SHALL take a MONAI Application and any optional pre-trained models as input.
48+
49+
### Converting Existing Images
50+
51+
Packager SHALL support converting existing container images into MAPs
52+
53+
## Architecture & Design
54+
55+
Packager SHALL accept a user supplied application and package it into a MAP
56+
57+
[!IMPORTANT]
58+
The full design and layout for a MAP produced by Packager can be found in the [MONAI Application Package](./monai-application-package.md) design document.
59+
60+
### Packager Specification
61+
62+
Packager SHALL adhere to the MAP specification when packaging a MAP
63+
64+
Packager SHALL be a client that supports the following features
65+
66+
#### Packaging MAP with MONAI Application
67+
68+
Packager SHALL support packaging a MAP with a user supplied MONAI application and any optional pre-trained models
69+
70+
#### Packaging MAP from existing container
71+
72+
Packager SHALL support packaging a MAP from an existing container

0 commit comments

Comments
 (0)