Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Go (build/test) version to 1.23 #338

Merged
merged 5 commits into from
Nov 26, 2024
Merged
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
8 changes: 4 additions & 4 deletions .github/workflows/build-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- uses: actions/[email protected]
- uses: actions/setup-go@v4
with:
go-version: 1.20.5
go-version: 1.23.3
- uses: actions/setup-node@v3
with:
node-version: 10
Expand All @@ -44,7 +44,7 @@ jobs:
- uses: actions/[email protected]
- uses: actions/setup-go@v4
with:
go-version: 1.20.5
go-version: 1.23.3
- name: Ensure no go vet errors
run: |
make vet
Expand All @@ -55,7 +55,7 @@ jobs:
- uses: actions/[email protected]
- uses: actions/setup-go@v4
with:
go-version: 1.20.5
go-version: 1.23.3
- name: Install go tooling and setup-envtest
run: |
make install-tools
Expand All @@ -70,7 +70,7 @@ jobs:
- uses: actions/[email protected]
- uses: actions/setup-go@v4
with:
go-version: 1.20.5
go-version: 1.23.3
- name: Build test binaries
run: make bin/acceptance.linux
- name: Install tooling
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
fetch-depth: 0
- uses: actions/setup-go@v4
with:
go-version: 1.20.5
go-version: 1.23.3
- name: Create tag for new version
run: |
CURRENT_VERSION="v$(cat VERSION)"
Expand Down
2 changes: 1 addition & 1 deletion .tool-versions
Original file line number Diff line number Diff line change
@@ -1 +1 @@
golang 1.20.5
golang 1.23.3
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build Go binary without cgo dependencies
FROM golang:1.20.5 as builder
FROM golang:1.23.3 as builder
WORKDIR /go/src/github.com/gocardless/theatre

COPY . /go/src/github.com/gocardless/theatre
Expand Down
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,8 @@ manifests: generate
# See https://github.com/kubernetes-sigs/controller-runtime/tree/main/tools/setup-envtest
install-tools:
go install github.com/onsi/ginkgo/[email protected]
go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.10.0
go install sigs.k8s.io/controller-runtime/tools/setup-envtest@latest
go install sigs.k8s.io/controller-tools/cmd/controller-gen@v0.14.0
go install sigs.k8s.io/controller-runtime/tools/setup-envtest@release-0.19

install-tools-homebrew:
brew install kubernetes-cli kustomize kind
Expand Down
1 change: 0 additions & 1 deletion apis/rbac/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion apis/workloads/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

