Skip to content

Commit c5019eb

Browse files
authored
feat(serverless_jobs): add method to get jobs limits (#2275)
1 parent 2a6e720 commit c5019eb

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

api/jobs/v1alpha1/jobs_sdk.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,17 @@ type GetJobRunRequest struct {
404404
JobRunID string `json:"-"`
405405
}
406406

407+
// GetJobsLimitsRequest: get jobs limits request.
408+
type GetJobsLimitsRequest struct {
409+
// Region: region to target. If none is passed will use default region from the config.
410+
Region scw.Region `json:"-"`
411+
}
412+
413+
// JobsLimits: jobs limits.
414+
type JobsLimits struct {
415+
SecretsPerJobDefinition uint32 `json:"secrets_per_job_definition"`
416+
}
417+
407418
// ListJobDefinitionSecretsRequest: list job definition secrets request.
408419
type ListJobDefinitionSecretsRequest struct {
409420
// Region: region to target. If none is passed will use default region from the config.
@@ -1162,3 +1173,30 @@ func (s *API) ListJobsResources(req *ListJobsResourcesRequest, opts ...scw.Reque
11621173
}
11631174
return &resp, nil
11641175
}
1176+
1177+
// GetJobsLimits: Get jobs limits for the console.
1178+
func (s *API) GetJobsLimits(req *GetJobsLimitsRequest, opts ...scw.RequestOption) (*JobsLimits, error) {
1179+
var err error
1180+
1181+
if req.Region == "" {
1182+
defaultRegion, _ := s.client.GetDefaultRegion()
1183+
req.Region = defaultRegion
1184+
}
1185+
1186+
if fmt.Sprint(req.Region) == "" {
1187+
return nil, errors.New("field Region cannot be empty in request")
1188+
}
1189+
1190+
scwReq := &scw.ScalewayRequest{
1191+
Method: "GET",
1192+
Path: "/serverless-jobs/v1alpha1/regions/" + fmt.Sprint(req.Region) + "/jobs-limits",
1193+
}
1194+
1195+
var resp JobsLimits
1196+
1197+
err = s.client.Do(scwReq, &resp, opts...)
1198+
if err != nil {
1199+
return nil, err
1200+
}
1201+
return &resp, nil
1202+
}

0 commit comments

Comments
 (0)