Loading tests/edgecloud/test_config_gsma.py +86 −9 Original line number Diff line number Diff line CONFIG = { "i2edge": { "ZONE_ID": "f0662bfe-1d90-5f59-a759-c755b3b69b93", "ARTEFACT_ID": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "ARTEFACT_NAME": "i2edgechart", "REPO_NAME": "github-cesar", "REPO_TYPE": "PUBLICREPO", "REPO_URL": "https://cesarcajas.github.io/helm-charts-examples/", "APP_ONBOARD_MANIFEST_GSMA": { "appId": "demo-app-id", "appProviderId": "Y89TSlxMPDKlXZz7rN6vU2y", Loading @@ -32,7 +27,7 @@ CONFIG = { "serviceNameNB": "k8yyElSyJN4ctbNVqwodEQNUoGb2EzOEt4vQBjGnPii_5", "serviceNameEW": "iDm08OZN", "componentName": "HIEWqstajCmZJQmSFUj0kNHZ0xYvKWq720BKt8wjA41p", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", } ], "appStatusCallbackLink": "string", Loading Loading @@ -64,22 +59,104 @@ CONFIG = { "serviceNameNB": "7CI_9d4lAK90vU4ASUkKxYdQjsv3y3IuwucISSQ6lG5_EMqeyVUHPIhwa5", "serviceNameEW": "tPihoUFj30938Bu9blpsHkvsec1iA7gqZZRMpsx6o7aSSj5", "componentName": "YCAhqPadfld8y68wJfTc6QNGguI41z", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, { "serviceNameNB": "JCjR0Lc3J0sm2PcItECdbHXtpCLQCfq3B", "serviceNameEW": "N8KBAdqT8L_sWOxeFZs3XYn6oykTTFHLiPKOS7kdYbw", "componentName": "9aCfCEDe2Dv0Peg", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, { "serviceNameNB": "RIfXlfU9cDeLnrOBYzz9LJGdAjwPRp_3Mjp0Wq_RDlQiAPyXm", "serviceNameEW": "31y8sCwvvyNCXfwtLhwJw6hoblG7ZcFzEjyFdAnzq7M8cxiOtDik0", "componentName": "3kTa4zKEX", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, ], }, "ARTEFACT_GSMA": { "artefactId": "i2edgechart", "appProviderId": "string", "artefactName": "i2edgechart", "artefactVersionInfo": "string", "artefactDescription": "string", "artefactVirtType": "VM_TYPE", "artefactFileName": "string", "artefactFileFormat": "ZIP", "artefactDescriptorType": "HELM", "repoType": "PUBLICREPO", "artefactRepoLocation": { "repoURL": "https://cesarcajas.github.io/helm-charts-examples/", "userName": "string", "password": "string", "token": "string", }, "artefactFile": "string", "componentSpec": [ { "componentName": "string", "images": ["3fa85f64-5717-4562-b3fc-2c963f66afa6"], "numOfInstances": 0, "restartPolicy": "RESTART_POLICY_ALWAYS", "commandLineParams": {"command": ["string"], "commandArgs": ["string"]}, "exposedInterfaces": [ { "interfaceId": "string", "commProtocol": "TCP", "commPort": 0, "visibilityType": "VISIBILITY_EXTERNAL", "network": "string", "InterfaceName": "string", } ], "computeResourceProfile": { "cpuArchType": "ISA_X86_64", "numCPU": { "whole": {"value": 2}, "decimal": {"value": 0.5}, "millivcpu": {"value": "500m"}, }, "memory": 0, "diskStorage": 0, "gpu": [ { "gpuVendorType": "GPU_PROVIDER_NVIDIA", "gpuModeName": "string", "gpuMemory": 0, "numGPU": 0, } ], "vpu": 0, "fpga": 0, "hugepages": [{"pageSize": "2MB", "number": 0}], "cpuExclusivity": True, }, "compEnvParams": [ { "envVarName": "string", "envValueType": "USER_DEFINED", "envVarValue": "string", "envVarSrc": "string", } ], "deploymentConfig": { "configType": "DOCKER_COMPOSE", "contents": "string", }, "persistentVolumes": [ { "volumeSize": "10Gi", "volumeMountPath": "string", "volumeName": "string", "ephemeralType": False, "accessMode": "RW", "sharingPolicy": "EXCLUSIVE", } ], } ], }, }, "aeros": { # PLACEHOLDER Loading tests/edgecloud/test_e2e_gsma.py +10 −13 Original line number Diff line number Diff line Loading @@ -58,6 +58,11 @@ def test_config_gsma_compliance(edgecloud_client): config = CONFIG[edgecloud_client.client_name] try: # Validate ARTEFACT is GSMA-compliant if "ARTEFACT_GSMA" in config: artefact_manifest = config["ARTEFACT_GSMA"] gsma_schemas.Artefact(**artefact_manifest) # Validate APP_ONBOARD_MANIFEST_GSMA is GSMA-compliant if "APP_ONBOARD_MANIFEST_GSMA" in config: app_manifest = config["APP_ONBOARD_MANIFEST_GSMA"] Loading Loading @@ -161,17 +166,9 @@ def test_artefact_methods_gsma(edgecloud_client): config = CONFIG[edgecloud_client.client_name] if isinstance(edgecloud_client, I2EdgeClient): try: response = edgecloud_client.create_artefact( artefact_id=config["ARTEFACT_ID"], artefact_name=config["ARTEFACT_NAME"], repo_name=config["REPO_NAME"], repo_type=config["REPO_TYPE"], repo_url=config["REPO_URL"], password=None, token=None, user_name=None, ) assert response.status_code == 201 artefact_manifest = config["ARTEFACT_GSMA"] response = edgecloud_client.create_artefact_gsma(artefact_manifest) assert response.status_code == 200 except EdgeCloudPlatformError as e: pytest.fail(f"Artefact creation failed: {e}") Loading @@ -179,7 +176,7 @@ def test_artefact_methods_gsma(edgecloud_client): @pytest.mark.parametrize("edgecloud_client", test_cases, ids=id_func, indirect=True) def test_get_artefact_gsma(edgecloud_client): config = CONFIG[edgecloud_client.client_name] expected_artefact_id = config["ARTEFACT_ID"] expected_artefact_id = config["ARTEFACT_GSMA"]["artefactId"] try: response = edgecloud_client.get_artefact_gsma(expected_artefact_id) assert isinstance(response, Response) Loading Loading @@ -361,7 +358,7 @@ def test_delete_artefact_gsma(edgecloud_client): if isinstance(edgecloud_client, I2EdgeClient): try: response = edgecloud_client.delete_artefact_gsma(config["ARTEFACT_ID"]) response = edgecloud_client.delete_artefact_gsma(config["ARTEFACT_GSMA"]["artefactId"]) assert isinstance(response, Response) assert response.status_code == 200 except EdgeCloudPlatformError as e: Loading Loading
tests/edgecloud/test_config_gsma.py +86 −9 Original line number Diff line number Diff line CONFIG = { "i2edge": { "ZONE_ID": "f0662bfe-1d90-5f59-a759-c755b3b69b93", "ARTEFACT_ID": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "ARTEFACT_NAME": "i2edgechart", "REPO_NAME": "github-cesar", "REPO_TYPE": "PUBLICREPO", "REPO_URL": "https://cesarcajas.github.io/helm-charts-examples/", "APP_ONBOARD_MANIFEST_GSMA": { "appId": "demo-app-id", "appProviderId": "Y89TSlxMPDKlXZz7rN6vU2y", Loading @@ -32,7 +27,7 @@ CONFIG = { "serviceNameNB": "k8yyElSyJN4ctbNVqwodEQNUoGb2EzOEt4vQBjGnPii_5", "serviceNameEW": "iDm08OZN", "componentName": "HIEWqstajCmZJQmSFUj0kNHZ0xYvKWq720BKt8wjA41p", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", } ], "appStatusCallbackLink": "string", Loading Loading @@ -64,22 +59,104 @@ CONFIG = { "serviceNameNB": "7CI_9d4lAK90vU4ASUkKxYdQjsv3y3IuwucISSQ6lG5_EMqeyVUHPIhwa5", "serviceNameEW": "tPihoUFj30938Bu9blpsHkvsec1iA7gqZZRMpsx6o7aSSj5", "componentName": "YCAhqPadfld8y68wJfTc6QNGguI41z", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, { "serviceNameNB": "JCjR0Lc3J0sm2PcItECdbHXtpCLQCfq3B", "serviceNameEW": "N8KBAdqT8L_sWOxeFZs3XYn6oykTTFHLiPKOS7kdYbw", "componentName": "9aCfCEDe2Dv0Peg", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, { "serviceNameNB": "RIfXlfU9cDeLnrOBYzz9LJGdAjwPRp_3Mjp0Wq_RDlQiAPyXm", "serviceNameEW": "31y8sCwvvyNCXfwtLhwJw6hoblG7ZcFzEjyFdAnzq7M8cxiOtDik0", "componentName": "3kTa4zKEX", "artefactId": "9c9143f0-f44f-49df-939e-1e8b891ba8f5", "artefactId": "i2edgechart", }, ], }, "ARTEFACT_GSMA": { "artefactId": "i2edgechart", "appProviderId": "string", "artefactName": "i2edgechart", "artefactVersionInfo": "string", "artefactDescription": "string", "artefactVirtType": "VM_TYPE", "artefactFileName": "string", "artefactFileFormat": "ZIP", "artefactDescriptorType": "HELM", "repoType": "PUBLICREPO", "artefactRepoLocation": { "repoURL": "https://cesarcajas.github.io/helm-charts-examples/", "userName": "string", "password": "string", "token": "string", }, "artefactFile": "string", "componentSpec": [ { "componentName": "string", "images": ["3fa85f64-5717-4562-b3fc-2c963f66afa6"], "numOfInstances": 0, "restartPolicy": "RESTART_POLICY_ALWAYS", "commandLineParams": {"command": ["string"], "commandArgs": ["string"]}, "exposedInterfaces": [ { "interfaceId": "string", "commProtocol": "TCP", "commPort": 0, "visibilityType": "VISIBILITY_EXTERNAL", "network": "string", "InterfaceName": "string", } ], "computeResourceProfile": { "cpuArchType": "ISA_X86_64", "numCPU": { "whole": {"value": 2}, "decimal": {"value": 0.5}, "millivcpu": {"value": "500m"}, }, "memory": 0, "diskStorage": 0, "gpu": [ { "gpuVendorType": "GPU_PROVIDER_NVIDIA", "gpuModeName": "string", "gpuMemory": 0, "numGPU": 0, } ], "vpu": 0, "fpga": 0, "hugepages": [{"pageSize": "2MB", "number": 0}], "cpuExclusivity": True, }, "compEnvParams": [ { "envVarName": "string", "envValueType": "USER_DEFINED", "envVarValue": "string", "envVarSrc": "string", } ], "deploymentConfig": { "configType": "DOCKER_COMPOSE", "contents": "string", }, "persistentVolumes": [ { "volumeSize": "10Gi", "volumeMountPath": "string", "volumeName": "string", "ephemeralType": False, "accessMode": "RW", "sharingPolicy": "EXCLUSIVE", } ], } ], }, }, "aeros": { # PLACEHOLDER Loading
tests/edgecloud/test_e2e_gsma.py +10 −13 Original line number Diff line number Diff line Loading @@ -58,6 +58,11 @@ def test_config_gsma_compliance(edgecloud_client): config = CONFIG[edgecloud_client.client_name] try: # Validate ARTEFACT is GSMA-compliant if "ARTEFACT_GSMA" in config: artefact_manifest = config["ARTEFACT_GSMA"] gsma_schemas.Artefact(**artefact_manifest) # Validate APP_ONBOARD_MANIFEST_GSMA is GSMA-compliant if "APP_ONBOARD_MANIFEST_GSMA" in config: app_manifest = config["APP_ONBOARD_MANIFEST_GSMA"] Loading Loading @@ -161,17 +166,9 @@ def test_artefact_methods_gsma(edgecloud_client): config = CONFIG[edgecloud_client.client_name] if isinstance(edgecloud_client, I2EdgeClient): try: response = edgecloud_client.create_artefact( artefact_id=config["ARTEFACT_ID"], artefact_name=config["ARTEFACT_NAME"], repo_name=config["REPO_NAME"], repo_type=config["REPO_TYPE"], repo_url=config["REPO_URL"], password=None, token=None, user_name=None, ) assert response.status_code == 201 artefact_manifest = config["ARTEFACT_GSMA"] response = edgecloud_client.create_artefact_gsma(artefact_manifest) assert response.status_code == 200 except EdgeCloudPlatformError as e: pytest.fail(f"Artefact creation failed: {e}") Loading @@ -179,7 +176,7 @@ def test_artefact_methods_gsma(edgecloud_client): @pytest.mark.parametrize("edgecloud_client", test_cases, ids=id_func, indirect=True) def test_get_artefact_gsma(edgecloud_client): config = CONFIG[edgecloud_client.client_name] expected_artefact_id = config["ARTEFACT_ID"] expected_artefact_id = config["ARTEFACT_GSMA"]["artefactId"] try: response = edgecloud_client.get_artefact_gsma(expected_artefact_id) assert isinstance(response, Response) Loading Loading @@ -361,7 +358,7 @@ def test_delete_artefact_gsma(edgecloud_client): if isinstance(edgecloud_client, I2EdgeClient): try: response = edgecloud_client.delete_artefact_gsma(config["ARTEFACT_ID"]) response = edgecloud_client.delete_artefact_gsma(config["ARTEFACT_GSMA"]["artefactId"]) assert isinstance(response, Response) assert response.status_code == 200 except EdgeCloudPlatformError as e: Loading