47 changes: 25 additions & 22 deletions config/base/crds/rbac.crd.gocardless.com_directoryrolebindings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.10.0
creationTimestamp: null
controller-gen.kubebuilder.io/version: v0.14.0
name: directoryrolebindings.rbac.crd.gocardless.com
spec:
group: rbac.crd.gocardless.com
Expand All @@ -22,14 +21,19 @@ spec:
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
description: |-
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
description: |-
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
Expand Down Expand Up @@ -57,29 +61,28 @@ spec:
x-kubernetes-map-type: atomic
subjects:
items:
description: Subject contains a reference to the object or user
identities a role binding applies to. This can either hold a
direct API object reference, or a value for non-objects such as
user and group names.
description: |-
Subject contains a reference to the object or user identities a role binding applies to. This can either hold a direct API object reference,
or a value for non-objects such as user and group names.
properties:
apiGroup:
description: APIGroup holds the API group of the referenced
subject. Defaults to "" for ServiceAccount subjects. Defaults
to "rbac.authorization.k8s.io" for User and Group subjects.
description: |-
APIGroup holds the API group of the referenced subject.
Defaults to "" for ServiceAccount subjects.
Defaults to "rbac.authorization.k8s.io" for User and Group subjects.
type: string
kind:
description: Kind of object being referenced. Values defined
by this API group are "User", "Group", and "ServiceAccount".
If the Authorizer does not recognized the kind value, the
Authorizer should report an error.
description: |-
Kind of object being referenced. Values defined by this API group are "User", "Group", and "ServiceAccount".
If the Authorizer does not recognized the kind value, the Authorizer should report an error.
type: string
name:
description: Name of the object being referenced.
type: string
namespace:
description: Namespace of the referenced object. If the object
kind is non-namespace, such as "User" or "Group", and this
value is not empty the Authorizer should report an error.
description: |-
Namespace of the referenced object. If the object kind is non-namespace, such as "User" or "Group", and this value is not empty
the Authorizer should report an error.
type: string
required:
- kind
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.10.0
creationTimestamp: null
controller-gen.kubebuilder.io/version: v0.14.0
name: consoleauthorisations.workloads.crd.gocardless.com
spec:
group: workloads.crd.gocardless.com
Expand All @@ -22,14 +21,19 @@ spec:
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
description: |-
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
description: |-
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
Expand All @@ -40,29 +44,28 @@ spec:
description: List of authorisations that have been given to the referenced
console.
items:
description: Subject contains a reference to the object or user
identities a role binding applies to. This can either hold a
direct API object reference, or a value for non-objects such as
user and group names.
description: |-
Subject contains a reference to the object or user identities a role binding applies to. This can either hold a direct API object reference,
or a value for non-objects such as user and group names.
properties:
apiGroup:
description: APIGroup holds the API group of the referenced
subject. Defaults to "" for ServiceAccount subjects. Defaults
to "rbac.authorization.k8s.io" for User and Group subjects.
description: |-
APIGroup holds the API group of the referenced subject.
Defaults to "" for ServiceAccount subjects.
Defaults to "rbac.authorization.k8s.io" for User and Group subjects.
type: string
kind:
description: Kind of object being referenced. Values defined
by this API group are "User", "Group", and "ServiceAccount".
If the Authorizer does not recognized the kind value, the
Authorizer should report an error.
description: |-
Kind of object being referenced. Values defined by this API group are "User", "Group", and "ServiceAccount".
If the Authorizer does not recognized the kind value, the Authorizer should report an error.
type: string
name:
description: Name of the object being referenced.
type: string
namespace:
description: Namespace of the referenced object. If the object
kind is non-namespace, such as "User" or "Group", and this
value is not empty the Authorizer should report an error.
description: |-
Namespace of the referenced object. If the object kind is non-namespace, such as "User" or "Group", and this value is not empty
the Authorizer should report an error.
type: string
required:
- kind
Expand All @@ -75,8 +78,10 @@ spec:
authorisation belongs to.
properties:
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?'
description: |-
Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
Expand Down
77 changes: 45 additions & 32 deletions config/base/crds/workloads.crd.gocardless.com_consoles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.10.0
creationTimestamp: null
controller-gen.kubebuilder.io/version: v0.14.0
name: consoles.workloads.crd.gocardless.com
spec:
group: workloads.crd.gocardless.com
Expand Down Expand Up @@ -35,68 +34,82 @@ spec:
by a specific user
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
description: |-
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
description: |-
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
spec:
description: ConsoleSpec defines the desired state of Console
properties:
command:
description: The command and arguments to execute. If not specified
the command from the template specification will be used.
description: |-
The command and arguments to execute. If not specified the command from
the template specification will be used.
items:
type: string
type: array
consoleTemplateRef:
description: LocalObjectReference contains enough information to let
you locate the referenced object inside the same namespace.
description: |-
LocalObjectReference contains enough information to let you locate the
referenced object inside the same namespace.
properties:
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?'
description: |-
Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
TODO: Add other useful fields. apiVersion, kind, uid?
type: string
type: object
x-kubernetes-map-type: atomic
noninteractive:
description: Disable TTY and STDIN on the underlying container. This
should usually be set to false so clients can attach interactively;
however, in certain situations, enabling the TTY on a container
in the console causes breakage - in Tekton steps, for example.
description: |-
Disable TTY and STDIN on the underlying container. This should usually
be set to false so clients can attach interactively; however, in certain
situations, enabling the TTY on a container in the console causes
breakage - in Tekton steps, for example.
type: boolean
reason:
type: string
timeoutSeconds:
description: Number of seconds that the console should run for. If
the process running within the console has not exited before this
timeout is reached, then the console will be terminated. If this
value exceeds the Maximum Timeout Seconds specified in the ConsoleTemplate
that this console refers to, then this timeout will be clamped to
that value. Maximum value of 1 week (as per ConsoleTemplate.Spec.MaxTimeoutSeconds).
description: |-
Number of seconds that the console should run for.
If the process running within the console has not exited before this
timeout is reached, then the console will be terminated.
If this value exceeds the Maximum Timeout Seconds specified in the
ConsoleTemplate that this console refers to, then this timeout will be
clamped to that value.
Maximum value of 1 week (as per ConsoleTemplate.Spec.MaxTimeoutSeconds).
maximum: 604800
minimum: 0
type: integer
ttlSecondsAfterFinished:
description: Specifies the TTL for this Console. The Console will
be eligible for garbage collection TTLSecondsAfterFinished seconds
after it enters the Stopped or Destroyed phase. This field is modeled
on the TTL mechanism in Kubernetes 1.12.
description: |-
Specifies the TTL for this Console. The Console will be eligible for
garbage collection TTLSecondsAfterFinished seconds after it enters the
Stopped or Destroyed phase. This field is modeled on the TTL mechanism in
Kubernetes 1.12.
format: int32
maximum: 604800
minimum: 0
type: integer
ttlSecondsBeforeRunning:
description: Specifies the TTL before running for this Console. The
Console will be eligible for garbage collection TTLSecondsBeforeRunning
seconds if it has not progressed to the Running phase. This field
is modeled on the TTL mechanism in Kubernetes 1.12.
description: |-
Specifies the TTL before running for this Console. The Console will be
eligible for garbage collection TTLSecondsBeforeRunning seconds if it has
not progressed to the Running phase. This field is modeled on the TTL
mechanism in Kubernetes 1.12.
format: int32
maximum: 86400
minimum: 0
Expand Down
Loading