getDataPlaneURL()

in lib/services/APIService.js [46:71]


    getDataPlaneURL(id) {
        return __awaiter(this, void 0, void 0, function* () {
            var _a;
            let armUrl = this.authContext.taskParameters.armEndpoint;
            let armEndpointSuffix = id.toLowerCase() + "?api-version=" + UtilModels_1.ApiVersionConstants.cp2022Version;
            let armEndpoint = new URL(armEndpointSuffix, armUrl);
            let header = yield this.authContext.getARMTokenHeader();
            let response = yield FetchUtil.httpClientRetries(armEndpoint.toString(), header, UtilModels_1.FetchCallType.get, 3, "");
            let resourceName = Util.getResourceNameFromResourceId(id);
            if (response.message.statusCode == 200) {
                let respObj = yield Util.getResultObj(response);
                if ((_a = respObj.properties) === null || _a === void 0 ? void 0 : _a.dataPlaneURI) {
                    let dataPlaneUrl = respObj.properties.dataPlaneURI;
                    return dataPlaneUrl;
                }
                throw new Error(`The dataplane URL is not present for the load test resource ${resourceName}, this resource cannot be used for running the tests. Please provide a valid resource.`);
            }
            if (response.message.statusCode == 404) {
                var message = `The Azure Load Testing resource ${resourceName} does not exist. Please provide an existing resource.`;
                throw new Error(message);
            }
            let errorObj = yield Util.getResultObj(response);
            console.log(errorObj ? errorObj : Util.errorCorrection(response));
            throw new Error("Error fetching resource " + resourceName);
        });
    }