Tentang Repositori
Repositori Composer-Airflow adalah repositori hanya baca yang berisi kode Apache Airflow yang di-patch dan berjalan di Cloud Composer. Hal ini dapat digunakan sebagai referensi serta pengujian dan pengembangan lokal.
Versi Apache Airflow tertentu yang ditemukan di Cloud Composer tidak selalu sama persis dengan versi terkait di Airflow upstream karena Cloud Composer menggunakan versi Airflow yang di-patch. Repositori ini menyimpan kode untuk setiap versi Airflow yang di-patch yang digunakan di Cloud Composer. Untuk mengetahui informasi tentang versi Airflow mana yang ditemukan di Cloud Composer, lihat daftar Versi Cloud Composer.
Berkontribusi
Kode ini bukan fork Apache Airflow - kode yang ditemukan di repositori ini berasal langsung dari repositori Apache Airflow, tetapi pada linimasa yang berbeda dari rilis Apache Airflow biasa. Jika Anda ingin berkontribusi pada codebase ini, harap jangan lakukan di sini - Permintaan Pull tidak diterima dalam repositori ini dan harus dikontribusikan secara langsung ke Airflow.
Masalah + Dukungan
Jika Anda mengalami masalah dengan kode yang ditemukan di repositori ini, ikuti petunjuk pelaporan bug Airflow. Jika Anda mengalami masalah dengan Cloud Composer, gunakan saluran dukungan Cloud Composer.
Menavigasi Repositori
Repositori memiliki satu cabang untuk setiap versi Airflow yang tersedia di Cloud Composer. Tidak semua versi Airflow didukung di Cloud Composer. Untuk mengetahui informasi tentang dukungan versi, lihat Pembuatan Versi Cloud Composer.
Kasus Penggunaan
Apakah commit ini dari repositori Airflow dalam versi Cloud Composer saya?
Commit SHA1 dalam repo composer-airflow tidak sesuai dengan commit SHA1 di repo upstream Airflow, yang berarti cara termudah untuk mencari commit tertentu adalah dengan menelusuri pesan commit yang sesuai.
Saat ini, Anda tidak dapat menggunakan UI GitHub untuk menelusuri pesan commit di cabang selain cabang default. Namun, Anda dapat melakukannya menggunakan CLI git
. Untuk menelusuri commit tertentu dalam repositori ini, Anda harus menginstal git
.
- Clone repositori dan ubah ke direktori repositori menggunakan perintah berikut:
git clone git@github.com:GoogleCloudPlatform/composer-airflow.git && cd composer-airflow
Telusuri pesan commit:
git log --source --grep="COMMIT_MESSAGE" --all
dengan:
--source
menunjukkan cabang tempat commit ditemukan--grep
memberi tahugit
pesan apa yang ditelusuri lognya--all
memberi tahugit
untuk menelusuri semua cabang
Cabang tersebut terletak di sebelah hash commit di baris pertama setiap hasil. Jika perintah tersebut menampilkan commit, artinya commit tersebut ada dalam versi Cloud Composer Anda. Selain itu, jika versi Airflow di lingkungan Anda lebih baru dari versi cabang, commit akan digunakan di versi Airflow lingkungan Anda.
Misalnya, jika ingin menelusuri pesan commit "ForcePenting pilihan di dependensi GPL dependensi", perintah Anda adalah:
git log --source --grep="Force explicit choice on GPL dependency" --all
dan jika ada commit yang cocok, hasil Anda akan terlihat seperti ini (mungkin ada lebih dari satu hasil).
commit 64ff1089e30e80b08bf5155edd9e49f5293ebbe4 refs/heads/<strong>1.10.2</strong>
Author: example_airflow_committer <example_airflow_committer@users.noreply.github.com>
Date: Wed Aug 1 11:25:31 2018 +0200
[AIRFLOW-2817] Force explicit choice on GPL dependency (#3660)
By default one of Apache Airflow's dependencies pulls in a GPL
library. Airflow should not install (and upgrade) without an explicit choice.
This is part of the Apache requirements as we cannot depend on Category X
software.
(cherry picked from commit c37fc0b6ba19e3fe5656ae37cef9b59cef3c29e8)
Signed-off-by: Example Airflow Committer <example_airflow_committer@users.noreply.github.com>
(cherry picked from commit b39e4532d9d1086c60b31553d08972bcc68df641)
Signed-off-by: Example Airflow Committer <example_airflow_committer@users.noreply.github.com>
GitOrigin-RevId: cefcf4c61f64be3792cbfed509b82a9eb4cc47be
Seperti apa tampilan Operator ini dalam versi Composer saya?
Jika Anda tidak menggunakan paket providers
Jika Anda mengetahui jalur file untuk operator tertentu, misalnya, GoogleCloudStorageCreateBucketOperator
, buka file tersebut menggunakan UI GitHub atau CLI.
Jika tidak mengetahui jalur filenya, Anda dapat menelusurinya dengan perintah berikut:
git grep GoogleCloudStorageCreateBucketOperator
Output-nya adalah daftar file tempat string (dalam hal ini, nama operator) dapat ditemukan. Dari daftar itu, navigasikan ke file yang sesuai dan periksa kontennya lebih lanjut.
airflow/contrib/operators/gcs_operator.py:class GoogleCloudStorageCreateBucketOperator(BaseOperator):
airflow/contrib/operators/gcs_operator.py: CreateBucket = GoogleCloudStorageCreateBucketOperator(
airflow/contrib/operators/gcs_operator.py: super(GoogleCloudStorageCreateBucketOperator, self).__init__(*args, **kwargs)
docs/code.rst:.. autoclass:: airflow.contrib.operators.gcs_operator.GoogleCloudStorageCreateBucketOperator
docs/integration.rst:- :ref:`GoogleCloudStorageCreateBucketOperator` : Creates a new cloud storage bucket.
docs/integration.rst:.. _GoogleCloudStorageCreateBucketOperator:
docs/integration.rst:GoogleCloudStorageCreateBucketOperator
docs/integration.rst:.. autoclass:: airflow.contrib.operators.gcs_operator.GoogleCloudStorageCreateBucketOperator
tests/contrib/operators/test_gcs_operator.py:from airflow.contrib.operators.gcs_operator import GoogleCloudStorageCreateBucketOperator
tests/contrib/operators/test_gcs_operator.py: operator = GoogleCloudStorageCreateBucketOperator(
Jika Anda menggunakan paket providers
Dimulai dengan versi Airflow 1.10.x tertentu, operator tertentu dan kode yang menyertainya dikemas dan dirilis secara terpisah dari Airflow inti dalam paket PyPI yang disebut "paket penyedia backport" (Airflow 1.10.x) atau "paket penyedia" (Airflow 2.0 dan yang lebih baru.) Lihat dokumentasi penyedia backport Cloud Composer untuk mengetahui informasi selengkapnya tentang penyedia backport di Cloud Composer.
Versi tertentu dari paket ini diinstal secara default di Cloud Composer. Untuk mengetahui versi yang diinstal di lingkungan Anda, periksa kolom "Paket PyPI untuk Python 3" pada daftar versi.
Guna melihat kode untuk operator dalam rilis tertentu:
UI GitHub
- Buka repo upstream Airflow.
- Masukkan nama operator tertentu yang Anda telusuri di kotak penelusuran GitHub di bagian atas halaman.
- Jika ada lebih dari satu file yang ditampilkan, klik file kode dengan jalur yang diawali di
airflow/providers
. Misalnya, jika Anda menelusuriGoogleCloudStorageCreateBucketOperator
, pilihairflow/providers/google/cloud/operators/gcs.py
. - Klik pemilih cabang, yang akan membuka menu drop-down "Switch branch/tags".
- Klik tab "Tag".
- Untuk paket
providers
, telusuri nama penyedia Anda dan versinya dengan mengetikproviders-PROVIDER_NAME/PROVIDER_VERSION
di kotak penelusuran menu drop-down, denganPROVIDER_NAME
sebagai nama penyedia, danPROVIDER_VERSION
sebagai nama versi yang Anda cari. Misalnya, jika ingin melihat versi4.0.0
dari paketapache-airflow-providers-google
, Anda perlu menelusuriproviders-google/4.0.0
. - Untuk paket
backport-providers
, telusuribackport-providers-PROVIDER_VERSION
di kotak penelusuran menu drop-down. Misalnya, jika ingin melihat versi2021.3.3
dari paketapache-airflow-backport-providers-google
, Anda akan menelusuribackport-providers-2021.3.3
. - Klik pada hasil yang cocok dengan kueri Anda.
- Kode di layar persis dengan kode yang berjalan di versi operator Anda. Anda juga dapat mengklik Histori untuk melihat histori komitmen hingga tahap ini.
CLI git
- Clone repo upstream Airflow.
- Untuk paket
providers
, jalankangit checkout providers-PROVIDER_NAME/PROVIDER_VERSION
denganPROVIDER_NAME
adalah nama penyedia, danPROVIDER_VERSION
adalah nama versi yang Anda cari. Misalnya, jika ingin melihat versi4.0.0
dari paketapache-airflow-providers-google
, Anda harus menjalankangit checkout providers-google/4.0.0
. - Untuk paket
backport-providers
, jalankangit checkout backport-providers-PROVIDER_VERSION
di kotak penelusuran menu drop-down. Misalnya, jika ingin melihat versi2021.3.3
dari paketapache-airflow-backport-providers-google
, Anda harus menjalankangit checkout backport-providers-2021.3.3
.
Kemudian, ikuti petunjuk di bagian Jika Anda tidak menggunakan paket providers