This commit is contained in:
Grzegorz Michalski
2026-02-02 10:59:29 +01:00
commit ecd833f682
679 changed files with 122717 additions and 0 deletions

View File

@@ -0,0 +1,116 @@
# Simple Package Version Tracking
## Overview
Simple Oracle package version tracking system with a **clear package list** at the beginning of the script.
> **📖 For comprehensive deployment workflow, see:** [Package Deployment Guide](Package_Deployment_Guide.md)
> This document covers only the tracking script usage. For full deployment process, version update guidelines, and troubleshooting, refer to the main deployment guide.
## Available Scripts
1. **track_package_versions.sql** - Tracks package versions in ENV_MANAGER system
2. **verify_packages_version.sql** - Verifies all tracked packages for code changes
## How to Use?
### Step 1: Edit Package List
Open `track_package_versions.sql` and edit the package list section:
```sql
-- ===================================================================
-- PACKAGE LIST - Edit this array to specify packages to track
-- ===================================================================
vPackageList t_string_array := t_string_array(
'CT_MRDS.FILE_MANAGER',
'ODS.FILE_MANAGER_ODS'
-- Add more packages here:
-- ,'CT_MRDS.DATA_EXPORTER'
-- ,'MRDS_LOADER.CLOUD_WRAPPER'
);
-- ===================================================================
```
### Step 2: Use in Your Script
```sql
-- install_mars1049.sql
PROMPT Installing packages...
@@new_version/FILE_MANAGER.pkg
@@new_version/FILE_MANAGER.pkb
PROMPT Tracking versions...
@@track_package_versions.sql
PROMPT Verifying all packages...
@@verify_packages_version.sql
```
## Script Details
### track_package_versions.sql
- **Purpose**: Register package versions in A_PACKAGE_VERSION_TRACKING
- **When**: After installing/rolling back packages
- **Output**: Simple list of package versions
### verify_packages_version.sql
- **Purpose**: Verify all tracked packages for code changes
- **When**: At the end of install/rollback scripts
- **Output**: Detailed status for all tracked packages (OK/WARNING)
## Example Output
```
========================================
Package Version Tracking
========================================
Packages tracked: 2 of 2
CT_MRDS.FILE_MANAGER = 3.2.1
ODS.FILE_MANAGER_ODS = 2.1.0
========================================
```
## Configuration Examples
### MARS-1049 (FILE_MANAGER System)
```sql
vPackageList t_string_array := t_string_array(
'CT_MRDS.FILE_MANAGER',
'ODS.FILE_MANAGER_ODS'
);
```
### MARS-1011 (WORKFLOW_MANAGER)
```sql
vPackageList t_string_array := t_string_array(
'CT_MRDS.WORKFLOW_MANAGER'
);
```
### System with Multiple Packages
```sql
vPackageList t_string_array := t_string_array(
'CT_MRDS.FILE_MANAGER',
'CT_MRDS.DATA_EXPORTER',
'CT_MRDS.FILE_ARCHIVER',
'ODS.FILE_MANAGER_ODS',
'MRDS_LOADER.CLOUD_WRAPPER'
);
```
## Requirements
Each package in the list must have:
```sql
FUNCTION GET_VERSION RETURN VARCHAR2;
```
## Benefits
- **Clear List** - see immediately which packages are tracked
- **Easy Editing** - add/remove package lines
- **Zero Configuration** - aside from the package list
- **Universal** - copy script to any MARS issue
- **Simple Output** - just package names and versions