View on GitHub

OraPM

Package Manager for Oracle database

Introduction

OPM is an online repository and framework for the publishing, discovery, installation, version and dependency management of Oracle PL/SQL projects (modules).

It’s what NPM is to NodeJS or PIP to Python.

Key features

sql-demo

Requirements:

Quick demo

Install module to the current schema

demo-in-apex

sql> opm.install('joedoe\superapi');

Found package "joedoe\superapi" version 2.0.0 [latest]
Requires "bigmac\tools" version 1.5+
    Found package "bigmac\tools" version 1.6.0 [latest]
    Downloading package "bigmac\tools" version 1.6.0 [latest] ...
    Installing package "bigmac\tools" ...
    Validating package "bigmac\tools" ...
    Package "bigmac\tools" installed succesfully
Downloading package "joedoe\superapi" version 2.0.0 [latest] ...
Installing package "joedoe\superapi" ...
Validating package "joedoe\superapi" ...
Package "joedoe\superapi" installed succesfully

List all installed modules

sql> select * from (opm.modules);

| Package         | Version | Installed | Status | Description
---------------------------------------------------------------------------------------
| navratil\opm    | 1.0.1   | 1/1/2022  | Valid  | Oracle Database Package Manager
| bigmac\tools    | 1.6.0   | 7/1/2022  | Valid  | Tools for building APIs
| joedoe\superapi | 2.0.0   | 7/1/2022  | Valid  | Joe's super API for XYZ

See also Getting started

Use anyway you need

Tool Local database ATP @ OCI APEX @ OCI RDB @ AWS
Oracle SQL Developer ✔️ ✔️ :x: ✔️
Oracle SQLcl ✔️ ✔️ :x: ✔️
Oracle Database Actions ✔️ ✔️ ✔️ ✔️
Oracle APEX - SQL Workshop ✔️ ✔️ ✔️ ✔️
Oracle SQL*Plus ✔️

Note: Doesn’t work with Oracle LiveSQL as there is no APEX installed

Download

Published releases are available for download on the OPM GitHub Releases Pages.

Documentation

Full documentation of the project is automatically published on OPM repository pages

Installation

To install the OPM into a new database schema and grant it to public, execute the script install.sql. This will create a new user OPM, grant all required privileges to that user and create PUBLIC synonyms needed.

For detailed instructions on other install options see the Install Guide