Skip to content

Commit a7c66e8

Browse files
release: 0.12.0 (#75)
* codegen metadata * feat(api): add WarmpoolAdmin and WarmpoolViewer roles to ResourceRole * codegen metadata * feat(api): add runner_side_agent capability to RunnerCapability * codegen metadata * codegen metadata * feat(api): add audit_only to VetoExec and ExecutableDenyList * fix(types): rename ExecutableDenyList to VetoExecPolicy in organization policies * codegen metadata * codegen metadata * release: 0.12.0 --------- Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com>
1 parent dc321cc commit a7c66e8

13 files changed

Lines changed: 107 additions & 53 deletions

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "0.11.0"
2+
".": "0.12.0"
33
}

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 175
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/gitpod%2Fgitpod-8f6ee769411e2d21a2f437d49eb2f16880fcef0db52ac1985f2a3963af45f6a0.yml
3-
openapi_spec_hash: 28f2d9d7e36f1f0ecd13052054449249
4-
config_hash: 3f1278a7a2a9285f57e81f148743e99e
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/gitpod%2Fgitpod-1923b5d3865532d64d80c22746aa63991bbf227cf1cbefc8cdb14a374c4c5b89.yml
3+
openapi_spec_hash: 304200ebfa8622f5f6846895528f06e3
4+
config_hash: 469d30a2d44895c8c53a5aac370a56f1

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,20 @@
11
# Changelog
22

