This commit is contained in:
Grzegorz Michalski
2026-02-02 11:55:21 +01:00
parent 00063f1d0b
commit aac908ebba
2 changed files with 24 additions and 13 deletions

View File

@@ -1,12 +1,23 @@
Kolejność wdrażania paczek: Kolejność wdrażania paczek:
REL01
MARS-1049 MARS-1049
MARS-1049-ADHOC MARS-1049-ADHOC
MARS-1056 MARS-1056
REL02 REL02
MARS-1046 MARS-1046
-- Obecnie na środowisku DEV
REL01_ADDITIONS
MARS-835-PREHOOK
MARS-835
MARS-826
-- AKtualnie pracuje nad:
MARS-828
-- Poniżej czeka na wdrożenie
REL03
MARS-1057 MARS-1057
'3.4.0 (2025-11-27): MARS-1057 - Added CREATE_EXTERNAL_TABLES_SET and CREATE_EXTERNAL_TABLES_BATCH procedures for batch external table creation' || CHR(13)||CHR(10) || '3.4.0 (2025-11-27): MARS-1057 - Added CREATE_EXTERNAL_TABLES_SET and CREATE_EXTERNAL_TABLES_BATCH procedures for batch external table creation' || CHR(13)||CHR(10) ||

View File

@@ -84,7 +84,7 @@ c:\_git\_local_rep\
│ ├── MARS_Packages\ │ ├── MARS_Packages\
│ │ └── REL01\ │ │ └── REL01\
│ │ └── MARS-1057\ # New package folder │ │ └── MARS-1057\ # New package folder
│ │ ├── current_version\ │ │ ├── rollback_version\
│ │ ├── new_version\ │ │ ├── new_version\
│ │ └── *.sql files │ │ └── *.sql files
│ ├── database\ │ ├── database\
@@ -781,7 +781,7 @@ mock_data/
- track_package_versions.sql and verify_packages_version.sql - track_package_versions.sql and verify_packages_version.sql
- README.md - README.md
- .gitignore (with standardized exclusions) - .gitignore (with standardized exclusions)
- current_version/ and new_version/ folders (if package modifications) - rollback_version/ and new_version/ folders (if package modifications)
- Core deployment files only - Core deployment files only
Standard MARS package directory structure: Standard MARS package directory structure:
@@ -800,7 +800,7 @@ MARS_Packages/REL01/MARS-XXXX/
├── verify_packages_version.sql # Package verification script ├── verify_packages_version.sql # Package verification script
├── ... ├── ...
├── README.md # Package documentation ├── README.md # Package documentation
├── current_version/ # Backup of objects BEFORE changes (for rollback) ├── rollback_version/ # Backup of objects BEFORE changes (for rollback)
│ ├── PACKAGE_NAME.pkg # Previous package specification │ ├── PACKAGE_NAME.pkg # Previous package specification
│ └── PACKAGE_NAME.pkb # Previous package body │ └── PACKAGE_NAME.pkb # Previous package body
├── new_version/ # Updated objects AFTER changes (for installation) ├── new_version/ # Updated objects AFTER changes (for installation)
@@ -826,12 +826,12 @@ MARS_Packages/REL01/MARS-XXXX/
- **Master scripts**: `install_marsXXXX.sql` and `rollback_marsXXXX.sql` - **Master scripts**: `install_marsXXXX.sql` and `rollback_marsXXXX.sql`
**Version Management Folders (for Database Object Modifications):** **Version Management Folders (for Database Object Modifications):**
- **`current_version/`** - Contains backup of database objects BEFORE changes (for rollback) - **`rollback_version/`** - Contains backup of database objects BEFORE changes (for rollback)
- **`new_version/`** - Contains updated database objects AFTER changes (for installation) - **`new_version/`** - Contains updated database objects AFTER changes (for installation)
**When to use version folders:** **When to use version folders:**
- Required when MARS package modifies ANY existing database objects (packages, tables, views, indexes, triggers, etc.) - Required when MARS package modifies ANY existing database objects (packages, tables, views, indexes, triggers, etc.)
- Copy original object definitions to `current_version/` before making changes - Copy original object definitions to `rollback_version/` before making changes
- Place modified object definitions in `new_version/` after changes - Place modified object definitions in `new_version/` after changes
- Examples: FILE_MANAGER.pkg/pkb, A_SOURCE_FILE_CONFIG.sql (table), V_STATUS.sql (view), IDX_CONFIG.sql (index) - Examples: FILE_MANAGER.pkg/pkb, A_SOURCE_FILE_CONFIG.sql (table), V_STATUS.sql (view), IDX_CONFIG.sql (index)
@@ -1021,7 +1021,7 @@ MARS_Packages/REL01_POST_DEACTIVATION/MARS-835-PREHOOK/
├── track_package_versions.sql # ✅ Universal tracking ├── track_package_versions.sql # ✅ Universal tracking
├── verify_packages_version.sql # ✅ Universal verification ├── verify_packages_version.sql # ✅ Universal verification
├── README.md ├── README.md
├── current_version/ ├── rollback_version/
│ ├── DATA_EXPORTER.pkg # v2.1.1 (before changes) │ ├── DATA_EXPORTER.pkg # v2.1.1 (before changes)
│ └── DATA_EXPORTER.pkb │ └── DATA_EXPORTER.pkb
├── new_version/ ├── new_version/
@@ -1563,7 +1563,7 @@ Before creating a MARS package, ensure:
- [ ] README.md documents installation process - [ ] README.md documents installation process
- [ ] Rollback scripts reverse all changes - [ ] Rollback scripts reverse all changes
- [ ] Rollback includes verification step (@@test/verify_packages_version.sql) - [ ] Rollback includes verification step (@@test/verify_packages_version.sql)
- [ ] **current_version/ folder**: Contains backup of objects before changes (if modifying packages) - [ ] **rollback_version/ folder**: Contains backup of objects before changes (if modifying packages)
- [ ] **new_version/ folder**: Contains updated objects after changes (if modifying packages) - [ ] **new_version/ folder**: Contains updated objects after changes (if modifying packages)
- [ ] **test/ folder**: All test files and verification scripts organized in subfolder - [ ] **test/ folder**: All test files and verification scripts organized in subfolder
- [ ] **log/ folder**: SPOOL log files automatically created by master scripts - [ ] **log/ folder**: SPOOL log files automatically created by master scripts
@@ -1591,7 +1591,7 @@ MARS_Packages/REL01/MARS-1046/
├── track_package_versions.sql # Version tracking ├── track_package_versions.sql # Version tracking
├── verify_packages_version.sql # Package verification ├── verify_packages_version.sql # Package verification
├── README.md # Comprehensive documentation ├── README.md # Comprehensive documentation
├── current_version/ # v3.3.0 backup for rollback ├── rollback_version/ # v3.3.0 backup for rollback
│ ├── FILE_MANAGER.pkg │ ├── FILE_MANAGER.pkg
│ └── FILE_MANAGER.pkb │ └── FILE_MANAGER.pkb
├── new_version/ # v3.3.1 updated packages ├── new_version/ # v3.3.1 updated packages
@@ -1613,7 +1613,7 @@ MARS_Packages/REL01/MARS-1046/
- SPOOL logging: `INSTALL_MARS_1046_<PDB>_<timestamp>.log` - SPOOL logging: `INSTALL_MARS_1046_<PDB>_<timestamp>.log`
- ACCEPT validation: Requires explicit "YES" to proceed (both install & rollback) - ACCEPT validation: Requires explicit "YES" to proceed (both install & rollback)
- quit; command: Clean SQLcl exit after completion - quit; command: Clean SQLcl exit after completion
- Version folders: current_version/ (v3.3.0) and new_version/ (v3.3.1) - Version folders: rollback_version/ (v3.3.0) and new_version/ (v3.3.1)
- Test subfolder: All test files organized separately - Test subfolder: All test files organized separately
- 4-step workflow: Install packages → Track version → Verify packages → quit - 4-step workflow: Install packages → Track version → Verify packages → quit
- Full rollback: Restore to previous version with verification - Full rollback: Restore to previous version with verification
@@ -1680,7 +1680,7 @@ Move-Item -Path "*.log" -Destination "log" -Force
**Step 4: Verify clean structure** **Step 4: Verify clean structure**
```powershell ```powershell
# Check root directory - should only have deployment scripts and README # Check root directory - should only have deployment scripts and README
Get-ChildItem | Where-Object { $_.Name -notmatch "^(01|02|91|92|install|rollback|README|current_version|new_version|test|log)" } Get-ChildItem | Where-Object { $_.Name -notmatch "^(01|02|91|92|install|rollback|README|rollback_version|new_version|test|log)" }
# Expected: No output (all non-deployment files moved) # Expected: No output (all non-deployment files moved)
``` ```
@@ -1696,7 +1696,7 @@ MARS_Packages/REL01/MARS-XXXX/
├── track_package_versions.sql ├── track_package_versions.sql
├── verify_packages_version.sql ├── verify_packages_version.sql
├── README.md # Documentation ├── README.md # Documentation
├── current_version/ # Backup packages ├── rollback_version/ # Backup packages
├── new_version/ # Updated packages ├── new_version/ # Updated packages
└── test/ # ALL test artifacts └── test/ # ALL test artifacts
├── test_marsXXXX.sql ├── test_marsXXXX.sql