From bf1bc2792edfbab9b53a4d82aa333d28672c8022 Mon Sep 17 00:00:00 2001 From: Mohammad Torkashvand <mohammad.torkashvand@geant.org> Date: Mon, 16 Oct 2023 12:03:02 +0200 Subject: [PATCH] upgrade test and linting dfependencies packages --- docs/source/apidocs/gso/gso.api.md | 12 + docs/source/apidocs/gso/gso.api.v1.imports.md | 68 +++++ docs/source/apidocs/gso/gso.api.v1.md | 12 + .../apidocs/gso/gso.cli.import_sites.md | 35 +++ docs/source/apidocs/gso/gso.cli.md | 12 + docs/source/apidocs/gso/gso.main.md | 8 + docs/source/apidocs/gso/gso.md | 33 +++ docs/source/apidocs/gso/gso.products.md | 18 ++ .../gso.products.product_blocks.iptrunk.md | 195 ++++++++++++++ .../gso/gso.products.product_blocks.md | 51 ++++ .../gso/gso.products.product_blocks.router.md | 245 ++++++++++++++++++ .../gso/gso.products.product_blocks.site.md | 192 ++++++++++++++ .../gso/gso.products.product_types.iptrunk.md | 51 ++++ .../apidocs/gso/gso.products.product_types.md | 8 + .../gso/gso.products.product_types.router.md | 51 ++++ .../gso/gso.products.product_types.site.md | 51 ++++ .../source/apidocs/gso/gso.products.shared.md | 38 +++ docs/source/apidocs/gso/gso.schemas.enums.md | 42 +++ .../source/apidocs/gso/gso.schemas.imports.md | 12 + docs/source/apidocs/gso/gso.schemas.md | 12 + docs/source/apidocs/gso/gso.schemas.types.md | 52 ++++ docs/source/apidocs/gso/gso.services.crm.md | 32 +++ .../apidocs/gso/gso.services.infoblox.md | 170 ++++++++++++ docs/source/apidocs/gso/gso.services.md | 17 ++ .../gso/gso.services.provisioning_proxy.md | 180 +++++++++++++ .../gso/gso.services.resource_manager.md | 33 +++ .../apidocs/gso/gso.services.subscriptions.md | 79 ++++++ docs/source/apidocs/gso/gso.settings.md | 176 +++++++++++++ .../gso.workflows.iptrunk.create_iptrunk.md | 12 + .../apidocs/gso/gso.workflows.iptrunk.md | 12 + .../gso.workflows.iptrunk.migrate_iptrunk.md | 12 + ...so.workflows.iptrunk.modify_isis_metric.md | 12 + ...orkflows.iptrunk.modify_trunk_interface.md | 12 + ...gso.workflows.iptrunk.terminate_iptrunk.md | 12 + .../gso/gso.workflows.iptrunk.utils.md | 12 + docs/source/apidocs/gso/gso.workflows.md | 8 + .../gso/gso.workflows.router.create_router.md | 12 + .../apidocs/gso/gso.workflows.router.md | 12 + .../gso.workflows.router.terminate_router.md | 12 + .../gso/gso.workflows.site.create_site.md | 12 + docs/source/apidocs/gso/gso.workflows.site.md | 12 + .../gso/gso.workflows.tasks.import_iptrunk.md | 35 +++ .../gso/gso.workflows.tasks.import_router.md | 35 +++ .../gso/gso.workflows.tasks.import_site.md | 35 +++ .../source/apidocs/gso/gso.workflows.tasks.md | 12 + .../source/apidocs/gso/gso.workflows.utils.md | 35 +++ requirements.txt | 12 +- 47 files changed, 2196 insertions(+), 5 deletions(-) create mode 100644 docs/source/apidocs/gso/gso.api.md create mode 100644 docs/source/apidocs/gso/gso.api.v1.imports.md create mode 100644 docs/source/apidocs/gso/gso.api.v1.md create mode 100644 docs/source/apidocs/gso/gso.cli.import_sites.md create mode 100644 docs/source/apidocs/gso/gso.cli.md create mode 100644 docs/source/apidocs/gso/gso.main.md create mode 100644 docs/source/apidocs/gso/gso.md create mode 100644 docs/source/apidocs/gso/gso.products.md create mode 100644 docs/source/apidocs/gso/gso.products.product_blocks.iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.products.product_blocks.md create mode 100644 docs/source/apidocs/gso/gso.products.product_blocks.router.md create mode 100644 docs/source/apidocs/gso/gso.products.product_blocks.site.md create mode 100644 docs/source/apidocs/gso/gso.products.product_types.iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.products.product_types.md create mode 100644 docs/source/apidocs/gso/gso.products.product_types.router.md create mode 100644 docs/source/apidocs/gso/gso.products.product_types.site.md create mode 100644 docs/source/apidocs/gso/gso.products.shared.md create mode 100644 docs/source/apidocs/gso/gso.schemas.enums.md create mode 100644 docs/source/apidocs/gso/gso.schemas.imports.md create mode 100644 docs/source/apidocs/gso/gso.schemas.md create mode 100644 docs/source/apidocs/gso/gso.schemas.types.md create mode 100644 docs/source/apidocs/gso/gso.services.crm.md create mode 100644 docs/source/apidocs/gso/gso.services.infoblox.md create mode 100644 docs/source/apidocs/gso/gso.services.md create mode 100644 docs/source/apidocs/gso/gso.services.provisioning_proxy.md create mode 100644 docs/source/apidocs/gso/gso.services.resource_manager.md create mode 100644 docs/source/apidocs/gso/gso.services.subscriptions.md create mode 100644 docs/source/apidocs/gso/gso.settings.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.create_iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.migrate_iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.modify_isis_metric.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.modify_trunk_interface.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.terminate_iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.workflows.iptrunk.utils.md create mode 100644 docs/source/apidocs/gso/gso.workflows.md create mode 100644 docs/source/apidocs/gso/gso.workflows.router.create_router.md create mode 100644 docs/source/apidocs/gso/gso.workflows.router.md create mode 100644 docs/source/apidocs/gso/gso.workflows.router.terminate_router.md create mode 100644 docs/source/apidocs/gso/gso.workflows.site.create_site.md create mode 100644 docs/source/apidocs/gso/gso.workflows.site.md create mode 100644 docs/source/apidocs/gso/gso.workflows.tasks.import_iptrunk.md create mode 100644 docs/source/apidocs/gso/gso.workflows.tasks.import_router.md create mode 100644 docs/source/apidocs/gso/gso.workflows.tasks.import_site.md create mode 100644 docs/source/apidocs/gso/gso.workflows.tasks.md create mode 100644 docs/source/apidocs/gso/gso.workflows.utils.md diff --git a/docs/source/apidocs/gso/gso.api.md b/docs/source/apidocs/gso/gso.api.md new file mode 100644 index 000000000..5ca54030c --- /dev/null +++ b/docs/source/apidocs/gso/gso.api.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.api` + +```{py:module} gso.api +``` + +```{autodoc2-docstring} gso.api +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.api.v1.imports.md b/docs/source/apidocs/gso/gso.api.v1.imports.md new file mode 100644 index 000000000..743d9464d --- /dev/null +++ b/docs/source/apidocs/gso/gso.api.v1.imports.md @@ -0,0 +1,68 @@ +--- +orphan: true +--- + +# {py:mod}`gso.api.v1.imports` + +```{py:module} gso.api.v1.imports +``` + +```{autodoc2-docstring} gso.api.v1.imports +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`_start_process <gso.api.v1.imports._start_process>` + - ```{autodoc2-docstring} gso.api.v1.imports._start_process + :summary: + ``` +* - {py:obj}`import_site <gso.api.v1.imports.import_site>` + - ```{autodoc2-docstring} gso.api.v1.imports.import_site + :summary: + ``` +* - {py:obj}`import_router <gso.api.v1.imports.import_router>` + - ```{autodoc2-docstring} gso.api.v1.imports.import_router + :summary: + ``` +* - {py:obj}`import_iptrunk <gso.api.v1.imports.import_iptrunk>` + - ```{autodoc2-docstring} gso.api.v1.imports.import_iptrunk + :summary: + ``` +```` + +### API + +````{py:function} _start_process(process_name: str, data: dict) -> uuid.UUID +:canonical: gso.api.v1.imports._start_process + +```{autodoc2-docstring} gso.api.v1.imports._start_process +``` +```` + +````{py:function} import_site(site: gso.schemas.imports.SiteImportModel) -> typing.Dict[str, typing.Any] +:canonical: gso.api.v1.imports.import_site + +```{autodoc2-docstring} gso.api.v1.imports.import_site +``` +```` + +````{py:function} import_router(router_data: gso.schemas.imports.RouterImportModel) -> typing.Dict[str, typing.Any] +:canonical: gso.api.v1.imports.import_router + +```{autodoc2-docstring} gso.api.v1.imports.import_router +``` +```` + +````{py:function} import_iptrunk(iptrunk_data: gso.schemas.imports.IptrunkImportModel) -> typing.Dict[str, typing.Any] +:canonical: gso.api.v1.imports.import_iptrunk + +```{autodoc2-docstring} gso.api.v1.imports.import_iptrunk +``` +```` diff --git a/docs/source/apidocs/gso/gso.api.v1.md b/docs/source/apidocs/gso/gso.api.v1.md new file mode 100644 index 000000000..675b9709d --- /dev/null +++ b/docs/source/apidocs/gso/gso.api.v1.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.api.v1` + +```{py:module} gso.api.v1 +``` + +```{autodoc2-docstring} gso.api.v1 +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.cli.import_sites.md b/docs/source/apidocs/gso/gso.cli.import_sites.md new file mode 100644 index 000000000..a0aa4b5ac --- /dev/null +++ b/docs/source/apidocs/gso/gso.cli.import_sites.md @@ -0,0 +1,35 @@ +--- +orphan: true +--- + +# {py:mod}`gso.cli.import_sites` + +```{py:module} gso.cli.import_sites +``` + +```{autodoc2-docstring} gso.cli.import_sites +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`import_sites <gso.cli.import_sites.import_sites>` + - ```{autodoc2-docstring} gso.cli.import_sites.import_sites + :summary: + ``` +```` + +### API + +````{py:function} import_sites() -> None +:canonical: gso.cli.import_sites.import_sites + +```{autodoc2-docstring} gso.cli.import_sites.import_sites +``` +```` diff --git a/docs/source/apidocs/gso/gso.cli.md b/docs/source/apidocs/gso/gso.cli.md new file mode 100644 index 000000000..e05c5c32c --- /dev/null +++ b/docs/source/apidocs/gso/gso.cli.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.cli` + +```{py:module} gso.cli +``` + +```{autodoc2-docstring} gso.cli +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.main.md b/docs/source/apidocs/gso/gso.main.md new file mode 100644 index 000000000..7fd1617cf --- /dev/null +++ b/docs/source/apidocs/gso/gso.main.md @@ -0,0 +1,8 @@ +# {py:mod}`gso.main` + +```{py:module} gso.main +``` + +```{autodoc2-docstring} gso.main +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.md b/docs/source/apidocs/gso/gso.md new file mode 100644 index 000000000..adf1cf087 --- /dev/null +++ b/docs/source/apidocs/gso/gso.md @@ -0,0 +1,33 @@ +--- +orphan: true +--- + +# {py:mod}`gso` + +```{py:module} gso +``` + +```{autodoc2-docstring} gso +:allowtitles: +``` + +## Subpackages + +```{toctree} +:titlesonly: +:maxdepth: 3 + +gso.products +gso.workflows +gso.services +``` + +## Submodules + +```{toctree} +:titlesonly: +:maxdepth: 1 + +gso.settings +gso.main +``` diff --git a/docs/source/apidocs/gso/gso.products.md b/docs/source/apidocs/gso/gso.products.md new file mode 100644 index 000000000..1a78dfeba --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.md @@ -0,0 +1,18 @@ +# {py:mod}`gso.products` + +```{py:module} gso.products +``` + +```{autodoc2-docstring} gso.products +:allowtitles: +``` + +## Subpackages + +```{toctree} +:titlesonly: +:maxdepth: 3 + +gso.products.product_blocks +gso.products.product_types +``` diff --git a/docs/source/apidocs/gso/gso.products.product_blocks.iptrunk.md b/docs/source/apidocs/gso/gso.products.product_blocks.iptrunk.md new file mode 100644 index 000000000..f09ab7218 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_blocks.iptrunk.md @@ -0,0 +1,195 @@ +# {py:mod}`gso.products.product_blocks.iptrunk` + +```{py:module} gso.products.product_blocks.iptrunk +``` + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`IptrunkType <gso.products.product_blocks.iptrunk.IptrunkType>` + - +* - {py:obj}`IptrunkSides <gso.products.product_blocks.iptrunk.IptrunkSides>` + - +* - {py:obj}`IptrunkSideBlockInactive <gso.products.product_blocks.iptrunk.IptrunkSideBlockInactive>` + - +* - {py:obj}`IptrunkSideBlockProvisioning <gso.products.product_blocks.iptrunk.IptrunkSideBlockProvisioning>` + - +* - {py:obj}`IptrunkSideBlock <gso.products.product_blocks.iptrunk.IptrunkSideBlock>` + - +* - {py:obj}`IptrunkBlockInactive <gso.products.product_blocks.iptrunk.IptrunkBlockInactive>` + - ```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlockInactive + :summary: + ``` +* - {py:obj}`IptrunkBlockProvisioning <gso.products.product_blocks.iptrunk.IptrunkBlockProvisioning>` + - ```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlockProvisioning + :summary: + ``` +* - {py:obj}`IptrunkBlock <gso.products.product_blocks.iptrunk.IptrunkBlock>` + - ```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock + :summary: + ``` +```` + +### API + +```{py:class} IptrunkType() +:canonical: gso.products.product_blocks.iptrunk.IptrunkType + +Bases: {py:obj}`orchestrator.types.strEnum` + +``` + +```{py:class} IptrunkSides() +:canonical: gso.products.product_blocks.iptrunk.IptrunkSides + +Bases: {py:obj}`orchestrator.forms.validators.UniqueConstrainedList`\[{py:obj}`gso.products.product_blocks.iptrunk.T`\] + +``` + +```{py:class} IptrunkSideBlockInactive +:canonical: gso.products.product_blocks.iptrunk.IptrunkSideBlockInactive + +Bases: {py:obj}`orchestrator.domain.base.ProductBlockModel` + +``` + +```{py:class} IptrunkSideBlockProvisioning +:canonical: gso.products.product_blocks.iptrunk.IptrunkSideBlockProvisioning + +Bases: {py:obj}`gso.products.product_blocks.iptrunk.IptrunkSideBlockInactive` + +``` + +```{py:class} IptrunkSideBlock +:canonical: gso.products.product_blocks.iptrunk.IptrunkSideBlock + +Bases: {py:obj}`gso.products.product_blocks.iptrunk.IptrunkSideBlockProvisioning` + +``` + +````{py:class} IptrunkBlockInactive +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlockInactive + +Bases: {py:obj}`orchestrator.domain.base.ProductBlockModel` + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlockInactive +``` + +```` + +````{py:class} IptrunkBlockProvisioning +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlockProvisioning + +Bases: {py:obj}`gso.products.product_blocks.iptrunk.IptrunkBlockInactive` + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlockProvisioning +``` + +```` + +`````{py:class} IptrunkBlock +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock + +Bases: {py:obj}`gso.products.product_blocks.iptrunk.IptrunkBlockProvisioning` + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock +``` + +````{py:attribute} geant_s_sid +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.geant_s_sid +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.geant_s_sid +``` + +```` + +````{py:attribute} iptrunk_description +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_description +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_description +``` + +```` + +````{py:attribute} iptrunk_type +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_type +:type: gso.products.product_blocks.iptrunk.IptrunkType +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_type +``` + +```` + +````{py:attribute} iptrunk_speed +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_speed +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_speed +``` + +```` + +````{py:attribute} iptrunk_minimum_links +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_minimum_links +:type: int +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_minimum_links +``` + +```` + +````{py:attribute} iptrunk_isis_metric +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_isis_metric +:type: int +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_isis_metric +``` + +```` + +````{py:attribute} iptrunk_ipv4_network +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_ipv4_network +:type: ipaddress.IPv4Network +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_ipv4_network +``` + +```` + +````{py:attribute} iptrunk_ipv6_network +:canonical: gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_ipv6_network +:type: ipaddress.IPv6Network +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.iptrunk.IptrunkBlock.iptrunk_ipv6_network +``` + +```` + +````` diff --git a/docs/source/apidocs/gso/gso.products.product_blocks.md b/docs/source/apidocs/gso/gso.products.product_blocks.md new file mode 100644 index 000000000..f6cdc93f3 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_blocks.md @@ -0,0 +1,51 @@ +# {py:mod}`gso.products.product_blocks` + +```{py:module} gso.products.product_blocks +``` + +```{autodoc2-docstring} gso.products.product_blocks +:allowtitles: +``` + +## Submodules + +```{toctree} +:titlesonly: +:maxdepth: 1 + +gso.products.product_blocks.iptrunk +gso.products.product_blocks.site +gso.products.product_blocks.router +``` + +## Package Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`PhyPortCapacity <gso.products.product_blocks.PhyPortCapacity>` + - ```{autodoc2-docstring} gso.products.product_blocks.PhyPortCapacity + :summary: + ``` +```` + +### API + +````{py:class} PhyPortCapacity() +:canonical: gso.products.product_blocks.PhyPortCapacity + +Bases: {py:obj}`orchestrator.types.strEnum` + +```{autodoc2-docstring} gso.products.product_blocks.PhyPortCapacity +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.products.product_blocks.PhyPortCapacity.__init__ +``` + +```` diff --git a/docs/source/apidocs/gso/gso.products.product_blocks.router.md b/docs/source/apidocs/gso/gso.products.product_blocks.router.md new file mode 100644 index 000000000..0b1102a5a --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_blocks.router.md @@ -0,0 +1,245 @@ +# {py:mod}`gso.products.product_blocks.router` + +```{py:module} gso.products.product_blocks.router +``` + +```{autodoc2-docstring} gso.products.product_blocks.router +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`RouterVendor <gso.products.product_blocks.router.RouterVendor>` + - ```{autodoc2-docstring} gso.products.product_blocks.router.RouterVendor + :summary: + ``` +* - {py:obj}`RouterRole <gso.products.product_blocks.router.RouterRole>` + - ```{autodoc2-docstring} gso.products.product_blocks.router.RouterRole + :summary: + ``` +* - {py:obj}`RouterBlockInactive <gso.products.product_blocks.router.RouterBlockInactive>` + - ```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlockInactive + :summary: + ``` +* - {py:obj}`RouterBlockProvisioning <gso.products.product_blocks.router.RouterBlockProvisioning>` + - ```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlockProvisioning + :summary: + ``` +* - {py:obj}`RouterBlock <gso.products.product_blocks.router.RouterBlock>` + - ```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock + :summary: + ``` +```` + +### API + +````{py:class} RouterVendor() +:canonical: gso.products.product_blocks.router.RouterVendor + +Bases: {py:obj}`orchestrator.types.strEnum` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterVendor +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterVendor.__init__ +``` + +```` + +````{py:class} RouterRole() +:canonical: gso.products.product_blocks.router.RouterRole + +Bases: {py:obj}`orchestrator.types.strEnum` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterRole +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterRole.__init__ +``` + +```` + +````{py:class} RouterBlockInactive +:canonical: gso.products.product_blocks.router.RouterBlockInactive + +Bases: {py:obj}`orchestrator.domain.base.ProductBlockModel` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlockInactive +``` + +```` + +````{py:class} RouterBlockProvisioning +:canonical: gso.products.product_blocks.router.RouterBlockProvisioning + +Bases: {py:obj}`gso.products.product_blocks.router.RouterBlockInactive` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlockProvisioning +``` + +```` + +`````{py:class} RouterBlock +:canonical: gso.products.product_blocks.router.RouterBlock + +Bases: {py:obj}`gso.products.product_blocks.router.RouterBlockProvisioning` + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock +``` + +````{py:attribute} router_fqdn +:canonical: gso.products.product_blocks.router.RouterBlock.router_fqdn +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_fqdn +``` + +```` + +````{py:attribute} router_ts_port +:canonical: gso.products.product_blocks.router.RouterBlock.router_ts_port +:type: gso.products.shared.PortNumber +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_ts_port +``` + +```` + +````{py:attribute} router_access_via_ts +:canonical: gso.products.product_blocks.router.RouterBlock.router_access_via_ts +:type: bool +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_access_via_ts +``` + +```` + +````{py:attribute} router_lo_ipv4_address +:canonical: gso.products.product_blocks.router.RouterBlock.router_lo_ipv4_address +:type: ipaddress.IPv4Address +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_lo_ipv4_address +``` + +```` + +````{py:attribute} router_lo_ipv6_address +:canonical: gso.products.product_blocks.router.RouterBlock.router_lo_ipv6_address +:type: ipaddress.IPv6Address +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_lo_ipv6_address +``` + +```` + +````{py:attribute} router_lo_iso_address +:canonical: gso.products.product_blocks.router.RouterBlock.router_lo_iso_address +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_lo_iso_address +``` + +```` + +````{py:attribute} router_si_ipv4_network +:canonical: gso.products.product_blocks.router.RouterBlock.router_si_ipv4_network +:type: typing.Optional[ipaddress.IPv4Network] +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_si_ipv4_network +``` + +```` + +````{py:attribute} router_ias_lt_ipv4_network +:canonical: gso.products.product_blocks.router.RouterBlock.router_ias_lt_ipv4_network +:type: typing.Optional[ipaddress.IPv4Network] +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_ias_lt_ipv4_network +``` + +```` + +````{py:attribute} router_ias_lt_ipv6_network +:canonical: gso.products.product_blocks.router.RouterBlock.router_ias_lt_ipv6_network +:type: typing.Optional[ipaddress.IPv6Network] +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_ias_lt_ipv6_network +``` + +```` + +````{py:attribute} router_vendor +:canonical: gso.products.product_blocks.router.RouterBlock.router_vendor +:type: gso.products.product_blocks.router.RouterVendor +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_vendor +``` + +```` + +````{py:attribute} router_role +:canonical: gso.products.product_blocks.router.RouterBlock.router_role +:type: gso.products.product_blocks.router.RouterRole +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_role +``` + +```` + +````{py:attribute} router_site +:canonical: gso.products.product_blocks.router.RouterBlock.router_site +:type: gso.products.product_blocks.site.SiteBlock +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_site +``` + +```` + +````{py:attribute} router_is_ias_connected +:canonical: gso.products.product_blocks.router.RouterBlock.router_is_ias_connected +:type: bool +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.router.RouterBlock.router_is_ias_connected +``` + +```` + +````` diff --git a/docs/source/apidocs/gso/gso.products.product_blocks.site.md b/docs/source/apidocs/gso/gso.products.product_blocks.site.md new file mode 100644 index 000000000..8d8a36a23 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_blocks.site.md @@ -0,0 +1,192 @@ +# {py:mod}`gso.products.product_blocks.site` + +```{py:module} gso.products.product_blocks.site +``` + +```{autodoc2-docstring} gso.products.product_blocks.site +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`SiteTier <gso.products.product_blocks.site.SiteTier>` + - ```{autodoc2-docstring} gso.products.product_blocks.site.SiteTier + :summary: + ``` +* - {py:obj}`SiteBlockInactive <gso.products.product_blocks.site.SiteBlockInactive>` + - ```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlockInactive + :summary: + ``` +* - {py:obj}`SiteBlockProvisioning <gso.products.product_blocks.site.SiteBlockProvisioning>` + - ```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlockProvisioning + :summary: + ``` +* - {py:obj}`SiteBlock <gso.products.product_blocks.site.SiteBlock>` + - ```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock + :summary: + ``` +```` + +### API + +````{py:class} SiteTier() +:canonical: gso.products.product_blocks.site.SiteTier + +Bases: {py:obj}`orchestrator.types.strEnum` + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteTier +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteTier.__init__ +``` + +```` + +````{py:class} SiteBlockInactive +:canonical: gso.products.product_blocks.site.SiteBlockInactive + +Bases: {py:obj}`orchestrator.domain.base.ProductBlockModel` + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlockInactive +``` + +```` + +````{py:class} SiteBlockProvisioning +:canonical: gso.products.product_blocks.site.SiteBlockProvisioning + +Bases: {py:obj}`gso.products.product_blocks.site.SiteBlockInactive` + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlockProvisioning +``` + +```` + +`````{py:class} SiteBlock +:canonical: gso.products.product_blocks.site.SiteBlock + +Bases: {py:obj}`gso.products.product_blocks.site.SiteBlockProvisioning` + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock +``` + +````{py:attribute} site_name +:canonical: gso.products.product_blocks.site.SiteBlock.site_name +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_name +``` + +```` + +````{py:attribute} site_city +:canonical: gso.products.product_blocks.site.SiteBlock.site_city +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_city +``` + +```` + +````{py:attribute} site_country +:canonical: gso.products.product_blocks.site.SiteBlock.site_country +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_country +``` + +```` + +````{py:attribute} site_country_code +:canonical: gso.products.product_blocks.site.SiteBlock.site_country_code +:type: str +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_country_code +``` + +```` + +````{py:attribute} site_latitude +:canonical: gso.products.product_blocks.site.SiteBlock.site_latitude +:type: gso.schemas.types.LatitudeCoordinate +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_latitude +``` + +```` + +````{py:attribute} site_longitude +:canonical: gso.products.product_blocks.site.SiteBlock.site_longitude +:type: gso.schemas.types.LongitudeCoordinate +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_longitude +``` + +```` + +````{py:attribute} site_internal_id +:canonical: gso.products.product_blocks.site.SiteBlock.site_internal_id +:type: int +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_internal_id +``` + +```` + +````{py:attribute} site_bgp_community_id +:canonical: gso.products.product_blocks.site.SiteBlock.site_bgp_community_id +:type: int +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_bgp_community_id +``` + +```` + +````{py:attribute} site_tier +:canonical: gso.products.product_blocks.site.SiteBlock.site_tier +:type: gso.products.product_blocks.site.SiteTier +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_tier +``` + +```` + +````{py:attribute} site_ts_address +:canonical: gso.products.product_blocks.site.SiteBlock.site_ts_address +:type: typing.Optional[str] +:value: > + None + +```{autodoc2-docstring} gso.products.product_blocks.site.SiteBlock.site_ts_address +``` + +```` + +````` diff --git a/docs/source/apidocs/gso/gso.products.product_types.iptrunk.md b/docs/source/apidocs/gso/gso.products.product_types.iptrunk.md new file mode 100644 index 000000000..18fb0d1c9 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_types.iptrunk.md @@ -0,0 +1,51 @@ +--- +orphan: true +--- + +# {py:mod}`gso.products.product_types.iptrunk` + +```{py:module} gso.products.product_types.iptrunk +``` + +```{autodoc2-docstring} gso.products.product_types.iptrunk +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`IptrunkInactive <gso.products.product_types.iptrunk.IptrunkInactive>` + - +* - {py:obj}`IptrunkProvisioning <gso.products.product_types.iptrunk.IptrunkProvisioning>` + - +* - {py:obj}`Iptrunk <gso.products.product_types.iptrunk.Iptrunk>` + - +```` + +### API + +```{py:class} IptrunkInactive +:canonical: gso.products.product_types.iptrunk.IptrunkInactive + +Bases: {py:obj}`orchestrator.domain.base.SubscriptionModel` + +``` + +```{py:class} IptrunkProvisioning +:canonical: gso.products.product_types.iptrunk.IptrunkProvisioning + +Bases: {py:obj}`gso.products.product_types.iptrunk.IptrunkInactive` + +``` + +```{py:class} Iptrunk +:canonical: gso.products.product_types.iptrunk.Iptrunk + +Bases: {py:obj}`gso.products.product_types.iptrunk.IptrunkProvisioning` + +``` diff --git a/docs/source/apidocs/gso/gso.products.product_types.md b/docs/source/apidocs/gso/gso.products.product_types.md new file mode 100644 index 000000000..ce9c47192 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_types.md @@ -0,0 +1,8 @@ +# {py:mod}`gso.products.product_types` + +```{py:module} gso.products.product_types +``` + +```{autodoc2-docstring} gso.products.product_types +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.products.product_types.router.md b/docs/source/apidocs/gso/gso.products.product_types.router.md new file mode 100644 index 000000000..55f0553d3 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_types.router.md @@ -0,0 +1,51 @@ +--- +orphan: true +--- + +# {py:mod}`gso.products.product_types.router` + +```{py:module} gso.products.product_types.router +``` + +```{autodoc2-docstring} gso.products.product_types.router +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`RouterInactive <gso.products.product_types.router.RouterInactive>` + - +* - {py:obj}`RouterProvisioning <gso.products.product_types.router.RouterProvisioning>` + - +* - {py:obj}`Router <gso.products.product_types.router.Router>` + - +```` + +### API + +```{py:class} RouterInactive +:canonical: gso.products.product_types.router.RouterInactive + +Bases: {py:obj}`orchestrator.domain.base.SubscriptionModel` + +``` + +```{py:class} RouterProvisioning +:canonical: gso.products.product_types.router.RouterProvisioning + +Bases: {py:obj}`gso.products.product_types.router.RouterInactive` + +``` + +```{py:class} Router +:canonical: gso.products.product_types.router.Router + +Bases: {py:obj}`gso.products.product_types.router.RouterProvisioning` + +``` diff --git a/docs/source/apidocs/gso/gso.products.product_types.site.md b/docs/source/apidocs/gso/gso.products.product_types.site.md new file mode 100644 index 000000000..07ee9eb59 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.product_types.site.md @@ -0,0 +1,51 @@ +--- +orphan: true +--- + +# {py:mod}`gso.products.product_types.site` + +```{py:module} gso.products.product_types.site +``` + +```{autodoc2-docstring} gso.products.product_types.site +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`SiteInactive <gso.products.product_types.site.SiteInactive>` + - +* - {py:obj}`SiteProvisioning <gso.products.product_types.site.SiteProvisioning>` + - +* - {py:obj}`Site <gso.products.product_types.site.Site>` + - +```` + +### API + +```{py:class} SiteInactive +:canonical: gso.products.product_types.site.SiteInactive + +Bases: {py:obj}`orchestrator.domain.base.SubscriptionModel` + +``` + +```{py:class} SiteProvisioning +:canonical: gso.products.product_types.site.SiteProvisioning + +Bases: {py:obj}`gso.products.product_types.site.SiteInactive` + +``` + +```{py:class} Site +:canonical: gso.products.product_types.site.Site + +Bases: {py:obj}`gso.products.product_types.site.SiteProvisioning` + +``` diff --git a/docs/source/apidocs/gso/gso.products.shared.md b/docs/source/apidocs/gso/gso.products.shared.md new file mode 100644 index 000000000..dde17d324 --- /dev/null +++ b/docs/source/apidocs/gso/gso.products.shared.md @@ -0,0 +1,38 @@ +--- +orphan: true +--- + +# {py:mod}`gso.products.shared` + +```{py:module} gso.products.shared +``` + +```{autodoc2-docstring} gso.products.shared +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`PortNumber <gso.products.shared.PortNumber>` + - ```{autodoc2-docstring} gso.products.shared.PortNumber + :summary: + ``` +```` + +### API + +````{py:class} PortNumber +:canonical: gso.products.shared.PortNumber + +Bases: {py:obj}`pydantic.ConstrainedInt` + +```{autodoc2-docstring} gso.products.shared.PortNumber +``` + +```` diff --git a/docs/source/apidocs/gso/gso.schemas.enums.md b/docs/source/apidocs/gso/gso.schemas.enums.md new file mode 100644 index 000000000..5812c3583 --- /dev/null +++ b/docs/source/apidocs/gso/gso.schemas.enums.md @@ -0,0 +1,42 @@ +--- +orphan: true +--- + +# {py:mod}`gso.schemas.enums` + +```{py:module} gso.schemas.enums +``` + +```{autodoc2-docstring} gso.schemas.enums +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`ProductType <gso.schemas.enums.ProductType>` + - +* - {py:obj}`SubscriptionStatus <gso.schemas.enums.SubscriptionStatus>` + - +```` + +### API + +```{py:class} ProductType() +:canonical: gso.schemas.enums.ProductType + +Bases: {py:obj}`orchestrator.types.strEnum` + +``` + +```{py:class} SubscriptionStatus() +:canonical: gso.schemas.enums.SubscriptionStatus + +Bases: {py:obj}`orchestrator.types.strEnum` + +``` diff --git a/docs/source/apidocs/gso/gso.schemas.imports.md b/docs/source/apidocs/gso/gso.schemas.imports.md new file mode 100644 index 000000000..24df6922c --- /dev/null +++ b/docs/source/apidocs/gso/gso.schemas.imports.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.schemas.imports` + +```{py:module} gso.schemas.imports +``` + +```{autodoc2-docstring} gso.schemas.imports +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.schemas.md b/docs/source/apidocs/gso/gso.schemas.md new file mode 100644 index 000000000..671959e0e --- /dev/null +++ b/docs/source/apidocs/gso/gso.schemas.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.schemas` + +```{py:module} gso.schemas +``` + +```{autodoc2-docstring} gso.schemas +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.schemas.types.md b/docs/source/apidocs/gso/gso.schemas.types.md new file mode 100644 index 000000000..f6ffb00b7 --- /dev/null +++ b/docs/source/apidocs/gso/gso.schemas.types.md @@ -0,0 +1,52 @@ +--- +orphan: true +--- + +# {py:mod}`gso.schemas.types` + +```{py:module} gso.schemas.types +``` + +```{autodoc2-docstring} gso.schemas.types +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`LatitudeCoordinate <gso.schemas.types.LatitudeCoordinate>` + - ```{autodoc2-docstring} gso.schemas.types.LatitudeCoordinate + :summary: + ``` +* - {py:obj}`LongitudeCoordinate <gso.schemas.types.LongitudeCoordinate>` + - ```{autodoc2-docstring} gso.schemas.types.LongitudeCoordinate + :summary: + ``` +```` + +### API + +````{py:class} LatitudeCoordinate +:canonical: gso.schemas.types.LatitudeCoordinate + +Bases: {py:obj}`pydantic.ConstrainedStr` + +```{autodoc2-docstring} gso.schemas.types.LatitudeCoordinate +``` + +```` + +````{py:class} LongitudeCoordinate +:canonical: gso.schemas.types.LongitudeCoordinate + +Bases: {py:obj}`pydantic.ConstrainedStr` + +```{autodoc2-docstring} gso.schemas.types.LongitudeCoordinate +``` + +```` diff --git a/docs/source/apidocs/gso/gso.services.crm.md b/docs/source/apidocs/gso/gso.services.crm.md new file mode 100644 index 000000000..6ed01e5b2 --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.crm.md @@ -0,0 +1,32 @@ +--- +orphan: true +--- + +# {py:mod}`gso.services.crm` + +```{py:module} gso.services.crm +``` + +```{autodoc2-docstring} gso.services.crm +:allowtitles: +``` + +## Module Contents + +### API + +````{py:exception} CustomerNotFoundError() +:canonical: gso.services.crm.CustomerNotFoundError + +Bases: {py:obj}`Exception` + +```{autodoc2-docstring} gso.services.crm.CustomerNotFoundError +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.services.crm.CustomerNotFoundError.__init__ +``` + +```` diff --git a/docs/source/apidocs/gso/gso.services.infoblox.md b/docs/source/apidocs/gso/gso.services.infoblox.md new file mode 100644 index 000000000..0d99dfcfb --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.infoblox.md @@ -0,0 +1,170 @@ +--- +orphan: true +--- + +# {py:mod}`gso.services.infoblox` + +```{py:module} gso.services.infoblox +``` + +```{autodoc2-docstring} gso.services.infoblox +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`_setup_connection <gso.services.infoblox._setup_connection>` + - ```{autodoc2-docstring} gso.services.infoblox._setup_connection + :summary: + ``` +* - {py:obj}`_allocate_network <gso.services.infoblox._allocate_network>` + - ```{autodoc2-docstring} gso.services.infoblox._allocate_network + :summary: + ``` +* - {py:obj}`hostname_available <gso.services.infoblox.hostname_available>` + - ```{autodoc2-docstring} gso.services.infoblox.hostname_available + :summary: + ``` +* - {py:obj}`allocate_v4_network <gso.services.infoblox.allocate_v4_network>` + - ```{autodoc2-docstring} gso.services.infoblox.allocate_v4_network + :summary: + ``` +* - {py:obj}`allocate_v6_network <gso.services.infoblox.allocate_v6_network>` + - ```{autodoc2-docstring} gso.services.infoblox.allocate_v6_network + :summary: + ``` +* - {py:obj}`find_network_by_cidr <gso.services.infoblox.find_network_by_cidr>` + - ```{autodoc2-docstring} gso.services.infoblox.find_network_by_cidr + :summary: + ``` +* - {py:obj}`delete_network <gso.services.infoblox.delete_network>` + - ```{autodoc2-docstring} gso.services.infoblox.delete_network + :summary: + ``` +* - {py:obj}`allocate_host <gso.services.infoblox.allocate_host>` + - ```{autodoc2-docstring} gso.services.infoblox.allocate_host + :summary: + ``` +* - {py:obj}`find_host_by_ip <gso.services.infoblox.find_host_by_ip>` + - ```{autodoc2-docstring} gso.services.infoblox.find_host_by_ip + :summary: + ``` +* - {py:obj}`find_host_by_fqdn <gso.services.infoblox.find_host_by_fqdn>` + - ```{autodoc2-docstring} gso.services.infoblox.find_host_by_fqdn + :summary: + ``` +* - {py:obj}`delete_host_by_ip <gso.services.infoblox.delete_host_by_ip>` + - ```{autodoc2-docstring} gso.services.infoblox.delete_host_by_ip + :summary: + ``` +* - {py:obj}`delete_host_by_fqdn <gso.services.infoblox.delete_host_by_fqdn>` + - ```{autodoc2-docstring} gso.services.infoblox.delete_host_by_fqdn + :summary: + ``` +```` + +### API + +```{py:exception} AllocationError() +:canonical: gso.services.infoblox.AllocationError + +Bases: {py:obj}`Exception` + +``` + +```{py:exception} DeletionError() +:canonical: gso.services.infoblox.DeletionError + +Bases: {py:obj}`Exception` + +``` + +````{py:function} _setup_connection() -> tuple[infoblox_client.connector.Connector, gso.settings.IPAMParams] +:canonical: gso.services.infoblox._setup_connection + +```{autodoc2-docstring} gso.services.infoblox._setup_connection +``` +```` + +````{py:function} _allocate_network(conn: infoblox_client.connector.Connector, dns_view: str, netmask: int, containers: list[str], comment: str | None = '') -> ipaddress.IPv4Network | ipaddress.IPv6Network +:canonical: gso.services.infoblox._allocate_network + +```{autodoc2-docstring} gso.services.infoblox._allocate_network +``` +```` + +````{py:function} hostname_available(hostname: str) -> bool +:canonical: gso.services.infoblox.hostname_available + +```{autodoc2-docstring} gso.services.infoblox.hostname_available +``` +```` + +````{py:function} allocate_v4_network(service_type: str, comment: str | None = '') -> ipaddress.IPv4Network +:canonical: gso.services.infoblox.allocate_v4_network + +```{autodoc2-docstring} gso.services.infoblox.allocate_v4_network +``` +```` + +````{py:function} allocate_v6_network(service_type: str, comment: str | None = '') -> ipaddress.IPv6Network +:canonical: gso.services.infoblox.allocate_v6_network + +```{autodoc2-docstring} gso.services.infoblox.allocate_v6_network +``` +```` + +````{py:function} find_network_by_cidr(ip_network: ipaddress.IPv4Network | ipaddress.IPv6Network) -> infoblox_client.objects.Network | None +:canonical: gso.services.infoblox.find_network_by_cidr + +```{autodoc2-docstring} gso.services.infoblox.find_network_by_cidr +``` +```` + +````{py:function} delete_network(ip_network: ipaddress.IPv4Network | ipaddress.IPv6Network) -> None +:canonical: gso.services.infoblox.delete_network + +```{autodoc2-docstring} gso.services.infoblox.delete_network +``` +```` + +````{py:function} allocate_host(hostname: str, service_type: str, cname_aliases: list[str], comment: str) -> tuple[ipaddress.IPv4Address, ipaddress.IPv6Address] +:canonical: gso.services.infoblox.allocate_host + +```{autodoc2-docstring} gso.services.infoblox.allocate_host +``` +```` + +````{py:function} find_host_by_ip(ip_addr: ipaddress.IPv4Address | ipaddress.IPv6Address) -> infoblox_client.objects.HostRecord | None +:canonical: gso.services.infoblox.find_host_by_ip + +```{autodoc2-docstring} gso.services.infoblox.find_host_by_ip +``` +```` + +````{py:function} find_host_by_fqdn(fqdn: str) -> infoblox_client.objects.HostRecord | None +:canonical: gso.services.infoblox.find_host_by_fqdn + +```{autodoc2-docstring} gso.services.infoblox.find_host_by_fqdn +``` +```` + +````{py:function} delete_host_by_ip(ip_addr: ipaddress.IPv4Address | ipaddress.IPv6Address) -> None +:canonical: gso.services.infoblox.delete_host_by_ip + +```{autodoc2-docstring} gso.services.infoblox.delete_host_by_ip +``` +```` + +````{py:function} delete_host_by_fqdn(fqdn: str) -> None +:canonical: gso.services.infoblox.delete_host_by_fqdn + +```{autodoc2-docstring} gso.services.infoblox.delete_host_by_fqdn +``` +```` diff --git a/docs/source/apidocs/gso/gso.services.md b/docs/source/apidocs/gso/gso.services.md new file mode 100644 index 000000000..905955213 --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.md @@ -0,0 +1,17 @@ +# {py:mod}`gso.services` + +```{py:module} gso.services +``` + +```{autodoc2-docstring} gso.services +:allowtitles: +``` + +## Submodules + +```{toctree} +:titlesonly: +:maxdepth: 1 + +gso.services.provisioning_proxy +``` diff --git a/docs/source/apidocs/gso/gso.services.provisioning_proxy.md b/docs/source/apidocs/gso/gso.services.provisioning_proxy.md new file mode 100644 index 000000000..197681bed --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.provisioning_proxy.md @@ -0,0 +1,180 @@ +# {py:mod}`gso.services.provisioning_proxy` + +```{py:module} gso.services.provisioning_proxy +``` + +```{autodoc2-docstring} gso.services.provisioning_proxy +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`CUDOperation <gso.services.provisioning_proxy.CUDOperation>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.CUDOperation + :summary: + ``` +```` + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`_send_request <gso.services.provisioning_proxy._send_request>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy._send_request + :summary: + ``` +* - {py:obj}`provision_router <gso.services.provisioning_proxy.provision_router>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.provision_router + :summary: + ``` +* - {py:obj}`provision_ip_trunk <gso.services.provisioning_proxy.provision_ip_trunk>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.provision_ip_trunk + :summary: + ``` +* - {py:obj}`check_ip_trunk <gso.services.provisioning_proxy.check_ip_trunk>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.check_ip_trunk + :summary: + ``` +* - {py:obj}`deprovision_ip_trunk <gso.services.provisioning_proxy.deprovision_ip_trunk>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.deprovision_ip_trunk + :summary: + ``` +* - {py:obj}`migrate_ip_trunk <gso.services.provisioning_proxy.migrate_ip_trunk>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.migrate_ip_trunk + :summary: + ``` +* - {py:obj}`_await_pp_results <gso.services.provisioning_proxy._await_pp_results>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy._await_pp_results + :summary: + ``` +* - {py:obj}`_reset_pp_success_state <gso.services.provisioning_proxy._reset_pp_success_state>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy._reset_pp_success_state + :summary: + ``` +* - {py:obj}`_confirm_pp_results <gso.services.provisioning_proxy._confirm_pp_results>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy._confirm_pp_results + :summary: + ``` +* - {py:obj}`pp_interaction <gso.services.provisioning_proxy.pp_interaction>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.pp_interaction + :summary: + ``` +```` + +### Data + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`DEFAULT_LABEL <gso.services.provisioning_proxy.DEFAULT_LABEL>` + - ```{autodoc2-docstring} gso.services.provisioning_proxy.DEFAULT_LABEL + :summary: + ``` +```` + +### API + +````{py:data} DEFAULT_LABEL +:canonical: gso.services.provisioning_proxy.DEFAULT_LABEL +:value: > + 'Provisioning proxy is running. Please come back later for the results.' + +```{autodoc2-docstring} gso.services.provisioning_proxy.DEFAULT_LABEL +``` + +```` + +````{py:class} CUDOperation() +:canonical: gso.services.provisioning_proxy.CUDOperation + +Bases: {py:obj}`orchestrator.types.strEnum` + +```{autodoc2-docstring} gso.services.provisioning_proxy.CUDOperation +``` + +```{rubric} Initialization +``` + +```{autodoc2-docstring} gso.services.provisioning_proxy.CUDOperation.__init__ +``` + +```` + +````{py:function} _send_request(endpoint: str, parameters: dict, process_id: orchestrator.types.UUIDstr, operation: gso.services.provisioning_proxy.CUDOperation) -> None +:canonical: gso.services.provisioning_proxy._send_request + +```{autodoc2-docstring} gso.services.provisioning_proxy._send_request +``` +```` + +````{py:function} provision_router(subscription: gso.products.product_types.router.RouterProvisioning, process_id: orchestrator.types.UUIDstr, tt_number: str, dry_run: bool = True) -> None +:canonical: gso.services.provisioning_proxy.provision_router + +```{autodoc2-docstring} gso.services.provisioning_proxy.provision_router +``` +```` + +````{py:function} provision_ip_trunk(subscription: gso.products.product_types.iptrunk.IptrunkProvisioning, process_id: orchestrator.types.UUIDstr, tt_number: str, config_object: str, dry_run: bool = True) -> None +:canonical: gso.services.provisioning_proxy.provision_ip_trunk + +```{autodoc2-docstring} gso.services.provisioning_proxy.provision_ip_trunk +``` +```` + +````{py:function} check_ip_trunk(subscription: gso.products.product_types.iptrunk.IptrunkProvisioning, process_id: orchestrator.types.UUIDstr, tt_number: str, check_name: str) -> None +:canonical: gso.services.provisioning_proxy.check_ip_trunk + +```{autodoc2-docstring} gso.services.provisioning_proxy.check_ip_trunk +``` +```` + +````{py:function} deprovision_ip_trunk(subscription: gso.products.product_types.iptrunk.Iptrunk, process_id: orchestrator.types.UUIDstr, tt_number: str, dry_run: bool = True) -> None +:canonical: gso.services.provisioning_proxy.deprovision_ip_trunk + +```{autodoc2-docstring} gso.services.provisioning_proxy.deprovision_ip_trunk +``` +```` + +````{py:function} migrate_ip_trunk(subscription: gso.products.product_types.iptrunk.Iptrunk, new_node: gso.products.product_types.router.Router, new_lag_interface: str, new_lag_member_interfaces: list[str], replace_index: int, process_id: orchestrator.types.UUIDstr, tt_number: str, verb: str, config_object: str, dry_run: bool = True) -> None +:canonical: gso.services.provisioning_proxy.migrate_ip_trunk + +```{autodoc2-docstring} gso.services.provisioning_proxy.migrate_ip_trunk +``` +```` + +````{py:function} _await_pp_results(subscription: orchestrator.domain.SubscriptionModel, label_text: str = DEFAULT_LABEL) -> orchestrator.types.FormGenerator +:canonical: gso.services.provisioning_proxy._await_pp_results + +```{autodoc2-docstring} gso.services.provisioning_proxy._await_pp_results +``` +```` + +````{py:function} _reset_pp_success_state() -> orchestrator.types.State +:canonical: gso.services.provisioning_proxy._reset_pp_success_state + +```{autodoc2-docstring} gso.services.provisioning_proxy._reset_pp_success_state +``` +```` + +````{py:function} _confirm_pp_results(state: orchestrator.types.State) -> orchestrator.types.FormGenerator +:canonical: gso.services.provisioning_proxy._confirm_pp_results + +```{autodoc2-docstring} gso.services.provisioning_proxy._confirm_pp_results +``` +```` + +````{py:function} pp_interaction(provisioning_step: orchestrator.workflow.Step, attempts: int, abort_on_failure: bool = True) -> orchestrator.workflow.StepList +:canonical: gso.services.provisioning_proxy.pp_interaction + +```{autodoc2-docstring} gso.services.provisioning_proxy.pp_interaction +``` +```` diff --git a/docs/source/apidocs/gso/gso.services.resource_manager.md b/docs/source/apidocs/gso/gso.services.resource_manager.md new file mode 100644 index 000000000..2fbd130b4 --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.resource_manager.md @@ -0,0 +1,33 @@ +--- +orphan: true +--- + +# {py:mod}`gso.services.resource_manager` + +```{py:module} gso.services.resource_manager +``` + +```{autodoc2-docstring} gso.services.resource_manager +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`InterfaceAllocationState <gso.services.resource_manager.InterfaceAllocationState>` + - +```` + +### API + +```{py:class} InterfaceAllocationState(*args, **kwds) +:canonical: gso.services.resource_manager.InterfaceAllocationState + +Bases: {py:obj}`enum.Enum` + +``` diff --git a/docs/source/apidocs/gso/gso.services.subscriptions.md b/docs/source/apidocs/gso/gso.services.subscriptions.md new file mode 100644 index 000000000..fbebf67a2 --- /dev/null +++ b/docs/source/apidocs/gso/gso.services.subscriptions.md @@ -0,0 +1,79 @@ +--- +orphan: true +--- + +# {py:mod}`gso.services.subscriptions` + +```{py:module} gso.services.subscriptions +``` + +```{autodoc2-docstring} gso.services.subscriptions +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`get_active_subscriptions <gso.services.subscriptions.get_active_subscriptions>` + - ```{autodoc2-docstring} gso.services.subscriptions.get_active_subscriptions + :summary: + ``` +* - {py:obj}`get_active_site_subscriptions <gso.services.subscriptions.get_active_site_subscriptions>` + - ```{autodoc2-docstring} gso.services.subscriptions.get_active_site_subscriptions + :summary: + ``` +* - {py:obj}`get_active_router_subscriptions <gso.services.subscriptions.get_active_router_subscriptions>` + - ```{autodoc2-docstring} gso.services.subscriptions.get_active_router_subscriptions + :summary: + ``` +* - {py:obj}`get_product_id_by_name <gso.services.subscriptions.get_product_id_by_name>` + - ```{autodoc2-docstring} gso.services.subscriptions.get_product_id_by_name + :summary: + ``` +* - {py:obj}`get_active_site_subscription_by_name <gso.services.subscriptions.get_active_site_subscription_by_name>` + - ```{autodoc2-docstring} gso.services.subscriptions.get_active_site_subscription_by_name + :summary: + ``` +```` + +### API + +````{py:function} get_active_subscriptions(product_type: str, fields: list[str]) -> list[asyncio_redis.Subscription] +:canonical: gso.services.subscriptions.get_active_subscriptions + +```{autodoc2-docstring} gso.services.subscriptions.get_active_subscriptions +``` +```` + +````{py:function} get_active_site_subscriptions(fields: list[str]) -> list[asyncio_redis.Subscription] +:canonical: gso.services.subscriptions.get_active_site_subscriptions + +```{autodoc2-docstring} gso.services.subscriptions.get_active_site_subscriptions +``` +```` + +````{py:function} get_active_router_subscriptions(fields: list[str]) -> list[asyncio_redis.Subscription] +:canonical: gso.services.subscriptions.get_active_router_subscriptions + +```{autodoc2-docstring} gso.services.subscriptions.get_active_router_subscriptions +``` +```` + +````{py:function} get_product_id_by_name(product_name: gso.schemas.enums.ProductType) -> uuid.UUID +:canonical: gso.services.subscriptions.get_product_id_by_name + +```{autodoc2-docstring} gso.services.subscriptions.get_product_id_by_name +``` +```` + +````{py:function} get_active_site_subscription_by_name(site_name: str) -> asyncio_redis.Subscription +:canonical: gso.services.subscriptions.get_active_site_subscription_by_name + +```{autodoc2-docstring} gso.services.subscriptions.get_active_site_subscription_by_name +``` +```` diff --git a/docs/source/apidocs/gso/gso.settings.md b/docs/source/apidocs/gso/gso.settings.md new file mode 100644 index 000000000..6e053d48a --- /dev/null +++ b/docs/source/apidocs/gso/gso.settings.md @@ -0,0 +1,176 @@ +# {py:mod}`gso.settings` + +```{py:module} gso.settings +``` + +```{autodoc2-docstring} gso.settings +:allowtitles: +``` + +## Module Contents + +### Classes + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`GeneralParams <gso.settings.GeneralParams>` + - ```{autodoc2-docstring} gso.settings.GeneralParams + :summary: + ``` +* - {py:obj}`InfoBloxParams <gso.settings.InfoBloxParams>` + - ```{autodoc2-docstring} gso.settings.InfoBloxParams + :summary: + ``` +* - {py:obj}`V4NetworkParams <gso.settings.V4NetworkParams>` + - ```{autodoc2-docstring} gso.settings.V4NetworkParams + :summary: + ``` +* - {py:obj}`V6NetworkParams <gso.settings.V6NetworkParams>` + - ```{autodoc2-docstring} gso.settings.V6NetworkParams + :summary: + ``` +* - {py:obj}`ServiceNetworkParams <gso.settings.ServiceNetworkParams>` + - ```{autodoc2-docstring} gso.settings.ServiceNetworkParams + :summary: + ``` +* - {py:obj}`IPAMParams <gso.settings.IPAMParams>` + - ```{autodoc2-docstring} gso.settings.IPAMParams + :summary: + ``` +* - {py:obj}`ProvisioningProxyParams <gso.settings.ProvisioningProxyParams>` + - ```{autodoc2-docstring} gso.settings.ProvisioningProxyParams + :summary: + ``` +* - {py:obj}`ResourceManagementParams <gso.settings.ResourceManagementParams>` + - ```{autodoc2-docstring} gso.settings.ResourceManagementParams + :summary: + ``` +* - {py:obj}`OSSParams <gso.settings.OSSParams>` + - ```{autodoc2-docstring} gso.settings.OSSParams + :summary: + ``` +```` + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`load_oss_params <gso.settings.load_oss_params>` + - ```{autodoc2-docstring} gso.settings.load_oss_params + :summary: + ``` +```` + +### API + +`````{py:class} GeneralParams +:canonical: gso.settings.GeneralParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.GeneralParams +``` + +````{py:attribute} public_hostname +:canonical: gso.settings.GeneralParams.public_hostname +:type: str +:value: > + None + +```{autodoc2-docstring} gso.settings.GeneralParams.public_hostname +``` + +```` + +````` + +````{py:class} InfoBloxParams +:canonical: gso.settings.InfoBloxParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.InfoBloxParams +``` + +```` + +````{py:class} V4NetworkParams +:canonical: gso.settings.V4NetworkParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.V4NetworkParams +``` + +```` + +````{py:class} V6NetworkParams +:canonical: gso.settings.V6NetworkParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.V6NetworkParams +``` + +```` + +````{py:class} ServiceNetworkParams +:canonical: gso.settings.ServiceNetworkParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.ServiceNetworkParams +``` + +```` + +````{py:class} IPAMParams +:canonical: gso.settings.IPAMParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.IPAMParams +``` + +```` + +````{py:class} ProvisioningProxyParams +:canonical: gso.settings.ProvisioningProxyParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.ProvisioningProxyParams +``` + +```` + +````{py:class} ResourceManagementParams +:canonical: gso.settings.ResourceManagementParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.ResourceManagementParams +``` + +```` + +````{py:class} OSSParams +:canonical: gso.settings.OSSParams + +Bases: {py:obj}`pydantic.BaseSettings` + +```{autodoc2-docstring} gso.settings.OSSParams +``` + +```` + +````{py:function} load_oss_params() -> gso.settings.OSSParams +:canonical: gso.settings.load_oss_params + +```{autodoc2-docstring} gso.settings.load_oss_params +``` +```` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.create_iptrunk.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.create_iptrunk.md new file mode 100644 index 000000000..b2cf96545 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.create_iptrunk.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.create_iptrunk` + +```{py:module} gso.workflows.iptrunk.create_iptrunk +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.create_iptrunk +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.md new file mode 100644 index 000000000..4aec5c9b5 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk` + +```{py:module} gso.workflows.iptrunk +``` + +```{autodoc2-docstring} gso.workflows.iptrunk +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.migrate_iptrunk.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.migrate_iptrunk.md new file mode 100644 index 000000000..b34ebd283 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.migrate_iptrunk.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.migrate_iptrunk` + +```{py:module} gso.workflows.iptrunk.migrate_iptrunk +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.migrate_iptrunk +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_isis_metric.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_isis_metric.md new file mode 100644 index 000000000..b46fafd6f --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_isis_metric.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.modify_isis_metric` + +```{py:module} gso.workflows.iptrunk.modify_isis_metric +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.modify_isis_metric +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_trunk_interface.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_trunk_interface.md new file mode 100644 index 000000000..a43baeee8 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.modify_trunk_interface.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.modify_trunk_interface` + +```{py:module} gso.workflows.iptrunk.modify_trunk_interface +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.modify_trunk_interface +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.terminate_iptrunk.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.terminate_iptrunk.md new file mode 100644 index 000000000..b8f4064cb --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.terminate_iptrunk.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.terminate_iptrunk` + +```{py:module} gso.workflows.iptrunk.terminate_iptrunk +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.terminate_iptrunk +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.iptrunk.utils.md b/docs/source/apidocs/gso/gso.workflows.iptrunk.utils.md new file mode 100644 index 000000000..bfb1debc0 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.iptrunk.utils.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.iptrunk.utils` + +```{py:module} gso.workflows.iptrunk.utils +``` + +```{autodoc2-docstring} gso.workflows.iptrunk.utils +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.md b/docs/source/apidocs/gso/gso.workflows.md new file mode 100644 index 000000000..1fd9feee8 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.md @@ -0,0 +1,8 @@ +# {py:mod}`gso.workflows` + +```{py:module} gso.workflows +``` + +```{autodoc2-docstring} gso.workflows +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.router.create_router.md b/docs/source/apidocs/gso/gso.workflows.router.create_router.md new file mode 100644 index 000000000..144df1de9 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.router.create_router.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.router.create_router` + +```{py:module} gso.workflows.router.create_router +``` + +```{autodoc2-docstring} gso.workflows.router.create_router +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.router.md b/docs/source/apidocs/gso/gso.workflows.router.md new file mode 100644 index 000000000..fd21bf949 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.router.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.router` + +```{py:module} gso.workflows.router +``` + +```{autodoc2-docstring} gso.workflows.router +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.router.terminate_router.md b/docs/source/apidocs/gso/gso.workflows.router.terminate_router.md new file mode 100644 index 000000000..f157cdba8 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.router.terminate_router.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.router.terminate_router` + +```{py:module} gso.workflows.router.terminate_router +``` + +```{autodoc2-docstring} gso.workflows.router.terminate_router +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.site.create_site.md b/docs/source/apidocs/gso/gso.workflows.site.create_site.md new file mode 100644 index 000000000..aeba1128f --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.site.create_site.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.site.create_site` + +```{py:module} gso.workflows.site.create_site +``` + +```{autodoc2-docstring} gso.workflows.site.create_site +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.site.md b/docs/source/apidocs/gso/gso.workflows.site.md new file mode 100644 index 000000000..57164957a --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.site.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.site` + +```{py:module} gso.workflows.site +``` + +```{autodoc2-docstring} gso.workflows.site +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.tasks.import_iptrunk.md b/docs/source/apidocs/gso/gso.workflows.tasks.import_iptrunk.md new file mode 100644 index 000000000..495e0dda5 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.tasks.import_iptrunk.md @@ -0,0 +1,35 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.tasks.import_iptrunk` + +```{py:module} gso.workflows.tasks.import_iptrunk +``` + +```{autodoc2-docstring} gso.workflows.tasks.import_iptrunk +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`_generate_routers <gso.workflows.tasks.import_iptrunk._generate_routers>` + - ```{autodoc2-docstring} gso.workflows.tasks.import_iptrunk._generate_routers + :summary: + ``` +```` + +### API + +````{py:function} _generate_routers() -> dict[str, str] +:canonical: gso.workflows.tasks.import_iptrunk._generate_routers + +```{autodoc2-docstring} gso.workflows.tasks.import_iptrunk._generate_routers +``` +```` diff --git a/docs/source/apidocs/gso/gso.workflows.tasks.import_router.md b/docs/source/apidocs/gso/gso.workflows.tasks.import_router.md new file mode 100644 index 000000000..d357f6ea3 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.tasks.import_router.md @@ -0,0 +1,35 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.tasks.import_router` + +```{py:module} gso.workflows.tasks.import_router +``` + +```{autodoc2-docstring} gso.workflows.tasks.import_router +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`_get_site_by_name <gso.workflows.tasks.import_router._get_site_by_name>` + - ```{autodoc2-docstring} gso.workflows.tasks.import_router._get_site_by_name + :summary: + ``` +```` + +### API + +````{py:function} _get_site_by_name(site_name: str) -> gso.products.product_types.site.Site +:canonical: gso.workflows.tasks.import_router._get_site_by_name + +```{autodoc2-docstring} gso.workflows.tasks.import_router._get_site_by_name +``` +```` diff --git a/docs/source/apidocs/gso/gso.workflows.tasks.import_site.md b/docs/source/apidocs/gso/gso.workflows.tasks.import_site.md new file mode 100644 index 000000000..eb4b16061 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.tasks.import_site.md @@ -0,0 +1,35 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.tasks.import_site` + +```{py:module} gso.workflows.tasks.import_site +``` + +```{autodoc2-docstring} gso.workflows.tasks.import_site +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`import_site <gso.workflows.tasks.import_site.import_site>` + - ```{autodoc2-docstring} gso.workflows.tasks.import_site.import_site + :summary: + ``` +```` + +### API + +````{py:function} import_site() -> orchestrator.workflow.StepList +:canonical: gso.workflows.tasks.import_site.import_site + +```{autodoc2-docstring} gso.workflows.tasks.import_site.import_site +``` +```` diff --git a/docs/source/apidocs/gso/gso.workflows.tasks.md b/docs/source/apidocs/gso/gso.workflows.tasks.md new file mode 100644 index 000000000..1d9cca399 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.tasks.md @@ -0,0 +1,12 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.tasks` + +```{py:module} gso.workflows.tasks +``` + +```{autodoc2-docstring} gso.workflows.tasks +:allowtitles: +``` diff --git a/docs/source/apidocs/gso/gso.workflows.utils.md b/docs/source/apidocs/gso/gso.workflows.utils.md new file mode 100644 index 000000000..b6fc77e13 --- /dev/null +++ b/docs/source/apidocs/gso/gso.workflows.utils.md @@ -0,0 +1,35 @@ +--- +orphan: true +--- + +# {py:mod}`gso.workflows.utils` + +```{py:module} gso.workflows.utils +``` + +```{autodoc2-docstring} gso.workflows.utils +:allowtitles: +``` + +## Module Contents + +### Functions + +````{list-table} +:class: autosummary longtable +:align: left + +* - {py:obj}`iso_from_ipv4 <gso.workflows.utils.iso_from_ipv4>` + - ```{autodoc2-docstring} gso.workflows.utils.iso_from_ipv4 + :summary: + ``` +```` + +### API + +````{py:function} iso_from_ipv4(ipv4_address: ipaddress.IPv4Address) -> str +:canonical: gso.workflows.utils.iso_from_ipv4 + +```{autodoc2-docstring} gso.workflows.utils.iso_from_ipv4 +``` +```` diff --git a/requirements.txt b/requirements.txt index b103da38a..8509293b6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,15 +2,17 @@ orchestrator-core==1.3.0 requests==2.31.0 infoblox-client~=0.6.0 pycountry==22.3.5 +pynetbox==7.2.0 + +# Test and linting dependencies pytest==7.4.2 -faker==19.6.2 +faker==19.10.0 responses==0.23.3 black==23.9.1 isort==5.12.0 flake8==6.1.0 -mypy==1.5.1 -ruff==0.0.290 +mypy==1.6.0 +ruff==0.0.292 sphinx==7.2.6 sphinx-rtd-theme==1.3.0 -urllib3_mock==0.3.3 -pynetbox==7.2.0 +urllib3_mock==0.3.3 \ No newline at end of file -- GitLab