The GitHub Actions job "Update constraints on push for main (only when uv.lock 
changes)" on airflow.git/main has succeeded.
Run started by GitHub user potiuk (triggered by potiuk).

Head commit for run:
d8961101b03be1b992d17c9c4b27be323afe4f39 / 이승오(Data Platform) 
<[email protected]>
Add MongoToGCSOperator to copy MongoDB collections to GCS (#66013)

* Add MongoToGCSOperator to copy MongoDB collections to GCS

Introduces a new transfer operator under the Google provider that exports
MongoDB documents to Google Cloud Storage in JSON, CSV, or Parquet format.
The operator extends BaseSQLToGCSOperator and accepts either a find filter
or an aggregation pipeline through mongo_query, with optional projection
and allowDiskUse controls.

A small cursor adapter wraps the pymongo cursor as a DB-API style cursor
so the parent operator chunking, schema inference, and upload flow can
be reused. BSON-specific values (ObjectId, Decimal128, bytes) are
converted to BigQuery-friendly types.

Includes provider.yaml registration, mongo provider as a transitive extra,
unit tests, system test example, and how-to documentation.

* Fix CI failures for MongoToGCSOperator PR

- mongo_to_gcs.py: declare cursor as Any so the find/aggregate
  branches don't trip mypy's stricter type narrowing.
- test_selective_checks: add mongo to google-related expected
  provider lists, now that mongo is a google cross-provider dep.
- get_provider_info.py: register the mongo_to_gcs transfer so the
  provider build-files check stays in sync with provider.yaml.
- uv.lock: refresh to add the mongo extra and pick up an
  unrelated dev/registry tomli dep that was already on main.

* Regenerate google docs/index.rst for new mongo cross-provider dep

The update-providers-build-files prek hook also regenerates the
google provider docs/index.rst from provider.yaml. The previous
fixup commit added mongo to provider.yaml/pyproject.toml but did
not include the docs/index.rst line, so the CI hook kept failing.

* Address review feedback on MongoToGCSOperator

- Document why MongoToGCSOperator reuses the SQL-to-GCS base class despite
  MongoDB being a NoSQL store, and note a possible future 
BaseNoSQLToGCSOperator.
- Drop the inherited but unused `sql` template field (and the `.sql` template
  extension / sql renderer) so the empty `sql` value is no longer exposed in
  rendered templates; this operator is driven by `mongo_query`.
- Use `autospec=True` when patching MongoHook/GCSHook in the unit tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <[email protected]>

Report URL: https://github.com/apache/airflow/actions/runs/27201327907

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to