Add Oracle Cloud Infrastructure (OCI) connection and Generative AI hook#70160
Open
AlejandroMorgante wants to merge 2 commits into
Open
Add Oracle Cloud Infrastructure (OCI) connection and Generative AI hook#70160AlejandroMorgante wants to merge 2 commits into
AlejandroMorgante wants to merge 2 commits into
Conversation
AlejandroMorgante
force-pushed
the
add-oci-generative-ai-hook
branch
from
July 21, 2026 04:32
0bbd204 to
7bf3b0a
Compare
Oracle users need a shared authentication foundation for OCI services and native access to Hosted Application management APIs, matching the client-based integration pattern used by other cloud providers.
The lowest-direct-dependencies environment intentionally excludes optional FAB form packages, so Oracle tests must remain collectible without them.
AlejandroMorgante
force-pushed
the
add-oci-generative-ai-hook
branch
from
July 21, 2026 12:57
7bf3b0a to
b3db666
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds foundational Oracle Cloud Infrastructure support to the Oracle provider so Airflow can integrate with OCI Generative AI Hosted Applications and Hosted Deployments.
OCI Generative AI management APIs are available through the official OCI Python SDK, while the Oracle provider previously focused on Oracle Database integrations. This PR establishes the reusable OCI connection and native-client hooks needed before lifecycle operators can be added in follow-up work.
New connection
ociconnection type — stores inline OCI API key credentials, a default region, and an optional compartment OCID independently from the existing Oracle Database connection.IdentityClient.list_regionswithout depending on a Generative AI resource.New hooks
OciBaseHook— builds OCI SDK configuration and signers, creates native OCI service clients, resolves compartment IDs, supports explicit service endpoints, and caches the configured client.OciGenerativeAIHook— selects and exposes the nativeGenerativeAiClientthroughconnandget_conn()for Hosted Application, Hosted Deployment, and work-request lifecycle operations.The hook architecture follows the native-client pattern used by the Amazon provider's boto3 hooks: the specialized hook selects the appropriate SDK client while callers and future operators use the native client directly. This preserves OCI response data, ETags, request identifiers, work-request identifiers, retry options, pagination, and concurrency-control arguments.
Packaging and security
ociprovider extra because it requires the LGPL-licensedcrc32ctransitive dependency. OCI functionality is therefore genuinely optional for users who only use Oracle Database integrations.AirflowOptionalProviderFeatureExceptionwith installation guidance when OCI functionality is requested.Other changes
Testing
uv lock --checkpassed.oci_defaultConnection test succeeded using inlinekey_content, and the native Generative AI hook listed Hosted Applications and Hosted Deployments inus-chicago-1.No OCI resources were created, updated, or deleted during the live smoke test.
Connection UI
This PR introduces a new Connection type, so there is no equivalent before state.
Was generative AI tooling used to co-author this PR?
Generated-by: Codex (GPT-5) following the guidelines