3+
## 0.12.0 (2026-02-18)
4+
5+
Full Changelog: [v0.11.0...v0.12.0](https://github.com/gitpod-io/gitpod-sdk-go/compare/v0.11.0...v0.12.0)
6+
7+
### Features
8+
9+
* **api:** add audit_only to VetoExec and ExecutableDenyList ([3957348](https://github.com/gitpod-io/gitpod-sdk-go/commit/39573483e5b4013a283ce4075a6b71e79b1d1ce4))
10+
* **api:** add runner_side_agent capability to RunnerCapability ([926e67e](https://github.com/gitpod-io/gitpod-sdk-go/commit/926e67e5bd00498dc91b7735414c796b5db3784a))
11+
* **api:** add WarmpoolAdmin and WarmpoolViewer roles to ResourceRole ([e00b441](https://github.com/gitpod-io/gitpod-sdk-go/commit/e00b441d8ed0c1a0eb7d373415e373000e5b9439))
12+
13+
14+
### Bug Fixes
15+
16+
* **types:** rename ExecutableDenyList to VetoExecPolicy in organization policies ([8353604](https://github.com/gitpod-io/gitpod-sdk-go/commit/8353604971c6a4d35ed29ddd046120e424fefc8b))
17+
318
## 0.11.0 (2026-02-11)
419

520
Full Changelog: [v0.10.0...v0.11.0](https://github.com/gitpod-io/gitpod-sdk-go/compare/v0.10.0...v0.11.0)

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Or to pin the version:
2424
<!-- x-release-please-start-version -->
2525

2626
```sh
27-
go get -u 'github.com/gitpod-io/gitpod-sdk-go@v0.11.0'
27+
go get -u 'github.com/gitpod-io/gitpod-sdk-go@v0.12.0'
2828
```
2929

3030
<!-- x-release-please-end -->

aliases.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -336,6 +336,12 @@ const ResourceRoleWebhookViewer = shared.ResourceRoleWebhookViewer
336336
// This is an alias to an internal value.
337337
const ResourceRoleWarmpoolRunner = shared.ResourceRoleWarmpoolRunner
338338

339+
// This is an alias to an internal value.
340+
const ResourceRoleWarmpoolAdmin = shared.ResourceRoleWarmpoolAdmin
341+
342+
// This is an alias to an internal value.
343+
const ResourceRoleWarmpoolViewer = shared.ResourceRoleWarmpoolViewer
344+
339345
// This is an alias to an internal type.
340346
type ResourceType = shared.ResourceType
341347

api.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -483,15 +483,17 @@ Methods:
483483

484484
Params Types:
485485

486-
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#ExecutableDenyListParam">ExecutableDenyListParam</a>
486+
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#KernelControlsAction">KernelControlsAction</a>
487+
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#VetoExecPolicyParam">VetoExecPolicyParam</a>
487488

488489
Response Types:
489490

490491
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#AgentPolicy">AgentPolicy</a>
491492
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#CrowdStrikeConfig">CrowdStrikeConfig</a>
492-
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#ExecutableDenyList">ExecutableDenyList</a>
493+
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#KernelControlsAction">KernelControlsAction</a>
493494
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#OrganizationPolicies">OrganizationPolicies</a>
494495
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#SecurityAgentPolicy">SecurityAgentPolicy</a>
496+
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#VetoExecPolicy">VetoExecPolicy</a>
495497
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#OrganizationPolicyGetResponse">OrganizationPolicyGetResponse</a>
496498
- <a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go">gitpod</a>.<a href="https://pkg.go.dev/github.com/gitpod-io/gitpod-sdk-go#OrganizationPolicyUpdateResponse">OrganizationPolicyUpdateResponse</a>
497499

environment.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2063,6 +2063,8 @@ func (r vetoJSON) RawJSON() string {
20632063

20642064
// exec controls executable blocking
20652065
type VetoExec struct {
2066+
// action specifies what action kernel-level controls take on policy violations
2067+
Action KernelControlsAction `json:"action"`
20662068
// denylist is the list of executable paths or names to block
20672069
Denylist []string `json:"denylist"`
20682070
// enabled controls whether executable blocking is active
@@ -2072,6 +2074,7 @@ type VetoExec struct {
20722074

20732075
// vetoExecJSON contains the JSON metadata for the struct [VetoExec]
20742076
type vetoExecJSON struct {
2077+
Action apijson.Field
20752078
Denylist apijson.Field
20762079
Enabled apijson.Field
20772080
raw string
@@ -2098,6 +2101,8 @@ func (r VetoParam) MarshalJSON() (data []byte, err error) {
20982101

20992102
// exec controls executable blocking
21002103
type VetoExecParam struct {
2104+
// action specifies what action kernel-level controls take on policy violations
2105+
Action param.Field[KernelControlsAction] `json:"action"`
21012106
// denylist is the list of executable paths or names to block
21022107
Denylist param.Field[[]string] `json:"denylist"`
21032108
// enabled controls whether executable blocking is active

environment_test.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ func TestEnvironmentNewWithOptionalParams(t *testing.T) {
7676
KernelControlsConfig: gitpod.F(gitpod.KernelControlsConfigParam{
7777
Veto: gitpod.F(gitpod.VetoParam{
7878
Exec: gitpod.F(gitpod.VetoExecParam{
79+
Action: gitpod.F(gitpod.KernelControlsActionUnspecified),
7980
Denylist: gitpod.F([]string{"string"}),
8081
Enabled: gitpod.F(true),
8182
}),
@@ -198,6 +199,7 @@ func TestEnvironmentUpdateWithOptionalParams(t *testing.T) {
198199
KernelControlsConfig: gitpod.F(gitpod.KernelControlsConfigParam{
199200
Veto: gitpod.F(gitpod.VetoParam{
200201
Exec: gitpod.F(gitpod.VetoExecParam{
202+
Action: gitpod.F(gitpod.KernelControlsActionUnspecified),
201203
Denylist: gitpod.F([]string{"string"}),
202204
Enabled: gitpod.F(true),
203205
}),
@@ -380,6 +382,7 @@ func TestEnvironmentNewFromProjectWithOptionalParams(t *testing.T) {
380382
KernelControlsConfig: gitpod.F(gitpod.KernelControlsConfigParam{
381383
Veto: gitpod.F(gitpod.VetoParam{
382384
Exec: gitpod.F(gitpod.VetoExecParam{
385+
Action: gitpod.F(gitpod.KernelControlsActionUnspecified),
383386
Denylist: gitpod.F([]string{"string"}),
384387
Enabled: gitpod.F(true),
385388
}),

internal/version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
package internal
44

5-
const PackageVersion = "0.11.0" // x-release-please-version
5+
const PackageVersion = "0.12.0" // x-release-please-version

organizationpolicy.go

Lines changed: 61 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -168,44 +168,21 @@ func (r crowdStrikeConfigJSON) RawJSON() string {
168168
return r.raw
169169
}
170170

171-
// ExecutableDenyList contains executables that are blocked from execution in
172-
// environments.
173-
type ExecutableDenyList struct {
174-
// enabled controls whether executable blocking is active
175-
Enabled bool `json:"enabled"`
176-
// executables is the list of executable paths or names to block
177-
Executables []string `json:"executables"`
178-
JSON executableDenyListJSON `json:"-"`
179-
}
180-
181-
// executableDenyListJSON contains the JSON metadata for the struct
182-
// [ExecutableDenyList]
183-
type executableDenyListJSON struct {
184-
Enabled apijson.Field
185-
Executables apijson.Field
186-
raw string
187-
ExtraFields map[string]apijson.Field
188-
}
189-
190-
func (r *ExecutableDenyList) UnmarshalJSON(data []byte) (err error) {
191-
return apijson.UnmarshalRoot(data, r)
192-
}
171+
// KernelControlsAction defines how a kernel-level policy violation is handled.
172+
type KernelControlsAction string
193173

194-
func (r executableDenyListJSON) RawJSON() string {
195-
return r.raw
196-
}
197-
198-
// ExecutableDenyList contains executables that are blocked from execution in
199-
// environments.
200-
type ExecutableDenyListParam struct {
201-
// enabled controls whether executable blocking is active
202-
Enabled param.Field[bool] `json:"enabled"`
203-
// executables is the list of executable paths or names to block
204-
Executables param.Field[[]string] `json:"executables"`
205-
}
174+
const (
175+
KernelControlsActionUnspecified KernelControlsAction = "KERNEL_CONTROLS_ACTION_UNSPECIFIED"
176+
KernelControlsActionBlock KernelControlsAction = "KERNEL_CONTROLS_ACTION_BLOCK"
177+
KernelControlsActionAudit KernelControlsAction = "KERNEL_CONTROLS_ACTION_AUDIT"
178+
)
206179

207-
func (r ExecutableDenyListParam) MarshalJSON() (data []byte, err error) {
208-
return apijson.MarshalRoot(r)
180+
func (r KernelControlsAction) IsKnown() bool {
181+
switch r {
182+
case KernelControlsActionUnspecified, KernelControlsActionBlock, KernelControlsActionAudit:
183+
return true
184+
}
185+
return false
209186
}
210187

211188
type OrganizationPolicies struct {
@@ -256,9 +233,8 @@ type OrganizationPolicies struct {
256233
// restrictions. If empty or not set for an editor, we will use the latest version
257234
// of the editor
258235
EditorVersionRestrictions map[string]OrganizationPoliciesEditorVersionRestriction `json:"editorVersionRestrictions"`
259-
// executable_deny_list contains executables that are blocked from execution in
260-
// environments.
261-
ExecutableDenyList ExecutableDenyList `json:"executableDenyList"`
236+
// executable_deny_list contains the veto exec policy for environments.
237+
ExecutableDenyList VetoExecPolicy `json:"executableDenyList"`
262238
// maximum_environment_lifetime controls for how long environments are allowed to
263239
// be reused. 0 means no maximum lifetime. Maximum duration is 180 days (15552000
264240
// seconds).
@@ -358,6 +334,50 @@ func (r securityAgentPolicyJSON) RawJSON() string {
358334
return r.raw
359335
}
360336

337+
// VetoExecPolicy defines the policy for blocking or auditing executable execution
338+
// in environments.
339+
type VetoExecPolicy struct {
340+
// action specifies what action kernel-level controls take on policy violations
341+
Action KernelControlsAction `json:"action"`
342+
// enabled controls whether executable blocking is active
343+
Enabled bool `json:"enabled"`
344+
// executables is the list of executable paths or names to block
345+
Executables []string `json:"executables"`
346+
JSON vetoExecPolicyJSON `json:"-"`
347+
}
348+
349+
// vetoExecPolicyJSON contains the JSON metadata for the struct [VetoExecPolicy]
350+
type vetoExecPolicyJSON struct {
351+
Action apijson.Field
352+
Enabled apijson.Field
353+
Executables apijson.Field
354+
raw string
355+
ExtraFields map[string]apijson.Field
356+
}
357+
358+
func (r *VetoExecPolicy) UnmarshalJSON(data []byte) (err error) {
359+
return apijson.UnmarshalRoot(data, r)
360+
}
361+
362+
func (r vetoExecPolicyJSON) RawJSON() string {
363+
return r.raw
364+
}
365+
366+
// VetoExecPolicy defines the policy for blocking or auditing executable execution
367+
// in environments.
368+
type VetoExecPolicyParam struct {
369+
// action specifies what action kernel-level controls take on policy violations
370+
Action param.Field[KernelControlsAction] `json:"action"`
371+
// enabled controls whether executable blocking is active
372+
Enabled param.Field[bool] `json:"enabled"`
373+
// executables is the list of executable paths or names to block
374+
Executables param.Field[[]string] `json:"executables"`
375+
}
376+
377+
func (r VetoExecPolicyParam) MarshalJSON() (data []byte, err error) {
378+
return apijson.MarshalRoot(r)
379+
}
380+
361381
type OrganizationPolicyGetResponse struct {
362382
Policies OrganizationPolicies `json:"policies,required"`
363383
JSON organizationPolicyGetResponseJSON `json:"-"`
@@ -414,9 +434,8 @@ type OrganizationPolicyUpdateParams struct {
414434
// editor_version_restrictions restricts which editor versions can be used. Maps
415435
// editor ID to version policy with allowed major versions.
416436
EditorVersionRestrictions param.Field[map[string]OrganizationPolicyUpdateParamsEditorVersionRestrictions] `json:"editorVersionRestrictions"`
417-
// executable_deny_list contains executables that are blocked from execution in
418-
// environments.
419-
ExecutableDenyList param.Field[ExecutableDenyListParam] `json:"executableDenyList"`
437+
// executable_deny_list contains the veto exec policy for environments.
438+
ExecutableDenyList param.Field[VetoExecPolicyParam] `json:"executableDenyList"`
420439
// maximum_environment_lifetime controls for how long environments are allowed to
421440
// be reused. 0 means no maximum lifetime. Maximum duration is 180 days (15552000
422441
// seconds).

0 commit comments

Comments
 (0)