Skip to content

Commit

Permalink
Releasing version 65.26.0
Browse files Browse the repository at this point in the history
Releasing version 65.26.0
  • Loading branch information
oci-dex-release-bot authored Nov 8, 2022
2 parents 973bca0 + 4311544 commit 6bdb62b
Show file tree
Hide file tree
Showing 98 changed files with 2,230 additions and 148 deletions.
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,21 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/)

## 65.26.0 - 2022-11-08
### Added
- Support for listing local and cross-region refreshable clones in the Database service
- Support for adding multiple cloud VM clusters in the Database service
- Support for creating rollback jobs in the Resource Manager service
- Support for edge nodes in the Big Data service
- Support for Single Client Access Name (SCAN) in the Data Flow service
- Support for additional filters when listing application dependencies in the Application Dependency Management service
- Support for additional properties when reading Vulnerability Audit resources in the Application Dependency Management service
- Support for optionally passing compartment IDs when creating Vulnerability Audit resources in the Application Dependency Management service

### Breaking Changes
- The property `CertificateId` was made required in `PrivateServerConfigDetails` model in the Resource Manager service


## 65.25.0 - 2022-11-01
### Added
- Support for cloning from a backup from the last available timestamp in the Database service
Expand Down
16 changes: 12 additions & 4 deletions adm/application_dependency.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,22 @@ import (
// ApplicationDependency An Application Dependency resource creates a Vulnerability Audit.
type ApplicationDependency struct {

// Unique Group Artifact Version (GAV) identifier (Group:Artifact:Version), e.g. org.graalvm.nativeimage:svm:21.1.0.
// Group Artifact Version (GAV) identifier (Group:Artifact:Version), e.g. org.graalvm.nativeimage:svm:21.1.0.
Gav *string `mandatory:"true" json:"gav"`

// Unique identifier of an Application Dependency node, e.g. nodeId1.
// Unique identifier of an Application Dependency, for example nodeId1.
// The nodeId can be generated by assigning a unique id to each application dependency
// in the tree of application dependencies.
// Every node, even those who share the same GAV, should have a different nodeId.
// The preferred way of constructing a nodeId is to assign incremental integers
// during a breadth first or depth first search.
// A nodeId can be reused only it refers to the same subtree of application dependencies.
// (This is not equivalent to referring to the same GAV, that is,
// a GAV can have multiple transitive dependencies.)
NodeId *string `mandatory:"true" json:"nodeId"`

// List of (Application Dependencies) node identifiers on which this node depends.
ApplicationDependencyNodeIds []string `mandatory:"true" json:"applicationDependencyNodeIds"`
// List of Application Dependencies on which this Application Dependency depends, each identified by its nodeId.
ApplicationDependencyNodeIds []string `mandatory:"false" json:"applicationDependencyNodeIds"`
}

func (m ApplicationDependency) String() string {
Expand Down
2 changes: 1 addition & 1 deletion adm/application_dependency_vulnerability_collection.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import (
)

// ApplicationDependencyVulnerabilityCollection Application Dependencies with Vulnerabilities.
// This resource is defined by a list of Application Dependencies with are associated with eventual Vulnerabilities.
// This resource is defined by a list of Application Dependencies that are associated with eventual Vulnerabilities.
type ApplicationDependencyVulnerabilityCollection struct {

// List of Vulnerability Audit summaries.
Expand Down
10 changes: 5 additions & 5 deletions adm/application_dependency_vulnerability_summary.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,18 +15,18 @@ import (
"strings"
)

// ApplicationDependencyVulnerabilitySummary An Application Dependency Vulnerability represents a single dependency in our application.
// ApplicationDependencyVulnerabilitySummary An Application Dependency Vulnerability represents a single dependency in the application.
// An Application Dependency Vulnerability can be associated with eventual Vulnerabilities.
// Each Application Dependency is uniquely defined by a nodeId and lists eventual dependencies that this element depends on.
// Each Application Dependency is uniquely defined by a nodeId and lists eventual dependencies on which it depends.
type ApplicationDependencyVulnerabilitySummary struct {

// Unique Group Artifact Version (GAV) identifier (Group:Artifact:Version), e.g. org.graalvm.nativeimage:svm:21.1.0.
// Group Artifact Version (GAV) identifier (Group:Artifact:Version), for example org.graalvm.nativeimage:svm:21.1.0.
Gav *string `mandatory:"true" json:"gav"`

// Unique identifier of an Application Dependency node, e.g. nodeId1.
// Unique identifier of an Application Dependency, for example nodeId1.
NodeId *string `mandatory:"true" json:"nodeId"`

// List of (Application Dependencies) node identifiers on which this node depends.
// List of Application Dependencies on which this Application Dependency depends, each identified by its nodeId.
ApplicationDependencyNodeIds []string `mandatory:"true" json:"applicationDependencyNodeIds"`

// List of vulnerabilities for the Application Dependency.
Expand Down
65 changes: 60 additions & 5 deletions adm/create_vulnerability_audit_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
package adm

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
Expand All @@ -21,20 +22,23 @@ type CreateVulnerabilityAuditDetails struct {
// The Oracle Cloud identifier (OCID (https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)) of the Knowledge Base.
KnowledgeBaseId *string `mandatory:"true" json:"knowledgeBaseId"`

// The type of the build tool.
BuildType VulnerabilityAuditBuildTypeEnum `mandatory:"true" json:"buildType"`

// The Oracle Cloud identifier (OCID (https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm)) of the compartment associated with the Vulnerability Audit.
CompartmentId *string `mandatory:"true" json:"compartmentId"`
// If compartment identifier is not provided the compartment of the associated Knowledge Base will be used instead.
CompartmentId *string `mandatory:"false" json:"compartmentId"`

// List of Application Dependencies (without vulnerabilities).
ApplicationDependencies []ApplicationDependency `mandatory:"true" json:"applicationDependencies"`

// The type of the build tool.
BuildType VulnerabilityAuditBuildTypeEnum `mandatory:"true" json:"buildType"`
ApplicationDependencies []ApplicationDependency `mandatory:"false" json:"applicationDependencies"`

Configuration *VulnerabilityAuditConfiguration `mandatory:"false" json:"configuration"`

// The name of the Vulnerability Audit.
DisplayName *string `mandatory:"false" json:"displayName"`

Source VulnerabilityAuditSource `mandatory:"false" json:"source"`

// Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only.
// Example: `{"bar-key": "value"}`
FreeformTags map[string]string `mandatory:"false" json:"freeformTags"`
Expand Down Expand Up @@ -62,3 +66,54 @@ func (m CreateVulnerabilityAuditDetails) ValidateEnumValue() (bool, error) {
}
return false, nil
}

// UnmarshalJSON unmarshals from json
func (m *CreateVulnerabilityAuditDetails) UnmarshalJSON(data []byte) (e error) {
model := struct {
CompartmentId *string `json:"compartmentId"`
ApplicationDependencies []ApplicationDependency `json:"applicationDependencies"`
Configuration *VulnerabilityAuditConfiguration `json:"configuration"`
DisplayName *string `json:"displayName"`
Source vulnerabilityauditsource `json:"source"`
FreeformTags map[string]string `json:"freeformTags"`
DefinedTags map[string]map[string]interface{} `json:"definedTags"`
KnowledgeBaseId *string `json:"knowledgeBaseId"`
BuildType VulnerabilityAuditBuildTypeEnum `json:"buildType"`
}{}

e = json.Unmarshal(data, &model)
if e != nil {
return
}
var nn interface{}
m.CompartmentId = model.CompartmentId

m.ApplicationDependencies = make([]ApplicationDependency, len(model.ApplicationDependencies))
for i, n := range model.ApplicationDependencies {
m.ApplicationDependencies[i] = n
}

m.Configuration = model.Configuration

m.DisplayName = model.DisplayName

nn, e = model.Source.UnmarshalPolymorphicJSON(model.Source.JsonData)
if e != nil {
return
}
if nn != nil {
m.Source = nn.(VulnerabilityAuditSource)
} else {
m.Source = nil
}

m.FreeformTags = model.FreeformTags

m.DefinedTags = model.DefinedTags

m.KnowledgeBaseId = model.KnowledgeBaseId

m.BuildType = model.BuildType

return
}
54 changes: 54 additions & 0 deletions adm/external_resource_vulnerability_audit_source.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
// Copyright (c) 2016, 2018, 2022, Oracle and/or its affiliates. All rights reserved.
// This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
// Code generated. DO NOT EDIT.

// Application Dependency Management API
//
// Use the Application Dependency Management API to create knowledge bases and vulnerability audits. For more information, see ADM (https://docs.cloud.oracle.com/Content/application-dependency-management/home.htm).
//

package adm

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)

// ExternalResourceVulnerabilityAuditSource External source for the Vulnerability Audit.
type ExternalResourceVulnerabilityAuditSource struct {

// Description of the external resource source.
Description *string `mandatory:"false" json:"description"`
}

func (m ExternalResourceVulnerabilityAuditSource) String() string {
return common.PointerString(m)
}

// ValidateEnumValue returns an error when providing an unsupported enum value
// This function is being called during constructing API request process
// Not recommended for calling this function directly
func (m ExternalResourceVulnerabilityAuditSource) ValidateEnumValue() (bool, error) {
errMessage := []string{}

if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}

// MarshalJSON marshals to json representation
func (m ExternalResourceVulnerabilityAuditSource) MarshalJSON() (buff []byte, e error) {
type MarshalTypeExternalResourceVulnerabilityAuditSource ExternalResourceVulnerabilityAuditSource
s := struct {
DiscriminatorParam string `json:"type"`
MarshalTypeExternalResourceVulnerabilityAuditSource
}{
"EXTERNAL_RESOURCE",
(MarshalTypeExternalResourceVulnerabilityAuditSource)(m),
}

return json.Marshal(&s)
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,21 @@ type ListApplicationDependencyVulnerabilitiesRequest struct {
SortOrder ListApplicationDependencyVulnerabilitiesSortOrderEnum `mandatory:"false" contributesTo:"query" name:"sortOrder" omitEmpty:"true"`

// The field to sort by. Only one sort order may be provided.
// If sort order is dfs, the nodes are returned by going through the application dependency tree in a depth-first manner. Children are sorted based on their GAV property alphabetically (either ascending or descending, depending on the order parameter). Default order is ascending.
// If sort order is bfs, the nodes are returned by going through the application dependency tree in a breadth-first manner. Children are sorted based on their GAV property alphabetically (either ascending or descending, depending on the order parameter). Default order is ascending.
// Default order for gav is ascending where ascending corresponds to alphanumerical order.
// Default order for nodeId is ascending where ascending corresponds to alphanumerical order.
// Sorting by DFS or BFS cannot be used in conjunction with the following query parameters: "gav", "cvssV2GreaterThanOrEqual", "cvssV3GreaterThanOrEqual" and "vulnerabilityId".
SortBy ListApplicationDependencyVulnerabilitiesSortByEnum `mandatory:"false" contributesTo:"query" name:"sortBy" omitEmpty:"true"`

// A filter to override the top level root identifier with the new given value. The application dependency tree will only be traversed from the given node.
// Query parameters "cvssV2GreaterThanOrEqual", "cvssV3GreaterThanOrEqual", "gav" and "vulnerabilityId" cannot be used in conjunction with this parameter.
RootNodeId *string `mandatory:"false" contributesTo:"query" name:"rootNodeId"`

// A filter to limit depth of the application dependencies tree traversal.
// Additionally query parameters such as "cvssV2GreaterThanOrEqual", "cvssV3GreaterThanOrEqual", "gav" and "vulnerabilityId" can't be used in conjunction with this latter.
Depth *int `mandatory:"false" contributesTo:"query" name:"depth"`

// A filter to return only resources that match the entire GAV (Group Artifact Version) identifier given.
Gav *string `mandatory:"false" contributesTo:"query" name:"gav"`

Expand Down Expand Up @@ -175,16 +186,22 @@ type ListApplicationDependencyVulnerabilitiesSortByEnum string
const (
ListApplicationDependencyVulnerabilitiesSortByGav ListApplicationDependencyVulnerabilitiesSortByEnum = "gav"
ListApplicationDependencyVulnerabilitiesSortByNodeid ListApplicationDependencyVulnerabilitiesSortByEnum = "nodeId"
ListApplicationDependencyVulnerabilitiesSortByDfs ListApplicationDependencyVulnerabilitiesSortByEnum = "dfs"
ListApplicationDependencyVulnerabilitiesSortByBfs ListApplicationDependencyVulnerabilitiesSortByEnum = "bfs"
)

var mappingListApplicationDependencyVulnerabilitiesSortByEnum = map[string]ListApplicationDependencyVulnerabilitiesSortByEnum{
"gav": ListApplicationDependencyVulnerabilitiesSortByGav,
"nodeId": ListApplicationDependencyVulnerabilitiesSortByNodeid,
"dfs": ListApplicationDependencyVulnerabilitiesSortByDfs,
"bfs": ListApplicationDependencyVulnerabilitiesSortByBfs,
}

var mappingListApplicationDependencyVulnerabilitiesSortByEnumLowerCase = map[string]ListApplicationDependencyVulnerabilitiesSortByEnum{
"gav": ListApplicationDependencyVulnerabilitiesSortByGav,
"nodeid": ListApplicationDependencyVulnerabilitiesSortByNodeid,
"dfs": ListApplicationDependencyVulnerabilitiesSortByDfs,
"bfs": ListApplicationDependencyVulnerabilitiesSortByBfs,
}

// GetListApplicationDependencyVulnerabilitiesSortByEnumValues Enumerates the set of values for ListApplicationDependencyVulnerabilitiesSortByEnum
Expand All @@ -201,6 +218,8 @@ func GetListApplicationDependencyVulnerabilitiesSortByEnumStringValues() []strin
return []string{
"gav",
"nodeId",
"dfs",
"bfs",
}
}

Expand Down
39 changes: 27 additions & 12 deletions adm/list_vulnerability_audits_request_response.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,11 @@ type ListVulnerabilityAuditsRequest struct {
// The field used to sort Vulnerability Audits. Only one sort order is allowed.
// Default order for _maxObservedCvssV2Score_ is **ascending**.
// Default order for _maxObservedCvssV3Score_ is **ascending**.
// Default order for _maxObservedCvssV2ScoreWithIgnored_ is **ascending**.
// Default order for _maxObservedCvssV3ScoreWithIgnored_ is **ascending**.
// Default order for _timeCreated_ is **descending**.
// Default order for _vulnerableArtifactsCount_ is **ascending**.
// Default order for _vulnerableArtifactsCountWithIgnored_ is **ascending**.
SortBy ListVulnerabilityAuditsSortByEnum `mandatory:"false" contributesTo:"query" name:"sortBy" omitEmpty:"true"`

// A filter to return only resources that match the entire display name given.
Expand Down Expand Up @@ -181,24 +184,33 @@ type ListVulnerabilityAuditsSortByEnum string

// Set of constants representing the allowable values for ListVulnerabilityAuditsSortByEnum
const (
ListVulnerabilityAuditsSortByMaxobservedcvssv2score ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV2Score"
ListVulnerabilityAuditsSortByMaxobservedcvssv3score ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV3Score"
ListVulnerabilityAuditsSortByTimecreated ListVulnerabilityAuditsSortByEnum = "timeCreated"
ListVulnerabilityAuditsSortByVulnerableartifactscount ListVulnerabilityAuditsSortByEnum = "vulnerableArtifactsCount"
ListVulnerabilityAuditsSortByMaxobservedcvssv2score ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV2Score"
ListVulnerabilityAuditsSortByMaxobservedcvssv3score ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV3Score"
ListVulnerabilityAuditsSortByTimecreated ListVulnerabilityAuditsSortByEnum = "timeCreated"
ListVulnerabilityAuditsSortByVulnerableartifactscount ListVulnerabilityAuditsSortByEnum = "vulnerableArtifactsCount"
ListVulnerabilityAuditsSortByMaxobservedcvssv2scorewithignored ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV2ScoreWithIgnored"
ListVulnerabilityAuditsSortByMaxobservedcvssv3scorewithignored ListVulnerabilityAuditsSortByEnum = "maxObservedCvssV3ScoreWithIgnored"
ListVulnerabilityAuditsSortByVulnerableartifactscountwithignored ListVulnerabilityAuditsSortByEnum = "vulnerableArtifactsCountWithIgnored"
)

var mappingListVulnerabilityAuditsSortByEnum = map[string]ListVulnerabilityAuditsSortByEnum{
"maxObservedCvssV2Score": ListVulnerabilityAuditsSortByMaxobservedcvssv2score,
"maxObservedCvssV3Score": ListVulnerabilityAuditsSortByMaxobservedcvssv3score,
"timeCreated": ListVulnerabilityAuditsSortByTimecreated,
"vulnerableArtifactsCount": ListVulnerabilityAuditsSortByVulnerableartifactscount,
"maxObservedCvssV2Score": ListVulnerabilityAuditsSortByMaxobservedcvssv2score,
"maxObservedCvssV3Score": ListVulnerabilityAuditsSortByMaxobservedcvssv3score,
"timeCreated": ListVulnerabilityAuditsSortByTimecreated,
"vulnerableArtifactsCount": ListVulnerabilityAuditsSortByVulnerableartifactscount,
"maxObservedCvssV2ScoreWithIgnored": ListVulnerabilityAuditsSortByMaxobservedcvssv2scorewithignored,
"maxObservedCvssV3ScoreWithIgnored": ListVulnerabilityAuditsSortByMaxobservedcvssv3scorewithignored,
"vulnerableArtifactsCountWithIgnored": ListVulnerabilityAuditsSortByVulnerableartifactscountwithignored,
}

var mappingListVulnerabilityAuditsSortByEnumLowerCase = map[string]ListVulnerabilityAuditsSortByEnum{
"maxobservedcvssv2score": ListVulnerabilityAuditsSortByMaxobservedcvssv2score,
"maxobservedcvssv3score": ListVulnerabilityAuditsSortByMaxobservedcvssv3score,
"timecreated": ListVulnerabilityAuditsSortByTimecreated,
"vulnerableartifactscount": ListVulnerabilityAuditsSortByVulnerableartifactscount,
"maxobservedcvssv2score": ListVulnerabilityAuditsSortByMaxobservedcvssv2score,
"maxobservedcvssv3score": ListVulnerabilityAuditsSortByMaxobservedcvssv3score,
"timecreated": ListVulnerabilityAuditsSortByTimecreated,
"vulnerableartifactscount": ListVulnerabilityAuditsSortByVulnerableartifactscount,
"maxobservedcvssv2scorewithignored": ListVulnerabilityAuditsSortByMaxobservedcvssv2scorewithignored,
"maxobservedcvssv3scorewithignored": ListVulnerabilityAuditsSortByMaxobservedcvssv3scorewithignored,
"vulnerableartifactscountwithignored": ListVulnerabilityAuditsSortByVulnerableartifactscountwithignored,
}

// GetListVulnerabilityAuditsSortByEnumValues Enumerates the set of values for ListVulnerabilityAuditsSortByEnum
Expand All @@ -217,6 +229,9 @@ func GetListVulnerabilityAuditsSortByEnumStringValues() []string {
"maxObservedCvssV3Score",
"timeCreated",
"vulnerableArtifactsCount",
"maxObservedCvssV2ScoreWithIgnored",
"maxObservedCvssV3ScoreWithIgnored",
"vulnerableArtifactsCountWithIgnored",
}
}

Expand Down
Loading

0 comments on commit 6bdb62b

Please sign in to comment.