Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ML Server Administration utility not working on fresh DSVM #132

Open
okhoma opened this issue Apr 12, 2018 · 3 comments
Open

ML Server Administration utility not working on fresh DSVM #132

okhoma opened this issue Apr 12, 2018 · 3 comments
Labels
customer-reported Issues that are reported by GitHub users external to the Azure organization. extension/ml needs-team-attention This issue needs attention from Azure service team or SDK team Service Attention This issue is responsible by Azure service team.

Comments

@okhoma
Copy link

okhoma commented Apr 12, 2018

Extension name (the extension in question)

azure-ml-admin-cli

Description of issue (in as much detail as possible)

New Windows 2016 DSVM comes with ML Server 9.3.0 preinstalled. However, running Administration Utils immediately after installation results in an error:

C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin>cd "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin" && az ml admin --help
az: error: argument _command_package: invalid choice: ml
usage: az [-h] [--verbose] [--debug] [--output {json,jsonc,table,tsv}]
          [--query JMESPATH]
          {acr,acs,aks,advisor,webapp,appservice,functionapp,backup,batch,batchai,billing,cdn,cloud,cognitiveservices,configure,consumption,container,cosmosdb,dla,dls,eventgrid,extension,feedback,find,interactive,iot,keyvault,lab,monitor,network,login,logout,account,mysql,postgres,redis,reservations,group,resource,provider,feature,tag,policy,lock,managedapp,role,ad,sf,sql,storage,disk,identity,image,snapshot,vm,vmss}
          ...

VM version: microsoft-ads:windows-data-science-vm:windows2016:18.02.00


C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin>az --version
azure-cli (2.0.27)

acr (2.0.21)
acs (2.0.26)
advisor (0.1.2)
appservice (0.1.26)
backup (1.0.6)
batch (3.1.10)
batchai (0.1.5)
billing (0.1.7)
cdn (0.0.13)
cloud (2.0.12)
cognitiveservices (0.1.10)
command-modules-nspkg (2.0.1)
configure (2.0.14)
consumption (0.2.1)
container (0.1.18)
core (2.0.27)
cosmosdb (0.1.19)
dla (0.0.18)
dls (0.0.19)
eventgrid (0.1.10)
extension (0.0.9)
feedback (2.1.0)
find (0.2.8)
interactive (0.3.16)
iot (0.1.17)
keyvault (2.0.18)
lab (0.0.17)
monitor (0.1.2)
network (2.0.23)
nspkg (3.0.1)
profile (2.0.19)
rdbms (0.0.12)
redis (0.2.11)
reservations (0.1.1)
resource (2.0.23)
role (2.0.19)
servicefabric (0.0.10)
sql (2.0.21)
storage (2.0.25)
vm (2.0.26)

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\labdsvm-admin.azure\cliextensions'

Python (Windows) 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)]

Legal docs and information: aka.ms/AzureCliLegal

@okhoma
Copy link
Author

okhoma commented Apr 12, 2018

It seems that this extension is installed by default to user's .azure folder and other users cannot use it unless they reinstall ML Server, which is not convenient. In case of DSVM, extensions must have been installed to user .azure folder who was creating the disk image and after instantiation, users can no longer use it.

@wilsonmar
Copy link

@okhoma when I run az ml --help the response is:
az: error: argument _command_package: invalid choice: ml
Did I do something wrong or Is there a workaround to this?

@okhoma
Copy link
Author

okhoma commented May 22, 2018

@wilsonmar Check out https://social.technet.microsoft.com/Forums/en-US/8d94bfec-9bd0-4ec5-8422-6ed8c20b0347/how-to-install-azuremladmincli-extensions-for-other-user-without-reinstalling-ml-server?forum=MicrosoftR I don't know if your problem is the same, but the easiest solution is to reinstall ML Server or get .azureml/cliextensions folder from the user who installed it.

@yonzhan yonzhan added the Service Attention This issue is responsible by Azure service team. label Dec 25, 2019
@azure-sdk azure-sdk added the customer-reported Issues that are reported by GitHub users external to the Azure organization. label Sep 24, 2020
@azure-sdk azure-sdk added the needs-team-attention This issue needs attention from Azure service team or SDK team label Jan 5, 2021
zhoxing-ms pushed a commit that referenced this issue Jul 29, 2022
* Create pull.yml

* Update pull.yml

* Update azure-pipelines.yml

* Initial commit of k8s-extension

* Update pipelines file

* Update CODEOWNERS

* Update private preview pipelines

* Remove open service mesh from public release

* Update pipeline files

* Update public extension pipeline

* Change condition variable

* Add version to public preview/private preview

* Update pipelines

* Add different testing based on private branch

* Add annotations to extension model

* Update k8s-custom-pipelines.yml

