Skip to content

feat(ora): add Oracle support#587

Open
vdelacruzb wants to merge 24 commits intomainfrom
feature/sc-533877/analytics-toolbox-implementation-for-oracle
Open

feat(ora): add Oracle support#587
vdelacruzb wants to merge 24 commits intomainfrom
feature/sc-533877/analytics-toolbox-implementation-for-oracle

Conversation

@vdelacruzb
Copy link
Contributor

@vdelacruzb vdelacruzb commented Feb 23, 2026

Description

Shortcut

This PR adds core Oracle support to the Analytics Toolbox, implementing the foundational infrastructure for deploying SQL functions to Oracle Autonomous Database.

Summary of Changes

Core Oracle Implementation:

  • Build system and deployment scripts for Oracle
  • Schema management (create/drop schema scripts)
  • Wallet-based authentication for Oracle Autonomous Database
  • SQL UDF deployment infrastructure
  • Testing framework for Oracle functions

Standardization:

  • Uses ORA_* prefix for all environment variables (consistent with BQ_, SF_, RS_ pattern)
  • Implements ORA_SCHEMA for explicit schema naming (Oracle schemas are tied to users)
  • Template variable system with @@ORA_SCHEMA@@, @@ORA_VERSION_FUNCTION@@, @@ORA_PACKAGE_VERSION@@

Build System:

  • build_modules.js: Dependency resolution and module ordering
  • GRANT_ACCESS.sql: Helper procedure for permission management (always included)
  • INTERNAL_DROP_FUNCTIONS.sql: Clean function removal
  • VERSION.sql: Version tracking function

Deployment Infrastructure:

  • run_script.py: SQL script execution with wallet authentication
  • create_schema.py: Schema-only user creation with NO AUTHENTICATION
  • drop_schema.py: Schema cleanup and removal

CI/CD:

  • GitHub Actions workflow for Oracle (test, deploy-internal jobs)
  • Dynamic schema naming for CI environments (CI_{sha}_{run_id})
  • Automated testing on Oracle Autonomous Database

Documentation:

  • Environment variable configuration guide
  • Wallet authentication setup instructions
  • Schema management best practices
  • Cross-schema access patterns

Type of change

  • Feature

Acceptance

Tested:

  • Make lint, deploy, test.
  • Add and remove dedicated label.
  • Install from created package.

Basic checklist

  • Good PR name
  • Shortcut link
  • Just one issue per PR
  • GitHub labels
  • Proper status & reviewers
  • Tests
  • Documentation

@vdelacruzb vdelacruzb requested a review from a team as a code owner February 23, 2026 11:42
@github-actions
Copy link
Contributor

github-actions bot commented Mar 3, 2026

Dedicated DEDICATED_587_CARTO schema deployed in Oracle Autonomous Database

@github-actions
Copy link
Contributor

github-actions bot commented Mar 3, 2026

Dedicated environment removed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant