From cfa6b794f7f6b6641daa3e8899e4c875e7669af4 Mon Sep 17 00:00:00 2001 From: John Connelly Date: Tue, 10 Mar 2026 16:34:14 -0700 Subject: [PATCH 1/2] Added new OCI region codes Also set up autogeneration of OCI region codes --- src/borneo/config.py | 759 +++++++++++++++++++++++++++++++++---------- 1 file changed, 593 insertions(+), 166 deletions(-) diff --git a/src/borneo/config.py b/src/borneo/config.py index 78016e4..6b38031 100644 --- a/src/borneo/config.py +++ b/src/borneo/config.py @@ -227,7 +227,7 @@ def _check_retryable_exception(re): raise IllegalArgumentException( 're must be an instance of RetryableException.') - +# === Begin autogenerated regions === class Region(object): """ Cloud service only. @@ -251,12 +251,28 @@ class Region(object): OC20_EP_BASE = 'https://nosql.{0}.oci.oraclecloud20.com' OC21_EP_BASE = 'https://nosql.{0}.oci.oraclecloud21.com' OC22_EP_BASE = 'https://nosql.{0}.oci.psn-pco.it' + OC23_EP_BASE = 'https://nosql.{0}.oci.oraclecloud23.com' OC24_EP_BASE = 'https://nosql.{0}.oci.oraclecloud24.com' OC25_EP_BASE = 'https://nosql.{0}.oci.nricloud.jp' OC26_EP_BASE = 'https://nosql.{0}.oci.oraclecloud26.com' OC27_EP_BASE = 'https://nosql.{0}.oci.oraclecloud27.com' OC28_EP_BASE = 'https://nosql.{0}.oci.oraclecloud28.com' + OC29_EP_BASE = 'https://nosql.{0}.oci.oraclecloud29.com' OC31_EP_BASE = 'https://nosql.{0}.oci.sovereigncloud.nz' + OC35_EP_BASE = 'https://nosql.{0}.oci.oraclecloud35.com' + OC36_EP_BASE = 'https://nosql.{0}.oci.stccloud.com' + OC39_EP_BASE = 'https://nosql.{0}.oci.oraclecloud39.com' + OC40_EP_BASE = 'https://nosql.{0}.oci.jpsovereigncloud.jp' + OC41_EP_BASE = 'https://nosql.{0}.oci.dutechcloud.ae' + OC42_EP_BASE = 'https://nosql.{0}.oci.oraclecloud42.com' + OC43_EP_BASE = 'https://nosql.{0}.oci.thaiaiscloud.com' + OC46_EP_BASE = 'https://nosql.{0}.oci.oraclecloud46.com' + OC47_EP_BASE = 'https://nosql.{0}.oci.oraclecloud47.com' + OC51_EP_BASE = 'https://nosql.{0}.oci.oraclecloud51.com' + OC52_EP_BASE = 'https://nosql.{0}.oci.oraclecloud52.com' + OC55_EP_BASE = 'https://nosql.{0}.oci.svcl.jp' + OC57_EP_BASE = 'https://nosql.{0}.oci.eonecloud.com' + def __init__(self, region_id): self._region_id = region_id @@ -303,6 +319,8 @@ def endpoint(self): return str.format(Region.OC21_EP_BASE, self._region_id) if self._is_oc22_region(): return str.format(Region.OC22_EP_BASE, self._region_id) + if self._is_oc23_region(): + return str.format(Region.OC23_EP_BASE, self._region_id) if self._is_oc24_region(): return str.format(Region.OC24_EP_BASE, self._region_id) if self._is_oc25_region(): @@ -313,8 +331,36 @@ def endpoint(self): return str.format(Region.OC27_EP_BASE, self._region_id) if self._is_oc28_region(): return str.format(Region.OC28_EP_BASE, self._region_id) + if self._is_oc29_region(): + return str.format(Region.OC29_EP_BASE, self._region_id) if self._is_oc31_region(): return str.format(Region.OC31_EP_BASE, self._region_id) + if self._is_oc35_region(): + return str.format(Region.OC35_EP_BASE, self._region_id) + if self._is_oc36_region(): + return str.format(Region.OC36_EP_BASE, self._region_id) + if self._is_oc39_region(): + return str.format(Region.OC39_EP_BASE, self._region_id) + if self._is_oc40_region(): + return str.format(Region.OC40_EP_BASE, self._region_id) + if self._is_oc41_region(): + return str.format(Region.OC41_EP_BASE, self._region_id) + if self._is_oc42_region(): + return str.format(Region.OC42_EP_BASE, self._region_id) + if self._is_oc43_region(): + return str.format(Region.OC43_EP_BASE, self._region_id) + if self._is_oc46_region(): + return str.format(Region.OC46_EP_BASE, self._region_id) + if self._is_oc47_region(): + return str.format(Region.OC47_EP_BASE, self._region_id) + if self._is_oc51_region(): + return str.format(Region.OC51_EP_BASE, self._region_id) + if self._is_oc52_region(): + return str.format(Region.OC52_EP_BASE, self._region_id) + if self._is_oc55_region(): + return str.format(Region.OC55_EP_BASE, self._region_id) + if self._is_oc57_region(): + return str.format(Region.OC57_EP_BASE, self._region_id) raise IllegalArgumentException( 'Unable to find endpoint for unknown region ' + self._region_id) @@ -361,14 +407,14 @@ def _is_oc10_region(self): # Internal use only return Regions.OC10_REGIONS.get(self._region_id) is not None - def _is_oc15_region(self): - # Internal use only - return Regions.OC15_REGIONS.get(self._region_id) is not None - def _is_oc14_region(self): # Internal use only return Regions.OC14_REGIONS.get(self._region_id) is not None + def _is_oc15_region(self): + # Internal use only + return Regions.OC15_REGIONS.get(self._region_id) is not None + def _is_oc16_region(self): # Internal use only return Regions.OC16_REGIONS.get(self._region_id) is not None @@ -393,6 +439,10 @@ def _is_oc22_region(self): # Internal use only return Regions.OC22_REGIONS.get(self._region_id) is not None + def _is_oc23_region(self): + # Internal use only + return Regions.OC23_REGIONS.get(self._region_id) is not None + def _is_oc24_region(self): # Internal use only return Regions.OC24_REGIONS.get(self._region_id) is not None @@ -413,10 +463,65 @@ def _is_oc28_region(self): # Internal use only return Regions.OC28_REGIONS.get(self._region_id) is not None + def _is_oc29_region(self): + # Internal use only + return Regions.OC29_REGIONS.get(self._region_id) is not None + def _is_oc31_region(self): # Internal use only return Regions.OC31_REGIONS.get(self._region_id) is not None + def _is_oc35_region(self): + # Internal use only + return Regions.OC35_REGIONS.get(self._region_id) is not None + + def _is_oc36_region(self): + # Internal use only + return Regions.OC36_REGIONS.get(self._region_id) is not None + + def _is_oc39_region(self): + # Internal use only + return Regions.OC39_REGIONS.get(self._region_id) is not None + + def _is_oc40_region(self): + # Internal use only + return Regions.OC40_REGIONS.get(self._region_id) is not None + + def _is_oc41_region(self): + # Internal use only + return Regions.OC41_REGIONS.get(self._region_id) is not None + + def _is_oc42_region(self): + # Internal use only + return Regions.OC42_REGIONS.get(self._region_id) is not None + + def _is_oc43_region(self): + # Internal use only + return Regions.OC43_REGIONS.get(self._region_id) is not None + + def _is_oc46_region(self): + # Internal use only + return Regions.OC46_REGIONS.get(self._region_id) is not None + + def _is_oc47_region(self): + # Internal use only + return Regions.OC47_REGIONS.get(self._region_id) is not None + + def _is_oc51_region(self): + # Internal use only + return Regions.OC51_REGIONS.get(self._region_id) is not None + + def _is_oc52_region(self): + # Internal use only + return Regions.OC52_REGIONS.get(self._region_id) is not None + + def _is_oc55_region(self): + # Internal use only + return Regions.OC55_REGIONS.get(self._region_id) is not None + + def _is_oc57_region(self): + # Internal use only + return Regions.OC57_REGIONS.get(self._region_id) is not None class Regions(object): """ @@ -456,368 +561,584 @@ class Regions(object): and Availability Domains `_. """ - # OC1 AF_JOHANNESBURG_1 = Region('af-johannesburg-1') - """Region Location: Johannesburg, South Africa""" + """Realm: OC1, South Africa (Johannesburg)""" + + AP_BATAM_1 = Region('ap-batam-1') + """Realm: OC1, Indonesia North (Batam)""" + + AP_CHENNAI_1 = Region('ap-chennai-1') + """India South (Chennai)""" AP_CHUNCHEON_1 = Region('ap-chuncheon-1') - """Region Location: Chuncheon, South Korea""" + """Realm: OC1, South Korea North (Chuncheon)""" + AP_HYDERABAD_1 = Region('ap-hyderabad-1') - """Region Location: Hyderabad, India""" + """Realm: OC1, India South (Hyderabad)""" + + AP_KULAI_1 = Region('ap-kulai-1') + """Malaysia West (Kulai)""" + AP_MELBOURNE_1 = Region('ap-melbourne-1') - """Region Location: Melbourne, Australia""" + """Realm: OC1, Australia Southeast (Melbourne)""" + AP_MUMBAI_1 = Region('ap-mumbai-1') - """Region Location: Mumbai, India""" + """Realm: OC1, India West (Mumbai)""" + AP_OSAKA_1 = Region('ap-osaka-1') - """Region Location: Osaka, Japan""" + """Realm: OC1, Japan Central (Osaka)""" + AP_SEOUL_1 = Region('ap-seoul-1') - """Region Location: Seoul, South Korea""" + """Realm: OC1, South Korea Central (Seoul)""" + AP_SINGAPORE_1 = Region('ap-singapore-1') - """Region Location: Singapore""" + """Realm: OC1, Singapore (Singapore)""" + + AP_SINGAPORE_2 = Region('ap-singapore-2') + """Realm: OC1, Singapore2 (Singapore)""" + AP_SYDNEY_1 = Region('ap-sydney-1') - """Region Location: Sydney, Australia""" + """Realm: OC1, Australia East (Sydney)""" + AP_TOKYO_1 = Region('ap-tokyo-1') - """Region Location: Tokyo, Japan""" + """Realm: OC1, Japan East (Tokyo)""" - UK_CARDIFF_1 = Region('uk-cardiff-1') - """Region Location: Cardiff, United Kingdom""" - UK_LONDON_1 = Region('uk-london-1') - """Region Location: London, United Kingdom""" + CA_MONTREAL_1 = Region('ca-montreal-1') + """Realm: OC1, Canada Southeast (Montreal)""" + + CA_TORONTO_1 = Region('ca-toronto-1') + """Realm: OC1, Canada Southeast (Toronto)""" EU_AMSTERDAM_1 = Region('eu-amsterdam-1') - """Region Location: Amsterdam, Netherlands""" + """Realm: OC1, Netherlands Northwest (Amsterdam)""" + + EU_DUBLIN_3 = Region('eu-dublin-3') + """Ireland East (Dublin)""" + EU_FRANKFURT_1 = Region('eu-frankfurt-1') - """Region Location: Frankfurt, Germany""" + """Realm: OC1, Germany Central (Frankfurt)""" + EU_MADRID_1 = Region('eu-madrid-1') - """Region Location: Madrid, Spain""" + """Realm: OC1, Spain (Madrid)""" + + EU_MADRID_3 = Region('eu-madrid-3') + """Spain Central (Madrid 3)""" + EU_MARSEILLE_1 = Region('eu-marseille-1') - """Region Location: Marseille, France""" + """Realm: OC1, France (Marseille)""" + EU_MILAN_1 = Region('eu-milan-1') - """Region Location: Milan, Italy""" + """Realm: OC1, Italy (Milan)""" + EU_PARIS_1 = Region('eu-paris-1') - """Region Location: Paris, France""" + """Realm: OC1, France (Paris)""" + EU_STOCKHOLM_1 = Region('eu-stockholm-1') - """Region Location: Stockholm, Sweden""" + """Realm: OC1, Sweden (Stockholm)""" + + EU_TURIN_1 = Region('eu-turin-1') + """Italy North (Turin)""" + EU_ZURICH_1 = Region('eu-zurich-1') - """Region Location: Zurich, Switzerland""" + """Realm: OC1, Switzerland North (Zurich)""" + + IL_JERUSALEM_1 = Region('il-jerusalem-1') + """Realm: OC1, Israel (Jerusalem)""" ME_ABUDHABI_1 = Region('me-abudhabi-1') - """Region Location: Abu Dhabi, UAE""" + """Realm: OC1, UAE (Abu Dhabi)""" + ME_DUBAI_1 = Region('me-dubai-1') - """Region Location: Dubai, UAE""" + """Realm: OC1, UAE East (Dubai)""" + ME_JEDDAH_1 = Region('me-jeddah-1') - """Region Location: Jeddah, Saudi Arabia""" + """Realm: OC1, Saudi Arabia West (Jeddah)""" - MX_QUERETARO_1 = Region('mx-queretaro-1') - """Region Location: Queretaro, Mexico""" - MX_MONTERREY_1 = Region('mx-monterrey-1') - """Region Location: Monterrey, Mexico""" + ME_RIYADH_1 = Region('me-riyadh-1') - IL_JERUSALEM_1 = Region('il-jerusalem-1') - """Region Location: Jerusalem, Israel""" + MX_MONTERREY_1 = Region('mx-monterrey-1') + """Realm: OC1, Mexico (Monterrey)""" - US_ASHBURN_1 = Region('us-ashburn-1') - """Region Location: Ashburn, VA""" - US_CHICAGO_1 = Region('us-chicago-1') - """Region Location: Chicago, IL """ - US_PHOENIX_1 = Region('us-phoenix-1') - """Region Location: Phoenix, AZ""" - US_SALTLAKE_2 = Region('us-saltlake-2') - """Region Location: Salt Lake City, UT """ - US_SANJOSE_1 = Region('us-sanjose-1') - """Region Location: San Jose, CA, AZ """ - CA_MONTREAL_1 = Region('ca-montreal-1') - """Region Location: Montreal, Canada""" - CA_TORONTO_1 = Region('ca-toronto-1') - """Region Location: Toronto, Canada""" + MX_QUERETARO_1 = Region('mx-queretaro-1') + """Realm: OC1, Mexico (Queretaro)""" SA_BOGOTA_1 = Region('sa-bogota-1') - """Region Location: Bogota, Colombia""" + """Realm: OC1, Colombia (Bogota)""" + SA_SANTIAGO_1 = Region('sa-santiago-1') - """Region Location: Santiago, Chile""" + """Realm: OC1, Chile (Santiago)""" + SA_SAOPAULO_1 = Region('sa-saopaulo-1') - """Region Location: Sao Paulo, Brazil""" + """Realm: OC1, Brazil East (Sao Paulo)""" + SA_VALPARAISO_1 = Region('sa-valparaiso-1') - """Region Location: Valparaiso, Chile""" + """Realm: OC1, Chile (Valparaiso)""" + SA_VINHEDO_1 = Region('sa-vinhedo-1') - """Region Location: Vinhedo, Brazil""" + """Realm: OC1, Brazil (Vinhedo)""" + + UK_LONDON_1 = Region('uk-london-1') + """Realm: OC1, UK South (London)""" + + UK_CARDIFF_1 = Region('uk-cardiff-1') + """Realm: OC1, UK West (Newport)""" + + US_ABILENE_1 = Region('us-abilene-1') + """Realm: OC1, US South Central (Abilene)""" + + US_COLUMBUS_1 = Region('us-columbus-1') + """US Central (Columbus)""" + + US_QUINCY_1 = Region('us-quincy-1') + """US West (Quincy)""" + + US_BOARDMAN_1 = Region('us-boardman-1') + """US West (Boardman)""" + + US_DALLAS_1 = Region('us-dallas-1') + """Realm: OC1, US South (Dallas)""" + + US_DESMOINES_1 = Region('us-desmoines-1') + """US Midwest (Des Moines)""" + + US_PHOENIX_1 = Region('us-phoenix-1') + """Realm: OC1, US West (Phoenix)""" + + US_ASHBURN_1 = Region('us-ashburn-1') + """Realm: OC1, US East (Ashburn)""" + + US_SALTLAKE_2 = Region('us-saltlake-2') + """Realm: OC1, US West (Salt Lake)""" + + US_SANJOSE_1 = Region('us-sanjose-1') + """Realm: OC1, US West (San Jose)""" + + US_SHAWNEE_1 = Region('us-shawnee-1') + """US Mid West (Shawnee)""" + + US_CHICAGO_1 = Region('us-chicago-1') + """Realm: OC1, US Central (Chicago)""" + + AP_KULAI_2 = Region('ap-kulai-2') + """Realm: OC1, Kulai 2""" + + AP_DELHI_1 = Region('ap-delhi-1') + """Realm: OC1, Delhi 1""" - # OC2 US_LANGLEY_1 = Region('us-langley-1') - """Region Location: Ashburn, VA""" + """Realm: OC2, US Gov East (Ashburn)""" + US_LUKE_1 = Region('us-luke-1') - """Region Location: Phoenix, AZ""" + """Realm: OC2, US Gov West (Phoenix)""" - # OC3 US_GOV_ASHBURN_1 = Region('us-gov-ashburn-1') - """Region Location: Ashburn, VA""" + """Realm: OC3, US DoD East (Ashburn)""" + US_GOV_CHICAGO_1 = Region('us-gov-chicago-1') - """Region Location: Chicago, IL""" + """Realm: OC3, US DoD North (Chicago)""" + US_GOV_PHOENIX_1 = Region('us-gov-phoenix-1') - """Region Location: Phoenix, AZ""" + """Realm: OC3, US DoD West (Phoenix)""" - # OC4 UK_GOV_LONDON_1 = Region('uk-gov-london-1') - """Region Location: London, United Kingdom""" + """Realm: OC4, UK Gov South (London)""" + UK_GOV_CARDIFF_1 = Region('uk-gov-cardiff-1') - """Region Location: Cardiff, United Kingdom""" + """Realm: OC4, UK Gov West (Cardiff)""" - # OC5 US_TACOMA_1 = Region('us-tacoma-1') - """Region Location: Tacoma, WA""" + """Realm: OC5, US West (Tacoma)""" - # OC8 AP_CHIYODA_1 = Region('ap-chiyoda-1') - """Region Location: Chiyoda, Japan""" + """Realm: OC8, Japan East (Chiyoda)""" + AP_IBARAKI_1 = Region('ap-ibaraki-1') - """Region Location: Ibaraki, Japan""" + """Realm: OC8, Japan East (Ibaraki) (Note: OCI uses 'ukb' instead of 'ibr')""" - # OC9 ME_DCC_MUSCAT_1 = Region('me-dcc-muscat-1') - """Region Location: Muscat, Oman""" + """Realm: OC9, Muscat (Dedicated DataCenter)""" + + ME_IBRI_1 = Region('me-ibri-1') + """Realm: OC9, Ibri 1""" - # OC10 AP_DCC_CANBERRA_1 = Region('ap-dcc-canberra-1') - """Region Location: Canberra, Australia""" + """Realm: OC10, Canberra (Dedicated DataCenter)""" - # OC14 - EU_DCC_MILAN_1 = Region('eu-dcc-milan-1') - """Region Location: Milan, Italy""" - EU_DCC_MILAN_2 = Region('eu-dcc-milan-2') - """Region Location: Milan, Italy""" EU_DCC_DUBLIN_1 = Region('eu-dcc-dublin-1') - """Region Location: Dublin, Ireland""" + """Realm: OC14, Dublin 1 (Dedicated DataCenter)""" + EU_DCC_DUBLIN_2 = Region('eu-dcc-dublin-2') - """Region Location: Dublin, Ireland""" + """Realm: OC14, Dublin 2 (Dedicated DataCenter)""" + + EU_DCC_MILAN_1 = Region('eu-dcc-milan-1') + """Realm: OC14, Milan 1 (Dedicated DataCenter)""" + + EU_DCC_MILAN_2 = Region('eu-dcc-milan-2') + """Realm: OC14, Milan 2 (Dedicated DataCenter)""" + EU_DCC_RATING_1 = Region('eu-dcc-rating-1') - """Region Location: Germany""" + """Realm: OC14, Rating 1 (Dedicated DataCenter)""" + EU_DCC_RATING_2 = Region('eu-dcc-rating-2') - """Region Location: Germany""" + """Realm: OC14, Rating 2 (Dedicated DataCenter)""" - # OC15 AP_DCC_GAZIPUR_1 = Region('ap-dcc-gazipur-1') - """Region Location: Bangladesh""" + """Realm: OC15, Bangladesh""" - # OC16 US_WESTJORDAN_1 = Region('us-westjordan-1') - """Region Location: Utah""" + """Realm: OC16, US West (Utah)""" - # OC17 US_DCC_PHOENIX_1 = Region('us-dcc-phoenix-1') - """Region Location: Phoenix, AZ""" + """Realm: OC17, Phoenix 1 (Dedicated DataCenter)""" + US_DCC_PHOENIX_2 = Region('us-dcc-phoenix-2') - """Region Location: Phoenix, AZ""" + """Realm: OC17, Phoenix 2 (Dedicated DataCenter)""" + US_DCC_PHOENIX_4 = Region('us-dcc-phoenix-4') - """Region Location: Phoenix, AZ""" + """Realm: OC17, Phoenix 4 (Dedicated DataCenter)""" - # OC19 EU_FRANKFURT_2 = Region('eu-frankfurt-2') - """Region Location: Frankfurt, Germany""" + """Realm: OC19, Frankfurt (Germany)""" + EU_MADRID_2 = Region('eu-madrid-2') - """Region Location: Madrid, Spain""" + """Realm: OC19, Madrid (Spain)""" - # OC20 EU_JOVANOVAC_1 = Region('eu-jovanovac-1') - """Region Location: Serbia""" + """Realm: OC20, Jovanovac (Serbia)""" - # OC20 ME_DCC_DOHA_1 = Region('me-dcc-doha-1') - """Region Location: Qatar""" + """Realm: OC21, Doha (Qatar)""" - # OC22 EU_DCC_ROME_1 = Region('eu-dcc-rome-1') - """Region Location: Rome, Italy""" + """Realm: OC22, PSN Region Rome""" + + EU_MILAN_2 = Region('eu-milan-2') + """Realm: OC22, PSN Region Milan""" + + US_SOMERSET_1 = Region('us-somerset-1') + + US_THAMES_1 = Region('us-thames-1') - # OC24 EU_DCC_ZURICH_1 = Region('eu-dcc-zurich-1') - """Region Location: Zurich, Switzerland""" + """Realm: OC24, Switzerland dedicated (Zurich)""" + + EU_CRISSIER_1 = Region('eu-crissier-1') + + AP_DCC_OSAKA_1 = Region('ap-dcc-osaka-1') + """Realm: OC25, Japan dedicated (Osaka)""" - # OC25 AP_DCC_TOKYO_1 = Region('ap-dcc-tokyo-1') - """Region Location: Tokyo, Japan""" + """Realm: OC25, Japan dedicated (Tokyo)""" - # OC26 ME_ABUDHABI_3 = Region('me-abudhabi-3') - """Region Location: Abudabhi""" + """Realm: OC26, Abudhabi""" + + ME_ALAIN_1 = Region('me-alain-1') - # OC27 US_DCC_SWJORDAN_1 = Region('us-dcc-swjordan-1') - """Region Location: Utah, USA""" + """Realm: OC27, SWJordan dedicated (Utah USA)""" - # OC28 US_DCC_SWJORDAN_2 = Region('us-dcc-swjordan-2') - """Region Location: Utah, USA""" + """Realm: OC28, SWJordan dedicated (Utah USA)""" + + ME_ABUDHABI_2 = Region('me-abudhabi-2') + """Realm: OC29, Abudhabi 2""" + + ME_ABUDHABI_4 = Region('me-abudhabi-4') + """Realm: OC29, Abudhabi 4""" - # OC31 AP_HOBSONVILLE_1 = Region('ap-hobsonville-1') - """Region Location: New Zealand""" + """Realm: OC31, Hobsonville dedicated (New Zealand)""" + + AP_SILVERDALE_1 = Region('ap-silverdale-1') + """Realm: OC31, Silverdale dedicated (New Zealand)""" + + AP_SUWON_1 = Region('ap-suwon-1') + """Realm: OC35, South Korea North (Suwon)""" + + AP_SEOUL_2 = Region('ap-seoul-2') + """Realm: OC35, South Korea North (Seoul)""" + + AP_CHUNCHEON_2 = Region('ap-chuncheon-2') + """Realm: OC35, South Korea North (Chuncheon)""" + + ME_RIYADH_2 = Region('me-riyadh-2') + """Riyadh 2 Alloy""" + + US_TUKWILA_3 = Region('us-tukwila-3') + """Realm: OC39, Butterfly Stable""" + + AP_OSAKA_2 = Region('ap-osaka-2') + """Realm: OC40, Sovereign Cloud (Japan West)""" + + AP_TATEBAYASHI_1 = Region('ap-tatebayashi-1') + """Realm: OC40, Sovereign Cloud""" + + ME_DUBAI_3 = Region('me-dubai-3') + """Realm: OC41, UAE North 1""" + + US_NEWARK_1 = Region('us-newark-1') + """Newark 1 DRCC""" + + AP_PATHUMTHANI_1 = Region('ap-pathumthani-1') + """Realm: OC43, Thailand 1 (AIS)""" + + AP_SAMUTPRAKAN_1 = Region('ap-samutprakan-1') + """Thailand 2 (AIS)""" + + UK_LONDON_2 = Region('uk-london-2') + """Realm: OC46, Butterfly Lab 1""" + + UK_LONDON_3 = Region('uk-london-3') + """Realm: OC47, Butterfly Lab 2""" + + UK_LONDON_4 = Region('uk-london-4') + """Realm: OC47, London 4""" + + EU_BUDAPEST_1 = Region('eu-budapest-1') + """Realm: OC51, Budapest""" + + SA_RIODEJANEIRO_1 = Region('sa-riodejaneiro-1') + """Realm: OC52, Rio De Janeiro""" + + AP_WESTTOKYO_1 = Region('ap-westtokyo-1') + """WestTokyo 1 Alloy""" + + ME_ABUDHABI_5 = Region('me-abudhabi-5') + """Realm: OC57, Abu Dhabi 5""" + + ME_DUBAI_4 = Region('me-dubai-4') + """Realm: OC57, Dubai 4""" + # OC1 OC1_REGIONS = dict() - """A dict containing the OC1 regions.""" OC1_REGIONS[AF_JOHANNESBURG_1.get_region_id()] = AF_JOHANNESBURG_1 - # APAC + OC1_REGIONS[AP_BATAM_1.get_region_id()] = AP_BATAM_1 + OC1_REGIONS[AP_CHENNAI_1.get_region_id()] = AP_CHENNAI_1 OC1_REGIONS[AP_CHUNCHEON_1.get_region_id()] = AP_CHUNCHEON_1 OC1_REGIONS[AP_HYDERABAD_1.get_region_id()] = AP_HYDERABAD_1 + OC1_REGIONS[AP_KULAI_1.get_region_id()] = AP_KULAI_1 OC1_REGIONS[AP_MELBOURNE_1.get_region_id()] = AP_MELBOURNE_1 OC1_REGIONS[AP_MUMBAI_1.get_region_id()] = AP_MUMBAI_1 OC1_REGIONS[AP_OSAKA_1.get_region_id()] = AP_OSAKA_1 OC1_REGIONS[AP_SEOUL_1.get_region_id()] = AP_SEOUL_1 OC1_REGIONS[AP_SINGAPORE_1.get_region_id()] = AP_SINGAPORE_1 + OC1_REGIONS[AP_SINGAPORE_2.get_region_id()] = AP_SINGAPORE_2 OC1_REGIONS[AP_SYDNEY_1.get_region_id()] = AP_SYDNEY_1 OC1_REGIONS[AP_TOKYO_1.get_region_id()] = AP_TOKYO_1 - - # EMEA - OC1_REGIONS[ME_ABUDHABI_1.get_region_id()] = ME_ABUDHABI_1 + OC1_REGIONS[CA_MONTREAL_1.get_region_id()] = CA_MONTREAL_1 + OC1_REGIONS[CA_TORONTO_1.get_region_id()] = CA_TORONTO_1 OC1_REGIONS[EU_AMSTERDAM_1.get_region_id()] = EU_AMSTERDAM_1 - OC1_REGIONS[UK_CARDIFF_1.get_region_id()] = UK_CARDIFF_1 - OC1_REGIONS[ME_DUBAI_1.get_region_id()] = ME_DUBAI_1 + OC1_REGIONS[EU_DUBLIN_3.get_region_id()] = EU_DUBLIN_3 OC1_REGIONS[EU_FRANKFURT_1.get_region_id()] = EU_FRANKFURT_1 - OC1_REGIONS[ME_JEDDAH_1.get_region_id()] = ME_JEDDAH_1 - OC1_REGIONS[IL_JERUSALEM_1.get_region_id()] = IL_JERUSALEM_1 - OC1_REGIONS[UK_LONDON_1.get_region_id()] = UK_LONDON_1 OC1_REGIONS[EU_MADRID_1.get_region_id()] = EU_MADRID_1 + OC1_REGIONS[EU_MADRID_3.get_region_id()] = EU_MADRID_3 OC1_REGIONS[EU_MARSEILLE_1.get_region_id()] = EU_MARSEILLE_1 OC1_REGIONS[EU_MILAN_1.get_region_id()] = EU_MILAN_1 OC1_REGIONS[EU_PARIS_1.get_region_id()] = EU_PARIS_1 OC1_REGIONS[EU_STOCKHOLM_1.get_region_id()] = EU_STOCKHOLM_1 + OC1_REGIONS[EU_TURIN_1.get_region_id()] = EU_TURIN_1 OC1_REGIONS[EU_ZURICH_1.get_region_id()] = EU_ZURICH_1 - - # LAD + OC1_REGIONS[IL_JERUSALEM_1.get_region_id()] = IL_JERUSALEM_1 + OC1_REGIONS[ME_ABUDHABI_1.get_region_id()] = ME_ABUDHABI_1 + OC1_REGIONS[ME_DUBAI_1.get_region_id()] = ME_DUBAI_1 + OC1_REGIONS[ME_JEDDAH_1.get_region_id()] = ME_JEDDAH_1 + OC1_REGIONS[ME_RIYADH_1.get_region_id()] = ME_RIYADH_1 + OC1_REGIONS[MX_MONTERREY_1.get_region_id()] = MX_MONTERREY_1 + OC1_REGIONS[MX_QUERETARO_1.get_region_id()] = MX_QUERETARO_1 OC1_REGIONS[SA_BOGOTA_1.get_region_id()] = SA_BOGOTA_1 OC1_REGIONS[SA_SANTIAGO_1.get_region_id()] = SA_SANTIAGO_1 OC1_REGIONS[SA_SAOPAULO_1.get_region_id()] = SA_SAOPAULO_1 OC1_REGIONS[SA_VALPARAISO_1.get_region_id()] = SA_VALPARAISO_1 OC1_REGIONS[SA_VINHEDO_1.get_region_id()] = SA_VINHEDO_1 - - # North America - OC1_REGIONS[US_ASHBURN_1.get_region_id()] = US_ASHBURN_1 - OC1_REGIONS[CA_MONTREAL_1.get_region_id()] = CA_MONTREAL_1 - OC1_REGIONS[US_CHICAGO_1.get_region_id()] = US_CHICAGO_1 + OC1_REGIONS[UK_LONDON_1.get_region_id()] = UK_LONDON_1 + OC1_REGIONS[UK_CARDIFF_1.get_region_id()] = UK_CARDIFF_1 + OC1_REGIONS[US_ABILENE_1.get_region_id()] = US_ABILENE_1 + OC1_REGIONS[US_COLUMBUS_1.get_region_id()] = US_COLUMBUS_1 + OC1_REGIONS[US_QUINCY_1.get_region_id()] = US_QUINCY_1 + OC1_REGIONS[US_BOARDMAN_1.get_region_id()] = US_BOARDMAN_1 + OC1_REGIONS[US_DALLAS_1.get_region_id()] = US_DALLAS_1 + OC1_REGIONS[US_DESMOINES_1.get_region_id()] = US_DESMOINES_1 OC1_REGIONS[US_PHOENIX_1.get_region_id()] = US_PHOENIX_1 - OC1_REGIONS[US_SANJOSE_1.get_region_id()] = US_SANJOSE_1 + OC1_REGIONS[US_ASHBURN_1.get_region_id()] = US_ASHBURN_1 OC1_REGIONS[US_SALTLAKE_2.get_region_id()] = US_SALTLAKE_2 - OC1_REGIONS[CA_TORONTO_1.get_region_id()] = CA_TORONTO_1 - OC1_REGIONS[MX_QUERETARO_1.get_region_id()] = MX_QUERETARO_1 - OC1_REGIONS[MX_MONTERREY_1.get_region_id()] = MX_MONTERREY_1 + OC1_REGIONS[US_SANJOSE_1.get_region_id()] = US_SANJOSE_1 + OC1_REGIONS[US_SHAWNEE_1.get_region_id()] = US_SHAWNEE_1 + OC1_REGIONS[US_CHICAGO_1.get_region_id()] = US_CHICAGO_1 + OC1_REGIONS[AP_KULAI_2.get_region_id()] = AP_KULAI_2 + OC1_REGIONS[AP_DELHI_1.get_region_id()] = AP_DELHI_1 - OC2_REGIONS = dict() - """A dict containing the OC2 regions.""" # OC2 + OC2_REGIONS = dict() OC2_REGIONS[US_LANGLEY_1.get_region_id()] = US_LANGLEY_1 OC2_REGIONS[US_LUKE_1.get_region_id()] = US_LUKE_1 - OC3_REGIONS = dict() - """A dict containing the OC3 regions.""" # OC3 + OC3_REGIONS = dict() OC3_REGIONS[US_GOV_ASHBURN_1.get_region_id()] = US_GOV_ASHBURN_1 OC3_REGIONS[US_GOV_CHICAGO_1.get_region_id()] = US_GOV_CHICAGO_1 OC3_REGIONS[US_GOV_PHOENIX_1.get_region_id()] = US_GOV_PHOENIX_1 # OC4 OC4_REGIONS = dict() - """A dict containing the OC4 regions.""" - OC4_REGIONS[UK_GOV_CARDIFF_1.get_region_id()] = UK_GOV_CARDIFF_1 OC4_REGIONS[UK_GOV_LONDON_1.get_region_id()] = UK_GOV_LONDON_1 + OC4_REGIONS[UK_GOV_CARDIFF_1.get_region_id()] = UK_GOV_CARDIFF_1 # OC5 OC5_REGIONS = dict() - """A dict containing the OC5 regions.""" OC5_REGIONS[US_TACOMA_1.get_region_id()] = US_TACOMA_1 # OC8 OC8_REGIONS = dict() - """A dict containing the OC8 regions.""" OC8_REGIONS[AP_CHIYODA_1.get_region_id()] = AP_CHIYODA_1 OC8_REGIONS[AP_IBARAKI_1.get_region_id()] = AP_IBARAKI_1 # OC9 OC9_REGIONS = dict() - """A dict containing the OC9 regions.""" OC9_REGIONS[ME_DCC_MUSCAT_1.get_region_id()] = ME_DCC_MUSCAT_1 + OC9_REGIONS[ME_IBRI_1.get_region_id()] = ME_IBRI_1 # OC10 OC10_REGIONS = dict() - """A dict containing the OC10 regions.""" OC10_REGIONS[AP_DCC_CANBERRA_1.get_region_id()] = AP_DCC_CANBERRA_1 # OC14 OC14_REGIONS = dict() - """A dict containing the OC14 regions.""" - OC14_REGIONS[EU_DCC_MILAN_1.get_region_id()] = EU_DCC_MILAN_1 - OC14_REGIONS[EU_DCC_MILAN_2.get_region_id()] = EU_DCC_MILAN_2 OC14_REGIONS[EU_DCC_DUBLIN_1.get_region_id()] = EU_DCC_DUBLIN_1 OC14_REGIONS[EU_DCC_DUBLIN_2.get_region_id()] = EU_DCC_DUBLIN_2 + OC14_REGIONS[EU_DCC_MILAN_1.get_region_id()] = EU_DCC_MILAN_1 + OC14_REGIONS[EU_DCC_MILAN_2.get_region_id()] = EU_DCC_MILAN_2 OC14_REGIONS[EU_DCC_RATING_1.get_region_id()] = EU_DCC_RATING_1 OC14_REGIONS[EU_DCC_RATING_2.get_region_id()] = EU_DCC_RATING_2 # OC15 OC15_REGIONS = dict() - """A dict containing the OC15 regions.""" OC15_REGIONS[AP_DCC_GAZIPUR_1.get_region_id()] = AP_DCC_GAZIPUR_1 # OC16 OC16_REGIONS = dict() - """A dict containing the OC16 regions.""" OC16_REGIONS[US_WESTJORDAN_1.get_region_id()] = US_WESTJORDAN_1 # OC17 OC17_REGIONS = dict() - """A dict containing the OC17 regions.""" OC17_REGIONS[US_DCC_PHOENIX_1.get_region_id()] = US_DCC_PHOENIX_1 OC17_REGIONS[US_DCC_PHOENIX_2.get_region_id()] = US_DCC_PHOENIX_2 OC17_REGIONS[US_DCC_PHOENIX_4.get_region_id()] = US_DCC_PHOENIX_4 # OC19 OC19_REGIONS = dict() - """A dict containing the OC19 regions.""" OC19_REGIONS[EU_FRANKFURT_2.get_region_id()] = EU_FRANKFURT_2 OC19_REGIONS[EU_MADRID_2.get_region_id()] = EU_MADRID_2 # OC20 OC20_REGIONS = dict() - """A dict containing the OC20 regions.""" OC20_REGIONS[EU_JOVANOVAC_1.get_region_id()] = EU_JOVANOVAC_1 # OC21 OC21_REGIONS = dict() - """A dict containing the OC21 regions.""" OC21_REGIONS[ME_DCC_DOHA_1.get_region_id()] = ME_DCC_DOHA_1 # OC22 OC22_REGIONS = dict() - """A dict containing the OC22 regions.""" OC22_REGIONS[EU_DCC_ROME_1.get_region_id()] = EU_DCC_ROME_1 + OC22_REGIONS[EU_MILAN_2.get_region_id()] = EU_MILAN_2 + + # OC23 + OC23_REGIONS = dict() + OC23_REGIONS[US_SOMERSET_1.get_region_id()] = US_SOMERSET_1 + OC23_REGIONS[US_THAMES_1.get_region_id()] = US_THAMES_1 # OC24 OC24_REGIONS = dict() - """A dict containing the OC24 regions.""" OC24_REGIONS[EU_DCC_ZURICH_1.get_region_id()] = EU_DCC_ZURICH_1 + OC24_REGIONS[EU_CRISSIER_1.get_region_id()] = EU_CRISSIER_1 # OC25 OC25_REGIONS = dict() - """A dict containing the OC25 regions.""" + OC25_REGIONS[AP_DCC_OSAKA_1.get_region_id()] = AP_DCC_OSAKA_1 OC25_REGIONS[AP_DCC_TOKYO_1.get_region_id()] = AP_DCC_TOKYO_1 # OC26 OC26_REGIONS = dict() - """A dict containing the OC26 regions.""" OC26_REGIONS[ME_ABUDHABI_3.get_region_id()] = ME_ABUDHABI_3 + OC26_REGIONS[ME_ALAIN_1.get_region_id()] = ME_ALAIN_1 # OC27 OC27_REGIONS = dict() - """A dict containing the OC27 regions.""" OC27_REGIONS[US_DCC_SWJORDAN_1.get_region_id()] = US_DCC_SWJORDAN_1 # OC28 OC28_REGIONS = dict() - """A dict containing the OC28 regions.""" OC28_REGIONS[US_DCC_SWJORDAN_2.get_region_id()] = US_DCC_SWJORDAN_2 + # OC29 + OC29_REGIONS = dict() + OC29_REGIONS[ME_ABUDHABI_2.get_region_id()] = ME_ABUDHABI_2 + OC29_REGIONS[ME_ABUDHABI_4.get_region_id()] = ME_ABUDHABI_4 + # OC31 OC31_REGIONS = dict() - """A dict containing the OC31 regions.""" OC31_REGIONS[AP_HOBSONVILLE_1.get_region_id()] = AP_HOBSONVILLE_1 + OC31_REGIONS[AP_SILVERDALE_1.get_region_id()] = AP_SILVERDALE_1 + + # OC35 + OC35_REGIONS = dict() + OC35_REGIONS[AP_SUWON_1.get_region_id()] = AP_SUWON_1 + OC35_REGIONS[AP_SEOUL_2.get_region_id()] = AP_SEOUL_2 + OC35_REGIONS[AP_CHUNCHEON_2.get_region_id()] = AP_CHUNCHEON_2 + + # OC36 + OC36_REGIONS = dict() + OC36_REGIONS[ME_RIYADH_2.get_region_id()] = ME_RIYADH_2 + + # OC39 + OC39_REGIONS = dict() + OC39_REGIONS[US_TUKWILA_3.get_region_id()] = US_TUKWILA_3 + + # OC40 + OC40_REGIONS = dict() + OC40_REGIONS[AP_OSAKA_2.get_region_id()] = AP_OSAKA_2 + OC40_REGIONS[AP_TATEBAYASHI_1.get_region_id()] = AP_TATEBAYASHI_1 + + # OC41 + OC41_REGIONS = dict() + OC41_REGIONS[ME_DUBAI_3.get_region_id()] = ME_DUBAI_3 + + # OC42 + OC42_REGIONS = dict() + OC42_REGIONS[US_NEWARK_1.get_region_id()] = US_NEWARK_1 + + # OC43 + OC43_REGIONS = dict() + OC43_REGIONS[AP_PATHUMTHANI_1.get_region_id()] = AP_PATHUMTHANI_1 + OC43_REGIONS[AP_SAMUTPRAKAN_1.get_region_id()] = AP_SAMUTPRAKAN_1 + + # OC46 + OC46_REGIONS = dict() + OC46_REGIONS[UK_LONDON_2.get_region_id()] = UK_LONDON_2 + + # OC47 + OC47_REGIONS = dict() + OC47_REGIONS[UK_LONDON_3.get_region_id()] = UK_LONDON_3 + OC47_REGIONS[UK_LONDON_4.get_region_id()] = UK_LONDON_4 + + # OC51 + OC51_REGIONS = dict() + OC51_REGIONS[EU_BUDAPEST_1.get_region_id()] = EU_BUDAPEST_1 + + # OC52 + OC52_REGIONS = dict() + OC52_REGIONS[SA_RIODEJANEIRO_1.get_region_id()] = SA_RIODEJANEIRO_1 + + # OC55 + OC55_REGIONS = dict() + OC55_REGIONS[AP_WESTTOKYO_1.get_region_id()] = AP_WESTTOKYO_1 + + # OC57 + OC57_REGIONS = dict() + OC57_REGIONS[ME_ABUDHABI_5.get_region_id()] = ME_ABUDHABI_5 + OC57_REGIONS[ME_DUBAI_4.get_region_id()] = ME_DUBAI_4 @staticmethod def get_oc1_regions(): @@ -899,6 +1220,11 @@ def get_oc22_regions(): # Internal use only return Regions.OC22_REGIONS.values() + @staticmethod + def get_oc23_regions(): + # Internal use only + return Regions.OC23_REGIONS.values() + @staticmethod def get_oc24_regions(): # Internal use only @@ -924,11 +1250,81 @@ def get_oc28_regions(): # Internal use only return Regions.OC28_REGIONS.values() + @staticmethod + def get_oc29_regions(): + # Internal use only + return Regions.OC29_REGIONS.values() + @staticmethod def get_oc31_regions(): # Internal use only return Regions.OC31_REGIONS.values() + @staticmethod + def get_oc35_regions(): + # Internal use only + return Regions.OC35_REGIONS.values() + + @staticmethod + def get_oc36_regions(): + # Internal use only + return Regions.OC36_REGIONS.values() + + @staticmethod + def get_oc39_regions(): + # Internal use only + return Regions.OC39_REGIONS.values() + + @staticmethod + def get_oc40_regions(): + # Internal use only + return Regions.OC40_REGIONS.values() + + @staticmethod + def get_oc41_regions(): + # Internal use only + return Regions.OC41_REGIONS.values() + + @staticmethod + def get_oc42_regions(): + # Internal use only + return Regions.OC42_REGIONS.values() + + @staticmethod + def get_oc43_regions(): + # Internal use only + return Regions.OC43_REGIONS.values() + + @staticmethod + def get_oc46_regions(): + # Internal use only + return Regions.OC46_REGIONS.values() + + @staticmethod + def get_oc47_regions(): + # Internal use only + return Regions.OC47_REGIONS.values() + + @staticmethod + def get_oc51_regions(): + # Internal use only + return Regions.OC51_REGIONS.values() + + @staticmethod + def get_oc52_regions(): + # Internal use only + return Regions.OC52_REGIONS.values() + + @staticmethod + def get_oc55_regions(): + # Internal use only + return Regions.OC55_REGIONS.values() + + @staticmethod + def get_oc57_regions(): + # Internal use only + return Regions.OC57_REGIONS.values() + @staticmethod def from_region_id(region_id): """ @@ -945,14 +1341,14 @@ def from_region_id(region_id): 'Invalid region id ' + str(region_id)) region_id = region_id.lower() region = Regions.OC1_REGIONS.get(region_id) - if region is None: - region = Regions.OC4_REGIONS.get(region_id) - if region is None: - region = Regions.OC5_REGIONS.get(region_id) if region is None: region = Regions.OC2_REGIONS.get(region_id) if region is None: region = Regions.OC3_REGIONS.get(region_id) + if region is None: + region = Regions.OC4_REGIONS.get(region_id) + if region is None: + region = Regions.OC5_REGIONS.get(region_id) if region is None: region = Regions.OC8_REGIONS.get(region_id) if region is None: @@ -975,6 +1371,8 @@ def from_region_id(region_id): region = Regions.OC21_REGIONS.get(region_id) if region is None: region = Regions.OC22_REGIONS.get(region_id) + if region is None: + region = Regions.OC23_REGIONS.get(region_id) if region is None: region = Regions.OC24_REGIONS.get(region_id) if region is None: @@ -985,10 +1383,39 @@ def from_region_id(region_id): region = Regions.OC27_REGIONS.get(region_id) if region is None: region = Regions.OC28_REGIONS.get(region_id) + if region is None: + region = Regions.OC29_REGIONS.get(region_id) if region is None: region = Regions.OC31_REGIONS.get(region_id) + if region is None: + region = Regions.OC35_REGIONS.get(region_id) + if region is None: + region = Regions.OC36_REGIONS.get(region_id) + if region is None: + region = Regions.OC39_REGIONS.get(region_id) + if region is None: + region = Regions.OC40_REGIONS.get(region_id) + if region is None: + region = Regions.OC41_REGIONS.get(region_id) + if region is None: + region = Regions.OC42_REGIONS.get(region_id) + if region is None: + region = Regions.OC43_REGIONS.get(region_id) + if region is None: + region = Regions.OC46_REGIONS.get(region_id) + if region is None: + region = Regions.OC47_REGIONS.get(region_id) + if region is None: + region = Regions.OC51_REGIONS.get(region_id) + if region is None: + region = Regions.OC52_REGIONS.get(region_id) + if region is None: + region = Regions.OC55_REGIONS.get(region_id) + if region is None: + region = Regions.OC57_REGIONS.get(region_id) return region +# === End autogenerated regions === class StatsProfile(Enum): """ @@ -1039,10 +1466,10 @@ class NoSQLHandleConfig(object): endpoint argument) * nosql.us-ashburn-1.oci.oraclecloud.com (equivalent to using Region Regions.US_ASHBURN_1 as the endpoint argument) - * https:\//nosql.us-ashburn-1.oci.oraclecloud.com:443 + * https://nosql.us-ashburn-1.oci.oraclecloud.com:443 * localhost:8080 - used for connecting to a Cloud Simulator instance running locally on port 8080 - * https:\//machine-hosting-proxy:443 + * https://machine-hosting-proxy:443 When using the endpoint (vs region id) syntax, if the port is omitted, the endpoint uses 8080 if protocol is http, and 443 in all other cases. If the From bc3e496fa42dbcb97fd0e7c6c7a91cb17b82780c Mon Sep 17 00:00:00 2001 From: John Connelly Date: Tue, 10 Mar 2026 16:36:06 -0700 Subject: [PATCH 2/2] updated CHANGELOG --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4870864..20b3c4d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/). ==================== +# Unreleased + +## Added + +- new OCI region codes + # 5.5.0 - 2026-02-06 ## Added