* Update SDKs with Updated Swagger Spec for 2020-07-01-preview (#13)

* Update sdks with updated swagger spec

* Update version and history rst

* Reorder release history timeline

* Fix ExtensionInstanceForCreate for import

* remove py2 bdist support

* Add custom table formatting

* Remove unnecessary files

* Fix style issues

* Fix branch based on comments

* Update identity piece manually

* Don't handle defaults at the CLI level

* Remove defaults from CLI client

* Check null target namespace with namespace scope

* Update style

* Add cassandra operator and location to model

* Stage Public Version of k8s-extension 0.2.0 for official release (#15)

* Create pull.yml

* Update pull.yml

* Update azure-pipelines.yml

* Initial commit of k8s-extension

* Update pipelines file

* Update CODEOWNERS

* Update private preview pipelines

* Remove open service mesh from public release

* Update pipeline files

* Update public extension pipeline

* Change condition variable

* Add version to public preview/private preview

* Update pipelines

* Add different testing based on private branch

* Add annotations to extension model

* Update k8s-custom-pipelines.yml

* Update SDKs with Updated Swagger Spec for 2020-07-01-preview (#13)

* Update sdks with updated swagger spec

* Update version and history rst

* Reorder release history timeline

* Fix ExtensionInstanceForCreate for import

* remove py2 bdist support

* Add custom table formatting

* Remove unnecessary files

* Fix style issues

* Fix branch based on comments

* Update identity piece manually

* Don't handle defaults at the CLI level

* Remove defaults from CLI client

* Check null target namespace with namespace scope

* Update style

* Add cassandra operator and location to model

Co-authored-by: action@github.com <Action - Fork Sync>

* Remove custom pipelines file

* Update extension description, remove private const

* Update pipeline file

* Disable refs docs

* Update to include better create warning logs and remove update context (#20)

* Update to include better create warning logs and remove update context

* Remove help text for update

* Fix spelling error

* Update message

* Fix k8s-extension conflict with private version

* Fix style errors

* Fix filename

* add customization for microsoft.azureml.kubernetes (#23)

* add customization for microsoft.azureml.kubernetes

* Update release history

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: jonathan-innis <jonathan.innis.ji@gmail.com>

* Add E2E Testing from Separate branch into internal code (#26)

* Add internal e2e testing

* Change to testing folder

* Inference CLI validation for Scoring FE (#24)

* cli validation starter

* added the call to the fe validation function

* nodeport validation not required

* test fix

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* legal warning added (#27)

* Remove deprecated method logger.warn

* Update k8s-custom-pipelines.yml for Azure Pipelines

* Update k8s-custom-pipelines.yml for Azure Pipelines

* Add Azure Defender to E2E testing (#28)

* Add azure defender testing to e2e

* Remove the debug flag

* Add configuration testing

* Fix pipeline failures

* Make test script more intuitive

* Remove parameter from testing

* Fix wrong location for k8s config whl

* Fix pip upgrade issue

* Fix pip install upgrade issue

* Fix pip install issue

* delete resurce in testcase (#29)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Check Provider is Registered with Subscription Before Making Requests (#18)

* Add check for KubernetesConfiguration

* Disable pylint and rename

* Update provider registration link

* Update version

* Remove extra blank line

* Fix bug in import

* only validate scoring fe when inference is enabled (#31)

* only validate scoring fe when inference is enabled

* Fix versioning

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: jonathan-innis <jonathan.innis.ji@gmail.com>

* Provider registration case insensitive

* do not validate against scoring fe if inference is not enabled. (#33)

* do not validate against scoring fe if inference is not enabled.

* add inference enabled scenario

* refine

* increase sleeping time

* fix

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Add OSM as Public Preview Extension (#34)

* Add OSM as public preview extension

* Add osm testing

* Add release train to tests

* Fix failing osm test

* Upgrade pip in integration testing

* Remove ununsed import

* Fix release train check in update

* Parallelize E2E Testing (#36)

* Add OSM as public preview extension

* Add osm testing

* Update test logic to parallelize

* Fix test success checking

* Parallelize extension testing

* Better error checking logic

* Fix azureml deletion

* Fix private build (#40)

* change amlk8s to amlarc (#42)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Servicebus client model changes (#44)

* Servicebus client model changes

* Fix testing script

* Update history file and pipeline

* Update min cli core version for track 2 updates

* Read SSL cert and key from files (#38)

* first sketch of the change

fixes

removed extra blank lines

changes regarding param renaming

added ssl tests

added more detail to the unit test

additional import

moved pem files out of public folder

fixed import

chenged import

changed import

unit tests fix

unit test fix

fixed unit tests

fixed unit test

unit test fix

changes int test cert and key

* test protected config

* fix test typo

* temporary changes reverted

* fixing tests

* fixed file paths

* removed accidentally added file

* changes according to review comments

* more changes according to review comments

* changes according to review comments

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Upgrade release version

* Liakaz/inference read ssl from file (#47)

* first sketch of the change

fixes

removed extra blank lines

changes regarding param renaming

added ssl tests

added more detail to the unit test

additional import

moved pem files out of public folder

fixed import

chenged import

changed import

unit tests fix

unit test fix

fixed unit tests

fixed unit test

unit test fix

changes int test cert and key

* test protected config

* fix test typo

* temporary changes reverted

* fixing tests

* fixed file paths

* removed accidentally added file

* changes according to review comments

* more changes according to review comments

* changes according to review comments

* fixed decode error

* renamed the experimental param

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Fix style issues (#51)

* Fixed scoring fe related extension param names (#49)

* fixed scoring fe related extension params

* bug fix and style fixes

* variable rename

* fixed the error type

* set cluster to prod by default

* Add distro validation for osm-arc (#50)

* Add distro validation for osm-arc

* fixed indentation

* Fix linting

* Resolve comments

* Add unit test

* fix lint

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Add distro validation for osm-arc (#50)

* Add distro validation for osm-arc

* fixed indentation

* Fix linting

* Resolve comments

* Add unit test

* fix lint

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Add distro validation for osm-arc (#53)

removed release-train logic

* Add Custom Delete Logic for Partners (#54)

* Add custom delete logic

* Fix failing unit tests

* Add warning message when deleting amlarc extension (#55)

* add warning message

* fix indentation

* Update release version

* Remove Pyhelm from OSM customization (#58)

* Fix OSM pyhelm bug

* Debug bootstrap error

* Update release message

* Remove pyhelm dependency

* Update tests to only check extensionconfig creation (#61)

* Update tests to only check extensionconfig creation

* Single set of CRUD for AzureML

* Debug logs for connectedk8s

* Increase open service mesh version number

* Update k8s-extension Models to Track2 (#64)

* Update k8s-extension models to track2

* Add debug for failed cleanup

* Increase version number

* Exit 0 on failed cleanup

* Fix identity in wrong place in model (#66)

* Readd osm-arc distro validation (#62)

* Add distro validation for osm-arc

removed release-train logic

* Readd osm_arc distro validation

* Fix style

* Rm space

* Edit test

* Fixed tests and error logic

* Remove dependency

* Add delete method

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Don't Send Identity Headers If In DF (#67)

* Don't send identity for clusters in dogfood

* Add location to model for identity

* Add identity validation to testing

* Use default extension with identity instead of Cassandra specific (#69)

* Remove the identity check for now

* Add -t for clusterType parameter (#71)

* Adding a flag for AKS to AMLARC migration and set up corresponding FE… (#65)

* Adding a flag for AKS to AMLARC migration and set up corresponding FE helm values

* Remove one extra line

* Adding Scoring FE IS_AKS_MIGRATION check logic for helm values

Co-authored-by: Harry Yang <huayang@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* remove version requirement and auto upgrade minor version check (#72)

* Custom User Confirmation for Partners (#70)

* Custom user confirmation

* Check for disable confirm prompty for confirmation

* Add yes to delete command

* Code cleanup and style fixes (#73)

* Enabled identity by default (#74)

* Increase version

* Fix df check and add unit test (#77)

* Bump extension version

* Pin helm version

* Extensions GA changes into Public Branch (#79)

* Add openservicemesh back

* OpenServiceMesh import

* Update osm with new extension model

* Add back private file

* Add Azure ML to list of private extensions (#16)

* Update k8s-custom-pipelines.yml

* Add Microsoft.PolicyInsights extension (#17)

* Add Policy extension

* Update comment

* Update args

* Fix linting errors

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Add HISTORY_private file for private preview

* Change versioning scheme

* Update the code for supporting both extensions at once

* Fix style issue

* Remove old consts file

* change the resource tag from managed_by:amlk8s to created_by:amlk8s-e… (#22)

* change the resource tag from managed_by:amlk8s to created_by:amlk8s-extension

* remove the lock when creating resources

* fix lint

* update version and HISTORY_private.rst

* change error message

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Update the beta version with upstream

* Update the private history file

* Add upgrade pip to pipeline

* Move pip install within virtualenv

* Merge in k8s-extension/public (0.3.1) (#32)

* delete resurce in testcase (#29)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Check Provider is Registered with Subscription Before Making Requests (#18)

* Add check for KubernetesConfiguration

* Disable pylint and rename

* Update provider registration link

* Update version

* Remove extra blank line

* Fix bug in import

* only validate scoring fe when inference is enabled (#31)

* only validate scoring fe when inference is enabled

* Fix versioning

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: jonathan-innis <jonathan.innis.ji@gmail.com>

* Update private release

Co-authored-by: yuyue9284 <15863499+yuyue9284@users.noreply.github.com>
Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Release Version 0.4.0-b1 (#37)

* Merge k8s-extension/public into k8s-extension/private

* Update the version

* Fix testing concurrency

* K8s extension/private 0.4.0b2 (#41)

* Fix private build (#40)

* Update version

* Upgrade to v0.5.2

* Fix policy bug

* Increase private version

* Update consts_private.py

* Increase private version

* Increase version with public

* Add flux to private version

* Update models for 2021-05-01-preview

* Add async models to version

* Add no wait to delete and create

* support managed cluster

* Bump version

* Pin helm version

* Add cmd to delete call

* Add force deletion

* add dapr extension (#78)

Signed-off-by: Ji An Liu <jiliu8@microsoft.com>

* Fix failing integration tests

* Adding the GA changes for private branch

* Fix confirm prompt

* Fix update E2E tests

Co-authored-by: jonathan-innis <jonathan.innis.ji@gmail.com>
Co-authored-by: action@github.com <Action - Fork Sync>
Co-authored-by: nreisch <noahreisch4@gmail.com>
Co-authored-by: yuyue9284 <15863499+yuyue9284@users.noreply.github.com>
Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: anagg929 <59664801+anagg929@users.noreply.github.com>
Co-authored-by: Ji'an Liu <jiliu8@microsoft.com>
Co-authored-by: nanthi <nanthi@NANTHI01>

* Fix configuration settings in update

* Only provide confirmation when specifying settings

* Fix style issues

* Cassandra tests with update (#81)

* Add Microsoft.PolicyInsights extension for public preview (#83)

* Add Azure Policy

* Remove custom configuration and update tests

* Yuyu3/fix upgrade public (#85)

* populate configuration protected settings for azureml

bump version && add log

fetch connection string only if configuration protected settings are set

update ssl key

* bump the version

* reverse changes on version and HISTORY.rst

* inferenceLoadBalancerHA

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Remove Parallel Powershell Jobs (#82)

* Unparallelize tests

* Moved location of pipeline file

* Remove the parallel invoke expression calls

* Add templates to testing

* Remove policy update test from extension E2E (#88)

* feIsNodePort, feIsInternalLoadBalancer (#87)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Fix history file

* Add one more prompt for amlarc extension update (#94)

* Add one more prompt for amlarc extension update

* fix pylint issue

* fix pylint issue

* fix pylint issue

* fix pylint issue

Co-authored-by: Youhua Tu <youhuatu@outlook.com>
Co-authored-by: Youhua Tu <youhuatu@microsoft.com>

* Update Identity Creation for Appliance to Latest Version (#95)

* Update appliance API to latest version for identity

* Create a utils file with get parent_api_version

* Fix style errors

* Bump version

* Remove additional entry from history

* Do not create identity with appliances (#97)

* Bump version

* support sslSecret (#99)

* support sslSecret

* fix

* fix error message

Co-authored-by: Jun Min <mijun@microsoft.com>

* Bump version to 1.0.4

* Increase OSM verison to valid version (#104)

* remove inference private review warning message (#102)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Update unit testing from osm to dapr (#106)

* osm-ext: enable system identities (#105)

* remove inference private review warning message (#109)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Build Extension in Template (#110)

* Build extension using a template

* Update build template in run test

* Fix private build issues (#112)

* Upgrade vendored_sdks to 2022-03-01 (#113)

* Upgrade vendored_sdks to 2022-03-01

* Update recordings file

* Bump version and changelog

* Update AzureMLKubernetes install parameters on inferenceRouterServiceType and internalLoadBalancerProvider (#114)

* Add one more prompt for amlarc extension update

* fix pylint issue

* fix pylint issue

* fix pylint issue

* fix pylint issue

* merge from AzureArcForKubernetes/azure-cli-extensions

* Update AzureMLKubernetes install parameters on inferenceRouterServiceType and internalLoadBalancerProvider

* update error message

* update error message

* fix pipeline failures

* fix test failure

Co-authored-by: Youhua Tu <youhuatu@outlook.com>
Co-authored-by: Youhua Tu <youhuatu@microsoft.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Change extension validation logic osm-arc (#116)

* added default identity support for microsoft.azurebackup.backupagent (#115)

* Change extension validation logic osm-arc

Signed-off-by: nshankar13 <nshankar@microsoft.com>

Co-authored-by: sangitaray2021 <82883570+sangitaray2021@users.noreply.github.com>
Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* [k8s-extension] Add Managed Identity Auth support for ContainerInsights Extension (#118)

* container insights aad auth support

* container insights aad auth support

* container insights aad auth support

* handle useAADAuth setting

* handle useAADAuth setting

* delete dcr-a if its exists incase of MSI auth

* fix formatting

* fix formatting

* fix formatting

* fix formatting

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* fix install issue on aks (#119)

* fix install issue on aks

* Removing checking distribution

Co-authored-by: youhuatu <youhuatu@outlook.com>

* [k8s-extension] Bring back containerInsights solution addition in msi mode (#120)

* bring back containerinsights solution in dcr mode

* bring back containerinsights solution in dcr mode

* Bump release version

* Remove backup agent from mapping

* Fix history file

* clusterip (#121)

* clusterip

* fix pr test

Co-authored-by: Jun Min <mijun@microsoft.com>

* No default values for the patch scenario with extension (#122)

* Bump version to 1.2.1

* Rename inferenceLoadBalancerHA (#123)

* Rename inferenceLoadBalancerHA

Rename inferenceLoadBalancerHA to inferenceRouterHA and unify related logic

* Update AzureMLKubernetes.py

* Remove unused comments to trigger pipeline

* Update AzureMLKubernetes.py

* Yuyu3/remove relay (#124)

* remove relay

* disable service bus by default, disable relay if target cluster is managed clusters.

* move nginx ingress logic

* remove service bus in tests

* update HISTORY

* If no default values provided for update, assign an empty dict.

* set original_extension_config_settings to empty dict if it is None.

* bump version to 1.2.2

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Update test documentation for partners (#132)

* remove warning message (#129)

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* Use cluster scale to control clusterPurpose and inferenceRouterHA (#130)

* Use cluster scale to control clusterPurpose and inferenceRouterHA

* Update AzureMLKubernetes.py

To solve transient gate error

* Update AzureMLKubernetes.py

* Update AzureMLKubernetes.py

* Update AzureMLKubernetes.py

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>

* Fix warning message returned on PATCH (#133)

* Do not invoke 'create_or_update' if resource is already exists. (#135)

* init

* update HISTORY

* do not populate clusterPurpose if infrenceRouterHA is not set.

* use correct exception type.

* use correct exception type.

* fix lint

* use correct exception type.

Co-authored-by: Yue Yu <yuyu3@microsoft.com>

* [k8s-extension]  ContainerInsights Extension Managed Identity Auth Onboarding updates  (#137)

* bring back containerinsights solution in dcr mode

* bring back containerinsights solution in dcr mode

* update to stream group and DCR API version

* Only test k8s-extension

* [k8s-extension] ContainerInsights Extension Managed Identity Auth Onboarding related bug fixes (#141)

* fix bugs

* fix indent issues

* remove get workspace key for msi auth

* fix pr feedback

* Fix osm-arc installation non-connected clusters

Signed-off-by: nshankar13 <nshankar@microsoft.com>

* k8s-extension azuredefender namespace to mdc (#152)

Co-authored-by: Bsingh16 <33008256+bavneetsingh16@users.noreply.github.com>

* change codeowners for k8s extension & configuration (#150)

* change codeowners for k8s extension & configuration

* change code owners

Co-authored-by: Bavneet Singh <bavneetsingh@microsoft.com>

* bump k8s-extension version to 1.2.5

* delete testing files

Co-authored-by: Jonathan Innis <jonathan.innis.ji@gmail.com>
Co-authored-by: action@github.com <Action - Fork Sync>
Co-authored-by: yuyue9284 <15863499+yuyue9284@users.noreply.github.com>
Co-authored-by: Yue Yu <yuyu3@microsoft.com>
Co-authored-by: Lia Kazakova <58274127+liakaz@users.noreply.github.com>
Co-authored-by: Niranjan Shankar <nshankar@microsoft.com>
Co-authored-by: jingyizhu99 <83610845+jingyizhu99@users.noreply.github.com>
Co-authored-by: Harry Yang <huaimingyang@hotmail.com>
Co-authored-by: Harry Yang <huayang@microsoft.com>
Co-authored-by: Thomas Stringer <thomas@trstringer.com>
Co-authored-by: NarayanThiru <nanthi@microsoft.com>
Co-authored-by: nreisch <noahreisch4@gmail.com>
Co-authored-by: anagg929 <59664801+anagg929@users.noreply.github.com>
Co-authored-by: Ji'an Liu <jiliu8@microsoft.com>
Co-authored-by: nanthi <nanthi@NANTHI01>
Co-authored-by: youhuatuyh <87928654+youhuatuyh@users.noreply.github.com>
Co-authored-by: Youhua Tu <youhuatu@outlook.com>
Co-authored-by: Youhua Tu <youhuatu@microsoft.com>
Co-authored-by: Jun <mjaow0128@gmail.com>
Co-authored-by: Jun Min <mijun@microsoft.com>
Co-authored-by: Sanya Kochhar <42152676+SanyaKochhar@users.noreply.github.com>
Co-authored-by: sangitaray2021 <82883570+sangitaray2021@users.noreply.github.com>
Co-authored-by: Ganga Mahesh Siddem <gangams@microsoft.com>
Co-authored-by: WangDian <wangdian82@gmail.com>
Co-authored-by: Bavneet Singh <bavneetsingh@microsoft.com>
Co-authored-by: Niv Ben Shabat <70891304+nishabat@users.noreply.github.com>
kairu-ms pushed a commit that referenced this issue May 20, 2024
* Merge Temp mavenir wheel into MAIN (#135)

* added empty template parser

* Initial scaffolding of some new classes

* added utils, added base builder + reader + their children, added nfd and vhd processors

* moved utils to common folder + added local file builder

* Add some basic implementations

* add new commands and restructure command groups

* better naming for command groups

* revert addition on the onboard command group

* update HISTORY.rst

* fix style issue

* fix linting issues

* added empty vhd and nfd processors; moved client factory from old repo

* Add template parser interface (BaseParser)

* Add parameters to BaseParser

* Make defaults_path optional in base_parser

* defaults_path defaults to None in base_parser

* add helm chart parser class and common exceptions

* add missing doc strings

* Change parser class to input template class

* added all input config params + comments; added common arm template config; added instructions for completing publish/delete

* add typing to base processor and add copyright statement to new files

* fixed formatting on input configs

* fixed nsd input config + tidied other input config files

* added comments for images; general formatting

* rename template parsers to input templates and add helm chart processor

* add __init__.py to folders

* fixed imports + added innit in folders

* fixed imports + added defaults for input params

* Not quite complete first pass at definition folder handlers

* added generate config log; fixed input config objects

* rename InputTemplate to InputArtifacts

* tidied write config + added read config; deleted json file checked in by mistake

* added overwrite validation to generate config; added j2 templates to common

* added validation to base config and nsd

* Add UTs and fix up definition folder code

* added validation to nsd + cnf; added default_file_name property; added tests for generate config; added example nsd-input.jsonc for testing

* add vhd processor

* remove leftover file from merge

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Fix up some type hinting

* added write manifest bicep and nf application to base handler; fixed helm config to produce correct bicep

* push latest changes

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* WIP, for sharing with Jacob

* Incremental update

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Approximately complete ARM processor. No tests, no testing yet.

* Fix artifact store reference

* WIP

* fixed cnf bicep template

* fixed multiple helm/vhd/arm error; working vnfartifactmanifet; attempted vnfdefintiion with testing code still in; updated write bicep functions to take 2 arguments for vnf case

* fixed cnfdef bicep; return correct type in cnf handler

* Added outputfolder name to base handler; reorganised templates folder structure; added constants for cnf j2 templates; implemented build (tested with mocks) for cnf handler; implemented localfileACR artifact to_dict function; updated write for artifact_builder.py; added overwriting folder logic to defintion folder builder

* renamed write manifest; updated nf templates to deploy initial resources; vnf templates working; vnf build commands working

* added logic to cnf handler for manifest and definition supporting files + config mappings

* fixed cnf params files; added render params for vnf

* fix HelmChartInput issues

* Merge arm-processor code into Jacob's branch (#127)

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* WIP, for sharing with Jacob

* Incremental update

* Approximately complete ARM processor. No tests, no testing yet.

* Fix artifact store reference

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* added build deploy params schema to base handler; added functionality for deployParams to be added as supporting file for cnd

* fix majority of linting issues

* renamed write on base handler to render; added build logic for manifest and artifact list for vnf

* added write manifest bicep and nf application to base handler; fixed helm config to produce correct bicep

* fixed cnf bicep template

* Initial ArmInputTemplate class

* complete helm chart processor

* almost finished NFD processor

* WIP, for sharing with Jacob

* Incremental update

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Approximately complete ARM processor. No tests, no testing yet.

* WIP

* fixed multiple helm/vhd/arm error; working vnfartifactmanifet; attempted vnfdefintiion with testing code still in; updated write bicep functions to take 2 arguments for vnf case

* fixed cnfdef bicep; return correct type in cnf handler

* Added outputfolder name to base handler; reorganised templates folder structure; added constants for cnf j2 templates; implemented build (tested with mocks) for cnf handler; implemented localfileACR artifact to_dict function; updated write for artifact_builder.py; added overwriting folder logic to defintion folder builder

* renamed write manifest; updated nf templates to deploy initial resources; vnf templates working; vnf build commands working

* added logic to cnf handler for manifest and definition supporting files + config mappings

* fixed cnf params files; added render params for vnf

* added build deploy params schema to base handler; added functionality for deployParams to be added as supporting file for cnd

* renamed write on base handler to render; added build logic for manifest and artifact list for vnf

* fix up code

* fix base input

* run isort

* implemented vnf build + removed test code; fixed arm processor

* fixed templates

* removed multiple vhds from vnf + fixed bicep; made path to mappings optional for cnf

* renamed write file to render contents

* fixed helm chart processor + small tidy up

* commit for build handover; not working + handover notes sent separately

* run isort

* fix issues in input classes

* add generic schema and value mapping generation and fix arm and vhd processors

* push changes I forgot to push before xmas

* checked out fixed build processors and inputs from jdarby/add-build-processors

* fix values and schema generation

* add RET generation for ARM templates

* fix linting issues

* made input file name constant + renamed inputs to match changes

* checked out build processor changes

* Moved _render_deployment_params_schema and _build_deploy_params_schema to nfd base handler; added default_config logic to cnf handler;created deploymentParamers for cnf + vnf

* changed j2 template for vhd image name

* HELM CHART PROCESSOR CHANGES! fixed registry value path and depends on profile in cnf template

* fixed nsd artifact manifest, changed artifact type in all processers (PROCESSOR CHANGE)

* implemented nsd build get artifact manifest and get artifact list

* added base bicep to all handlers; edited j2 templates to note that base resources should be deployed first on publish; made all build use constants

* added to_dict for localfileACRartifact

* added source namespcae and source reigstry to artifact + in helm processor callinh remote arc artifacts

* finish nfd processor

* add copyright statement to helm processor file

* linting

* created common params folder (making new jsonbuilder), adding get params config to base', renamed get_config to get_input_config; aded logging to vnf; chnged custom.py publish inputs

* partially ready commit; added cmd context to base + added some logic to nsds

* added all parameters constant

* tidied vnf handler; added common params logic to cnf

* markups inc tidy up

* renamed snake_case param

* add nsd output config

* taken some input and build processor changes from jdarby/build_processor branch

* Add logging, improve doc string and fix mypy errors for inputs

* fix 2 bugs introduced by merging buildprocessors and adding json deploy params

* fixed how aosm client is passed to build; properly get nfdv object with api client

* refactored vnf handler to create processors upfront

* refactor cnf to instantiate processors upfront

* Improve docstrings, add logging and fix linting issues for build processors

* nsd temp commit

* fix missed conflict

* fix linting and formatting issue

* rename + add constants + add new definition tempalte

* simplified render bicep definiton contents + removes all constants for filenames from nf handlers and templates

* build nsd bicep core working

* fixed nsd bicep

* Fix two minor CLI bugs (#129)

* Fix bug where the build directory wasn't deleted

* Fix bug where the json wasn't output correctly

* fixed incorrect merge fix

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* small fixes; removed location from nfd input, removed comma from vnd def template, fixed artifact version in nsds, fixed vhd validation

* made cgs name constant to fix error in mappings

* added store type to all the templates

* tidy up + small markups

* removed version state from the definition biceps

* fixed bug where schemas and defaults were copied incorrectly

* made artifact paths absolute in all cases except nsd nfs, where paht is relative to nsd output folder

* added missing comments; renamed common params + edited its format; changed custom to take path

* added existing back to all templates + descriptors of resources

* Merge publish into temp wheel branch (#131)

* Move artifact create from dict logic to instantiating code

* Create CommandContext class to hold Azure clients and CLI options, and pass instance through to the delete and publish commands.

* Mostly implemented and working publish. Lots of debug code still present.

* Publish done and mostly tested.

* Add some more logging. Remove help text referring to --order-params.

* Update src/aosm/azext_aosm/common/artifact.py

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* fix merge conflicts

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Minor input improvements (#132)

* fixed common params files for all

* remove prints; remove sourcelocaldockerimage + add correct validation; edit input.json comments

* fixed extract tar error

* only create oras_client once - temp solution

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* edited input file (#133)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* fixed getparamsconfig for vnf/nsd; added fixes for building correct python wheel

* Achurchard/publish (#130)

Markups from publish PR

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: jordlay <72226943+jordlay@users.noreply.github.com>

* bug fixes for chart with subcharts

* added ruamel

* Use safe yaml loading

* Move code out of import list

* Fix errant config line bug

* fixed deployparams error (#134)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* fixed yaml load error

* disabled multi anchor yaml warning for values.yaml

* delete accidental deployparams file

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Chaos Chhapi <chaos.chhapi@metaswitch.com>
Co-authored-by: Jacob <53872686+jddarby@users.noreply.github.com>
Co-authored-by: Jacob Darby <jdarby@microsoft.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: patrykkulik-microsoft <116072282+patrykkulik-microsoft@users.noreply.github.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* fix silly yaml import

* moved config validate to init, commented out delete command, add context to publish + passed paths properly in custom.py

* Add Helm template validation to the build method in the CLI (#136)

* added empty template parser

* Initial scaffolding of some new classes

* added utils, added base builder + reader + their children, added nfd and vhd processors

* moved utils to common folder + added local file builder

* Add some basic implementations

* add new commands and restructure command groups

* better naming for command groups

* revert addition on the onboard command group

* update HISTORY.rst

* fix style issue

* fix linting issues

* added empty vhd and nfd processors; moved client factory from old repo

* Add template parser interface (BaseParser)

* Add parameters to BaseParser

* Make defaults_path optional in base_parser

* defaults_path defaults to None in base_parser

* add helm chart parser class and common exceptions

* add missing doc strings

* Change parser class to input template class

* added all input config params + comments; added common arm template config; added instructions for completing publish/delete

* add typing to base processor and add copyright statement to new files

* fixed formatting on input configs

* fixed nsd input config + tidied other input config files

* added comments for images; general formatting

* rename template parsers to input templates and add helm chart processor

* add __init__.py to folders

* fixed imports + added innit in folders

* fixed imports + added defaults for input params

* Not quite complete first pass at definition folder handlers

* added generate config log; fixed input config objects

* rename InputTemplate to InputArtifacts

* tidied write config + added read config; deleted json file checked in by mistake

* added overwrite validation to generate config; added j2 templates to common

* added validation to base config and nsd

* Add UTs and fix up definition folder code

* added validation to nsd + cnf; added default_file_name property; added tests for generate config; added example nsd-input.jsonc for testing

* add vhd processor

* remove leftover file from merge

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Fix up some type hinting

* added write manifest bicep and nf application to base handler; fixed helm config to produce correct bicep

* push latest changes

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* WIP, for sharing with Jacob

* Incremental update

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Approximately complete ARM processor. No tests, no testing yet.

* Fix artifact store reference

* WIP

* fixed cnf bicep template

* fixed multiple helm/vhd/arm error; working vnfartifactmanifet; attempted vnfdefintiion with testing code still in; updated write bicep functions to take 2 arguments for vnf case

* fixed cnfdef bicep; return correct type in cnf handler

* Added outputfolder name to base handler; reorganised templates folder structure; added constants for cnf j2 templates; implemented build (tested with mocks) for cnf handler; implemented localfileACR artifact to_dict function; updated write for artifact_builder.py; added overwriting folder logic to defintion folder builder

* renamed write manifest; updated nf templates to deploy initial resources; vnf templates working; vnf build commands working

* added logic to cnf handler for manifest and definition supporting files + config mappings

* fixed cnf params files; added render params for vnf

* fix HelmChartInput issues

* Merge arm-processor code into Jacob's branch (#127)

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* Initial ArmInputTemplate class

* Outline ArmBuildProcessor hierarchy

* Update VNF tests to keep built output for comparison

* WIP, for sharing with Jacob

* Incremental update

* Approximately complete ARM processor. No tests, no testing yet.

* Fix artifact store reference

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* added build deploy params schema to base handler; added functionality for deployParams to be added as supporting file for cnd

* fix majority of linting issues

* renamed write on base handler to render; added build logic for manifest and artifact list for vnf

* added write manifest bicep and nf application to base handler; fixed helm config to produce correct bicep

* fixed cnf bicep template

* Initial ArmInputTemplate class

* complete helm chart processor

* almost finished NFD processor

* WIP, for sharing with Jacob

* Incremental update

* added vnf config validation; improved comment spacing on input.json; fixed depends on format; changes type for optional params

* added optional output file name param to generate config; removed misc print statements

* Approximately complete ARM processor. No tests, no testing yet.

* WIP

* fixed multiple helm/vhd/arm error; working vnfartifactmanifet; attempted vnfdefintiion with testing code still in; updated write bicep functions to take 2 arguments for vnf case

* fixed cnfdef bicep; return correct type in cnf handler

* Added outputfolder name to base handler; reorganised templates folder structure; added constants for cnf j2 templates; implemented build (tested with mocks) for cnf handler; implemented localfileACR artifact to_dict function; updated write for artifact_builder.py; added overwriting folder logic to defintion folder builder

* renamed write manifest; updated nf templates to deploy initial resources; vnf templates working; vnf build commands working

* added logic to cnf handler for manifest and definition supporting files + config mappings

* fixed cnf params files; added render params for vnf

* added build deploy params schema to base handler; added functionality for deployParams to be added as supporting file for cnd

* renamed write on base handler to render; added build logic for manifest and artifact list for vnf

* fix up code

* fix base input

* run isort

* implemented vnf build + removed test code; fixed arm processor

* fixed templates

* removed multiple vhds from vnf + fixed bicep; made path to mappings optional for cnf

* renamed write file to render contents

* fixed helm chart processor + small tidy up

* commit for build handover; not working + handover notes sent separately

* run isort

* fix issues in input classes

* add generic schema and value mapping generation and fix arm and vhd processors

* push changes I forgot to push before xmas

* checked out fixed build processors and inputs from jdarby/add-build-processors

* fix values and schema generation

* add RET generation for ARM templates

* fix linting issues

* made input file name constant + renamed inputs to match changes

* checked out build processor changes

* Moved _render_deployment_params_schema and _build_deploy_params_schema to nfd base handler; added default_config logic to cnf handler;created deploymentParamers for cnf + vnf

* changed j2 template for vhd image name

* HELM CHART PROCESSOR CHANGES! fixed registry value path and depends on profile in cnf template

* fixed nsd artifact manifest, changed artifact type in all processers (PROCESSOR CHANGE)

* implemented nsd build get artifact manifest and get artifact list

* added base bicep to all handlers; edited j2 templates to note that base resources should be deployed first on publish; made all build use constants

* added to_dict for localfileACRartifact

* added source namespcae and source reigstry to artifact + in helm processor callinh remote arc artifacts

* finish nfd processor

* add copyright statement to helm processor file

* linting

* created common params folder (making new jsonbuilder), adding get params config to base', renamed get_config to get_input_config; aded logging to vnf; chnged custom.py publish inputs

* partially ready commit; added cmd context to base + added some logic to nsds

* added all parameters constant

* tidied vnf handler; added common params logic to cnf

* markups inc tidy up

* renamed snake_case param

* add nsd output config

* taken some input and build processor changes from jdarby/build_processor branch

* Add logging, improve doc string and fix mypy errors for inputs

* fix 2 bugs introduced by merging buildprocessors and adding json deploy params

* fixed how aosm client is passed to build; properly get nfdv object with api client

* refactored vnf handler to create processors upfront

* refactor cnf to instantiate processors upfront

* Improve docstrings, add logging and fix linting issues for build processors

* nsd temp commit

* fix missed conflict

* fix linting and formatting issue

* rename + add constants + add new definition tempalte

* simplified render bicep definiton contents + removes all constants for filenames from nf handlers and templates

* build nsd bicep core working

* fixed nsd bicep

* Fix two minor CLI bugs (#129)

* Fix bug where the build directory wasn't deleted

* Fix bug where the json wasn't output correctly

* fixed incorrect merge fix

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* small fixes; removed location from nfd input, removed comma from vnd def template, fixed artifact version in nsds, fixed vhd validation

* made cgs name constant to fix error in mappings

* added store type to all the templates

* tidy up + small markups

* removed version state from the definition biceps

* fixed bug where schemas and defaults were copied incorrectly

* made artifact paths absolute in all cases except nsd nfs, where paht is relative to nsd output folder

* added missing comments; renamed common params + edited its format; changed custom to take path

* added existing back to all templates + descriptors of resources

* First stab at doing helm template - check the changes here

* Merge publish into temp wheel branch (#131)

* Move artifact create from dict logic to instantiating code

* Create CommandContext class to hold Azure clients and CLI options, and pass instance through to the delete and publish commands.

* Mostly implemented and working publish. Lots of debug code still present.

* Publish done and mostly tested.

* Add some more logging. Remove help text referring to --order-params.

* Update src/aosm/azext_aosm/common/artifact.py

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* fix merge conflicts

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Minor input improvements (#132)

* fixed common params files for all

* remove prints; remove sourcelocaldockerimage + add correct validation; edit input.json comments

* fixed extract tar error

* only create oras_client once - temp solution

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* edited input file (#133)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Add skip step

* fixed getparamsconfig for vnf/nsd; added fixes for building correct python wheel

* Achurchard/publish (#130)

Markups from publish PR

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: jordlay <72226943+jordlay@users.noreply.github.com>

* bug fixes for chart with subcharts

* added ruamel

* Use safe yaml loading

* Move code out of import list

* Fix errant config line bug

* fixed deployparams error (#134)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* fixed yaml load error

* Change "path_to_mappings" to "default_values"

* Add unit tests

* remove the merge mistake

* Delete a file

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Chaos Chhapi <chaos.chhapi@metaswitch.com>
Co-authored-by: Jacob <53872686+jddarby@users.noreply.github.com>
Co-authored-by: Jacob Darby <jdarby@microsoft.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: jordlay <72226943+jordlay@users.noreply.github.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Pk5/add image parsing (#137)

* Add image parsing

* Add unit tests

* Fix small log issue

* Minor markup edits

* Improve unit tests

* remove the test_utils file

* update HISTORY.rst

* update HISTORY file

* Validate that helm chart values exist (#138)

* add validation of the default values for helm charts

* Add unit tests

* update HISTORY.rst

* Markups

* Jl/nsd publish paths (#139)

* fix for relative path issue for nsd publish; fix for deployment parameters schema being wrong

* Add image parsing

* LocalFileACRArtifact converts bicep to ARM before upload.

* Remove TODO comment that is done. Refactor convert to bicep code.

* Add unit tests

* Fix small log issue

* Minor markup edits

* Add location to configObject passed to NF template. Value is hardcoded to that provided in the input.jsonc file.

* Add note on using NF name instead of NSD name when creating NFDInput

* Minor fixes: - check attribute exists before accessing it\n - better logging\n - reduce nesting

* input file (jsonc) comment updates.

* Fix NSD generate --output-file handling bug

* Minor markups.

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Patryk Kulik <patrykkulik@microsoft.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* Bump version to 1.0.0b5

* Linting and typing (#141)

Linting and type hinting fixes.

* Temp 16feb wheel (#145)

* added nexus arm processor; added nfvi type to vnfinput.json; added condition for calling each arm processor

* pipe through nfvi type from vnf input to template; added nexus input; fixed mistakes in armprocessor

* initial commit for children vnf handlers

* added core and nexus config logic

* fixed nexus input and nexus processor; fixed templates

* generalised render manifest and render definition bicep functions to use one

* added incorrect config error handling

* added nexus flag to publish; added error handling for incorrect vnf type (if forgot to put nexus flag case); tidied nexus inputs

* added vnf nexus base bicep; fixed vnf definition template; temp fix for image versions

* moved render bicep to common/utils; replaced build base bicep with render bicep

* general tidyup: removed prints, added return types

* added nfvi type to nsds

* removed old todos

* refactored nexus handler, moved generate params code into processor

* moved logic to base vnf handler; moved more logic to processor

* fix template name in vnf j2

* fixed nexus image file

* added nfvitype to nsd nf template by making new j2 + changing how nfd processor works

* added nfvitype to nsd nf template by making new j2 + changing how nfd processor works

* minor formatting

* made vnfnexus a definition type; slight refactor of custom.py

* removed nexus param, removed prints, added commented out test file

* fixed flake8 + pylint issues

* Base handler treats command inputs separately (#143)

* refactored base handler init to treat inputs from different commands separately; added better validation

* fixed error handling in base handler

* fixed error typing

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* mypy fixes

* fixed customLocation id for vnf nexus

* markups from review inc moving build manifest to parent vnf handler

* added better docstrings

* updated history.rst

* Achurchard/fix helm chart upload (#144)

* Use helm push for Helm charts (not oras push)

* Logging

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* bumped version

* Bug: No type in schema (#148)

* first fix for anyOf logic error msg

* Update src/aosm/azext_aosm/build_processors/base_processor.py

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Update src/aosm/azext_aosm/build_processors/base_processor.py

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Bug: Nexus Image Version Must be Semver (#149)

* added semver checking to input config validation; moved split image path to utils

* changed semver regex; renamed function

* fixed typo

* markups

* fix typo

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Create RG if it doesn't exist (#150)

* add validation resource group exists function

* tidied up code

* Update src/aosm/azext_aosm/definition_folder/reader/definition_folder.py

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* renaming from markups

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* Bug Fix: NFD and NSD Manifest Names Clash (#147)

* added sa_manifest and acr_manifest property, added sa and acr to manifest names; added nsd to nsd manifest name

* create manifest name from nf/nsd name instead of acr/sa; fixed docs strings

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Fix Nexus Linting + Add Unit Tests (#146)

* fixed pylint + flake8 errors

* fix mypy errors

* fixed artifact builder tests

* temp commit for unit testing

* temp push of broken tests

* added new mocks (not perfect) for vnfs£

* fixed artifact write failure

* More mypy fixes

* fixed style issues

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* Use ephemeral tempdir for generated helm package .tgz file. (#151)

* Use ephemeral tempdir for generated helm package .tgz file.

* Fix file_path bug if .tgz file was provided by user.

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>

* add to changelog; bump version

* added check for filepath before making absolute (#154)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Template Parameters Bug (#156)

* converted vhd parameters to camel case to match what aosm expects

* markups + fixed apiVersion

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* fixed config comment (#153)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* removed image name parameter, added imageName to default config for arm and vhd input (#157)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* bumped version and updated changelog (#158)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Improve Unit Testing (#152)

* moved working tests to new folder structure; added empty tests for processors and build

* added empty generate cofnig tests; fixed and moved bicep,artifact and definitino folder builder tests

* added nexus arm tests; removed outdated vnf mocks

* added azure core tests for every function (including base)

* fixed up core and nexus arm processor

* fixed up arm processors; added logging to tests

* added arm template tests

* added test from copilot learning day

* changed assert

* removed build folder; added json dump to artifact and definition tests; improved arm processor testing

* removed mock open and replaced with new templates

* fixed linting

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Fix bool in schema bug (#160)

* check object is a dict before looking for `type` key.

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Use common.utils function to check if docker/helm is installed (code deduplication). (#161)

* changed configuration type from secret to open; updated changelog (#162)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Support using multiple images sources in our CLI (#142)

* Initial stab at making the multiple registry support work

* Update TODO

* update TODO

* merge fixes

* add logic to find registry credentials

* Code cleanup and adding unit tests

* updates to the registry class

* In Progress work

* Working publish

* Move _push_image_from_local_registry and copy_image into the registry class

* tidy up changes

* Namespace and style fixes

* Minor input config change

* unit tests

* Do not push image namespace to target ACR

* Make sure not to break the nexus part of the code

* Update CHANGELOG

* Fix error not being caught correctly

* Minor comment change

* Markups

* Update warning

* Change how we treat namespace and find images

* markups

* modify how we create the registry list

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* Fix integration tests (#163)

* Initial stab at making the multiple registry support work

* Update TODO

* update TODO

* merge fixes

* add logic to find registry credentials

* Code cleanup and adding unit tests

* updates to the registry class

* In Progress work

* Working publish

* Move _push_image_from_local_registry and copy_image into the registry class

* tidy up changes

* Namespace and style fixes

* Minor input config change

* unit tests

* Do not push image namespace to target ACR

* Make sure not to break the nexus part of the code

* Update CHANGELOG

* initial commit for integration tests

* Fix error not being caught correctly

* Minor comment change

* Fix integration tests

* Moving files around

* Working vnf integration test

* Comment out test that is not working

* Clean up the structure of the integration tests

* Delete unnecessary tests

* Fix CNF test and move a util function

* fix other integration tests

* Delete the broken tests folder

* Fix the vnf test

* move files around

* Improve the update_input_file function

* improve the nsd test

* Move files around and improve the nsd output

* remove unnecessary line

* Update recording processors and recordings

* Fix linting issues

* bad merge change

* Update the nsd output with Open CGVs

* Fix few unit tests broken by merge

* Markups

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Add docker dependency option to oras in setup.py (#164)

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* Revert "Add docker dependency option to oras in setup.py (#164)" (#165)

This reverts commit 9b6fcde.

* update history + bump version (#166)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* hot fix: anyOf bug

* hotfix: fixed 2 style errors

* bumped version to 2 (#170)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Fix linting + tests for release (#171)

* removed delete helptext and reran tests live

* fixed linting

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* added license headers to fix release jobs (#172)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Add Webhook (#159)

* initial attempt at adding roleOverride

* add comma

* removed comma as breaks single nf application

* remove prints

* fixed linting + updated history

* fixed bug in nfd processor for vnfs; updated nsd tests

* fixed lives tests

* markups

* markups2

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Expose All PRs (#173)

* Refactoring related to user customisable param exposure (#167)

* Fix: Change 'deploymentParameters' to 'deployParameters'

* Refactoring including:
 - Remove minor inconsistencies between related methods
 - Use named parameters in method calls to improve readability
 - Rename variables and methods to be more descriptive/accurate
 - Improve some exception messages
 - Make log messages clearer
 - Improve code comments
 - Improve type handling

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>

* Allow all parameters to be exposed to operator (#169)

* Fix: Change 'deploymentParameters' to 'deployParameters'

* Refactoring including:
 - Remove minor inconsistencies between related methods
 - Use named parameters in method calls to improve readability
 - Rename variables and methods to be more descriptive/accurate
 - Improve some exception messages
 - Make log messages clearer
 - Improve code comments
 - Improve type handling

* Comment out _find_image_pull_secrets_values_paths().

* Add expose_all function for NFDs.

Includes extensive renaming of variables and methods, new code comments
and docstrings.

* Add expose_all_params to nfd-input.jsonc and plumb through.

* Fix linting + tests for release (#171)

* removed delete helptext and reran tests live

* fixed linting

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* added license headers to fix release jobs (#172)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Markups

* Add Webhook (#159)

* initial attempt at adding roleOverride

* add comma

* removed comma as breaks single nf application

* remove prints

* fixed linting + updated history

* fixed bug in nfd processor for vnfs; updated nsd tests

* fixed lives tests

* markups

* markups2

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* fixed line too long

* markups including removing multiple instances

* fixed all unit tests based on new param (expose_all), removed param (multiple_instances), refactoring of deploymentParameters to deployParams, and removal of using values.schema.json

* ran live tests + removed dependsOn

* added getting defaults from arm template + added special logic for when defaults are rg().location

* fixed tests + fixed styling

* ran live tests

---------

Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: jordlay <72226943+jordlay@users.noreply.github.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Patryk Kulik <patrykkulik@microsoft.com>

---------

Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Patryk Kulik <patrykkulik@microsoft.com>

* updated history

* Fix minor config bugs (#174)

* renamed nfdvName to nfdv

* changed comment for name in NF RET for nsd input

* added ArmTemplate  optional comment to NSD input config

* changed nfdv examples in mock cgvs

* added 1:1 mapping between nfdvs and nfvisFromSite

* removed nfvi_type from nsd input config

* markups

* fixed tests + styling; markups

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Help text additions (#175)

* Add long summary, parameters and examples to help text.

* Remove parameters from help file. Instead, use the help defined in _params.py. Minor updates to text of latter.

* Fix lines too long (#176)

* updated changelog (#180)

* updated changelog

* markups

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Autogen CLI: (#181)

- Add examples
- Minor rewording
- Ensure all commands are preview

* Add quotes to the CNF input config image sources comment (#182)

* Bump jinja2 to 3.1.4. (#190)

* Remove azure-storage-blob from dependencies. (#192)

* Pk5/fix integration tests for release (#195)

* Add retry logic to fix integration tests

* Modify the publisher name because previous name is used up

* Regenerate the recordings

* Re-record test (#196)

* ran vnf test live (#197)

Co-authored-by: Jordan <jordan.layton@metaswitch.com>

* Make the vnf test live only (#198)

---------

Co-authored-by: Jordan <jordan.layton@metaswitch.com>
Co-authored-by: Chaos Chhapi <chaos.chhapi@metaswitch.com>
Co-authored-by: Jacob <53872686+jddarby@users.noreply.github.com>
Co-authored-by: Jacob Darby <jdarby@microsoft.com>
Co-authored-by: Andy Churchard <andy.churchard@metaswitch.com>
Co-authored-by: patrykkulik-microsoft <116072282+patrykkulik-microsoft@users.noreply.github.com>
Co-authored-by: Cyclam <95434717+Cyclam@users.noreply.github.com>
Co-authored-by: Patryk Kulik <patrykkulik@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
customer-reported Issues that are reported by GitHub users external to the Azure organization. extension/ml needs-team-attention This issue needs attention from Azure service team or SDK team Service Attention This issue is responsible by Azure service team.
Projects
None yet
Development

No branches or pull requests

5 participants