Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 23 additions & 10 deletions sdk/advisor/arm-advisor/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,28 @@
# Release History

## 4.0.0 (2023-01-31)

**Features**

## 3.1.1 (Unreleased)

### Features Added

### Breaking Changes

### Bugs Fixed

### Other Changes

- Added Interface PredictionRequest
- Added Interface PredictionResponse
- Added Interface PredictOptionalParams
- Added Type Alias Duration
- Added Type Alias PredictionType
- Added Type Alias PredictResponse
- Interface ConfigData has a new optional parameter duration
- Added Enum KnownDuration
- Added Enum KnownPredictionType

**Breaking Changes**

- Interface RecommendationsListNextOptionalParams no longer has parameter filter
- Interface RecommendationsListNextOptionalParams no longer has parameter skipToken
- Interface RecommendationsListNextOptionalParams no longer has parameter top
- Interface SuppressionsListNextOptionalParams no longer has parameter skipToken
- Interface SuppressionsListNextOptionalParams no longer has parameter top


## 3.1.0 (2022-11-14)

**Features**
Expand Down
2 changes: 1 addition & 1 deletion sdk/advisor/arm-advisor/LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2022 Microsoft
Copyright (c) 2023 Microsoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
10 changes: 5 additions & 5 deletions sdk/advisor/arm-advisor/_meta.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"commit": "54ee1a9eb50c13e0790627749f986c886ad4f4db",
"readme": "specification\\advisor\\resource-manager\\readme.md",
"autorest_command": "autorest --version=3.8.4 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\advisor\\resource-manager\\readme.md --use=@autorest/[email protected].3.20221108.1 --generate-sample=true",
"commit": "e6ed9e5774705dac69ae30c592c08b1a82aaa511",
"readme": "specification/advisor/resource-manager/readme.md",
"autorest_command": "autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/advisor/resource-manager/readme.md --use=@autorest/[email protected].5",
"repository_url": "https://github.com/Azure/azure-rest-api-specs.git",
"release_tool": "@azure-tools/js-sdk-release-tools@2.4.2",
"use": "@autorest/[email protected].3.20221108.1"
"release_tool": "@azure-tools/js-sdk-release-tools@2.6.1",
"use": "@autorest/[email protected].5"
}
14 changes: 3 additions & 11 deletions sdk/advisor/arm-advisor/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"sdk-type": "mgmt",
"author": "Microsoft Corporation",
"description": "A generated SDK for AdvisorManagementClient.",
"version": "3.1.1",
"version": "4.0.0",
"engines": {
"node": ">=14.0.0"
},
Expand Down Expand Up @@ -108,13 +108,5 @@
}
]
},
"autoPublish": true,
"//sampleConfiguration": {
"productName": "",
"productSlugs": [
"azure"
],
"disableDocsMs": true,
"apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-advisor?view=azure-node-preview"
}
}
"autoPublish": true
}
52 changes: 47 additions & 5 deletions sdk/advisor/arm-advisor/review/arm-advisor.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export class AdvisorManagementClient extends coreClient.ServiceClient {
configurations: Configurations;
// (undocumented)
operations: Operations;
predict(predictionRequest: PredictionRequest, options?: PredictOptionalParams): Promise<PredictResponse>;
// (undocumented)
recommendationMetadata: RecommendationMetadata;
// (undocumented)
Expand Down Expand Up @@ -53,6 +54,7 @@ export type Category = string;
// @public
export interface ConfigData extends Resource {
digests?: DigestConfig[];
duration?: Duration;
exclude?: boolean;
lowCpuThreshold?: CpuThreshold;
}
Expand Down Expand Up @@ -125,6 +127,9 @@ export interface DigestConfig {
// @public
export type DigestConfigState = string;

// @public
export type Duration = string;

// @public
export function getContinuationToken(page: unknown): string | undefined;

Expand Down Expand Up @@ -159,13 +164,28 @@ export enum KnownDigestConfigState {
Disabled = "Disabled"
}

// @public
export enum KnownDuration {
Fourteen = "14",
Ninety = "90",
Seven = "7",
Sixty = "60",
Thirty = "30",
TwentyOne = "21"
}

// @public
export enum KnownImpact {
High = "High",
Low = "Low",
Medium = "Medium"
}

// @public
export enum KnownPredictionType {
PredictiveRightsizing = "PredictiveRightsizing"
}

// @public
export enum KnownRisk {
Error = "Error",
Expand Down Expand Up @@ -240,6 +260,33 @@ export interface OperationsListOptionalParams extends coreClient.OperationOption
// @public
export type OperationsListResponse = OperationEntityListResult;

// @public
export interface PredictionRequest {
extendedProperties?: Record<string, unknown>;
predictionType?: PredictionType;
}

// @public
export interface PredictionResponse {
category?: Category;
extendedProperties?: Record<string, unknown>;
impact?: Impact;
impactedField?: string;
lastUpdated?: Date;
predictionType?: PredictionType;
shortDescription?: ShortDescription;
}

// @public
export type PredictionType = string;

// @public
export interface PredictOptionalParams extends coreClient.OperationOptions {
}

// @public
export type PredictResponse = PredictionResponse;

// @public
export interface RecommendationMetadata {
get(name: string, options?: RecommendationMetadataGetOptionalParams): Promise<RecommendationMetadataGetResponse>;
Expand Down Expand Up @@ -301,9 +348,6 @@ export type RecommendationsGetResponse = ResourceRecommendationBase;

// @public
export interface RecommendationsListNextOptionalParams extends coreClient.OperationOptions {
filter?: string;
skipToken?: string;
top?: number;
}

// @public
Expand Down Expand Up @@ -429,8 +473,6 @@ export type SuppressionsGetResponse = SuppressionContract;

// @public
export interface SuppressionsListNextOptionalParams extends coreClient.OperationOptions {
skipToken?: string;
top?: number;
}

// @public
Expand Down
49 changes: 46 additions & 3 deletions sdk/advisor/arm-advisor/src/advisorManagementClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,14 @@ import {
Operations,
Suppressions
} from "./operationsInterfaces";
import { AdvisorManagementClientOptionalParams } from "./models";
import * as Parameters from "./models/parameters";
import * as Mappers from "./models/mappers";
import {
AdvisorManagementClientOptionalParams,
PredictionRequest,
PredictOptionalParams,
PredictResponse
} from "./models";

export class AdvisorManagementClient extends coreClient.ServiceClient {
$host: string;
Expand Down Expand Up @@ -62,7 +69,7 @@ export class AdvisorManagementClient extends coreClient.ServiceClient {
credential: credentials
};

const packageDetails = `azsdk-js-arm-advisor/3.1.1`;
const packageDetails = `azsdk-js-arm-advisor/4.0.0`;
const userAgentPrefix =
options.userAgentOptions && options.userAgentOptions.userAgentPrefix
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
Expand Down Expand Up @@ -115,7 +122,7 @@ export class AdvisorManagementClient extends coreClient.ServiceClient {

// Assigning values to Constant parameters
this.$host = options.$host || "https://management.azure.com";
this.apiVersion = options.apiVersion || "2020-01-01";
this.apiVersion = options.apiVersion || "2022-09-01";
this.recommendationMetadata = new RecommendationMetadataImpl(this);
this.configurations = new ConfigurationsImpl(this);
this.recommendations = new RecommendationsImpl(this);
Expand Down Expand Up @@ -152,9 +159,45 @@ export class AdvisorManagementClient extends coreClient.ServiceClient {
this.pipeline.addPolicy(apiVersionPolicy);
}

/**
* Predicts a recommendation.
* @param predictionRequest Parameters for predict recommendation.
* @param options The options parameters.
*/
predict(
predictionRequest: PredictionRequest,
options?: PredictOptionalParams
): Promise<PredictResponse> {
return this.sendOperationRequest(
{ predictionRequest, options },
predictOperationSpec
);
}

recommendationMetadata: RecommendationMetadata;
configurations: Configurations;
recommendations: Recommendations;
operations: Operations;
suppressions: Suppressions;
}
// Operation Specifications
const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);

const predictOperationSpec: coreClient.OperationSpec = {
path: "/subscriptions/{subscriptionId}/providers/Microsoft.Advisor/predict",
httpMethod: "POST",
responses: {
200: {
bodyMapper: Mappers.PredictionResponse
},
default: {
bodyMapper: Mappers.ArmErrorResponse
}
},
requestBody: Parameters.predictionRequest,
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.$host, Parameters.subscriptionId],
headerParameters: [Parameters.accept, Parameters.contentType],
mediaType: "json",
serializer
};
Loading