Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
216 commits
Select commit Hold shift + click to select a range
a6938bf
Proposal for microversion support
lentzi90 May 26, 2023
48c952f
Ensure E2E cleanup
Apr 8, 2024
62dda69
Merge pull request #2005 from Nordix/mquhuy/ensure-cleanup-e2e-tests
k8s-ci-robot Apr 15, 2024
9b05e94
Add design doc for OpenStackServer
mdbooth Apr 16, 2024
4458fae
Remove v1alpha5
mdbooth Apr 17, 2024
803d45e
Fix v1alpha7 e2e tests
mdbooth Apr 17, 2024
922f03e
Merge pull request #2022 from shiftstack/removev1alpha5
k8s-ci-robot Apr 18, 2024
a5e83f2
Merge pull request #2028 from shiftstack/v1alpha7e2e
k8s-ci-robot Apr 18, 2024
2877d01
Bump CAPI to v1.7.0
mdbooth Apr 11, 2024
0e9c95c
Merge pull request #2012 from shiftstack/capi-v1.7
k8s-ci-robot Apr 18, 2024
e50c76f
docs: remove outdated warnings
jschoone Apr 19, 2024
b41b946
Merge pull request #2032 from jschoone/jschoone/remove_outdated_warnings
k8s-ci-robot Apr 20, 2024
27526d5
Refactoring: never assign unacceptable TLS versions
pierreprinetti Apr 25, 2024
2b6995e
Merge pull request #2037 from shiftstack/snyk_workaround
k8s-ci-robot Apr 25, 2024
6f9261d
Don't serve v1alpha6
mdbooth Apr 17, 2024
4c7e46d
Deprecate v1alpha7
mdbooth Apr 17, 2024
e1bfab3
Merge pull request #2026 from shiftstack/v1alpha7deprecated
k8s-ci-robot Apr 30, 2024
a0da592
Merge pull request #1565 from Nordix/lentzi90/microversion-proposal
k8s-ci-robot Apr 30, 2024
ac7b475
Fix webhook panic when adding managed security groups
mdbooth Apr 30, 2024
4e6aa37
Bump golangci-lint to v1.57.2 and fix resulting lint errors
mdbooth Apr 30, 2024
f233034
Merge pull request #2043 from shiftstack/issue2042
k8s-ci-robot Apr 30, 2024
50d8cf7
Fix golangci config deprecation warnings
mdbooth Apr 30, 2024
6e9c98b
golangci: bump go version to 1.22
mdbooth Apr 30, 2024
5473c76
Merge pull request #2024 from shiftstack/v1alpha6notserved
k8s-ci-robot Apr 30, 2024
edd8082
Merge pull request #2045 from shiftstack/lintupdate
k8s-ci-robot Apr 30, 2024
415d9fc
Bump Gophercloud to v1.11.0
pawcykca Apr 30, 2024
4f4a570
Merge pull request #2041 from pawcykca/bump-gophercloud
k8s-ci-robot May 1, 2024
ca0838b
Remove a duplication for setting default port settings
EmilienM May 1, 2024
2214514
Merge pull request #2046 from shiftstack/resolvefix
k8s-ci-robot May 2, 2024
74f2c5a
port: no dependency on OpenStackMachine
EmilienM May 1, 2024
8e12dd8
chore(docs): remove stale supported version info
cwrau May 3, 2024
21fa8b2
issue-1711: Dependency on deprecated github.com/golang/mock
MykolaRodin May 1, 2024
7da2fb1
Fix enabling of disabled bastion on upgrade to v1beta1
mdbooth May 3, 2024
78e4bdb
Merge pull request #2048 from MykolaRodin/m.rodin/issue-1711
k8s-ci-robot May 3, 2024
afc8e79
Merge pull request #2051 from cwrau/feat/remove-stale-docs
k8s-ci-robot May 3, 2024
7b0635f
Merge pull request #2052 from shiftstack/issue2050
k8s-ci-robot May 3, 2024
a806361
Fix empty version output in release builds
mdbooth May 3, 2024
568cee9
Fix panic executing manager without valid kube context
mdbooth May 3, 2024
65b360e
Merge pull request #2057 from shiftstack/issue2054
k8s-ci-robot May 6, 2024
349ec37
Merge pull request #2056 from shiftstack/issue2055
k8s-ci-robot May 6, 2024
641c896
Fix nil pointer issue while creating port
kashifest May 6, 2024
078a792
Merge pull request #2064 from Nordix/fix/port-nil-pointer
k8s-ci-robot May 7, 2024
131894f
lint: import v1alpha1 with alias
EmilienM May 7, 2024
853eaf0
Merge pull request #2066 from shiftstack/v1alpha1lint
k8s-ci-robot May 8, 2024
dd9424e
Merge pull request #2049 from shiftstack/func_sign_isol
k8s-ci-robot May 8, 2024
86902a5
Set FallbackToLogsOnError on CAPO manager
mdbooth May 8, 2024
64242f4
Merge pull request #2070 from shiftstack/issue2069
k8s-ci-robot May 8, 2024
89d7fe6
issue-1737: Add unit tests for openstackmachine_webhook
MykolaRodin May 8, 2024
1e0b60f
Merge pull request #2068 from MykolaRodin/main
k8s-ci-robot May 10, 2024
0d658a0
Fix loadbalancer timeout panic
simonklb May 13, 2024
3489eef
Merge pull request #2074 from simonklb/lb-timeout-panic
k8s-ci-robot May 14, 2024
392f092
allNodesSecurityGroupRules: relax remote fields
EmilienM May 14, 2024
3555248
Bump CAPI to v1.7.2
kashifest May 14, 2024
701ad7c
Merge pull request #2077 from shiftstack/issue_2075
k8s-ci-robot May 14, 2024
1df8290
Remove k8s.io/kubernetes dependancy
kashifest May 14, 2024
af8db5c
Merge pull request #2078 from Nordix/kashif/remove-k8sio-kubernetes-d…
k8s-ci-robot May 15, 2024
75c5bd2
Drop dulek from reviewers
dulek May 15, 2024
3d4a249
Merge pull request #2082 from dulek/drop-dulek-reviewers
k8s-ci-robot May 15, 2024
6d1b899
Merge pull request #2079 from Nordix/bump/capi-v1.7.2
k8s-ci-robot May 15, 2024
c633c55
Handle errors returned by GetInstanceStatusByName in machine controller
zioc May 16, 2024
046d6b7
Merge pull request #2086 from zioc/fix-get-instance
k8s-ci-robot May 16, 2024
c8facb4
Add ability to defined API Server Load Balancer flavor name
pawcykca May 5, 2024
2e09b16
Add junit formatting for unit tests
mdbooth May 20, 2024
b289bef
Merge pull request #2058 from pawcykca/api-server-lb-flavor
k8s-ci-robot May 20, 2024
067d984
Merge pull request #2095 from shiftstack/gotestsum
k8s-ci-robot May 20, 2024
e5a460e
Add script for API diff check
EmilienM May 22, 2024
dabce29
Fix sub-ports not deleted with trunks
May 15, 2024
7a19fb6
Merge pull request #2081 from Nordix/mquhuy/ensure-trunkport-deletion
k8s-ci-robot May 23, 2024
97ec784
Docs: Fix rootVolume new fields name
Krast76 May 25, 2024
fb3404e
templates: fix clusterclass-dev
EmilienM May 27, 2024
1e8e7f3
templates/clusterclass-dev: add external network with safe default
EmilienM May 27, 2024
c50febc
E2E: Bump CAPI, cert-manager, coredns and etcd
lentzi90 May 28, 2024
c43c3e4
Merge pull request #2100 from Krast76/fix-docs-configuration-rootvolume
k8s-ci-robot May 28, 2024
3d77e31
Merge pull request #2101 from shiftstack/fixClusterClass
k8s-ci-robot May 28, 2024
100693b
Merge pull request #2104 from Nordix/lentzi90/bump-e2e-versions
k8s-ci-robot May 29, 2024
94b2c1f
E2E: Bump Kubernetes to v1.29.5
lentzi90 May 28, 2024
fa97253
Merge pull request #2103 from Nordix/lentzi90/bump-k8s-v1.29.5
k8s-ci-robot May 29, 2024
54d1c2a
E2E: Bump Kubernetes to v1.30.1
lentzi90 May 28, 2024
6543565
Merge pull request #2108 from Nordix/lentzi90/bump-k8s-v1.30.1
k8s-ci-robot May 30, 2024
77bd3e6
Merge pull request #2096 from shiftstack/issue_1860
k8s-ci-robot Jun 3, 2024
6f9dceb
More than one instance found is now an error
EmilienM Jun 3, 2024
a63ce56
Merge pull request #2109 from shiftstack/issue_2088
k8s-ci-robot Jun 4, 2024
e8a0e06
instance: re-add error event if server creationg returned an error
EmilienM Jun 4, 2024
a2acc63
Merge pull request #2112 from shiftstack/issue_2111
k8s-ci-robot Jun 5, 2024
489961a
Remove bastion security group when disabling the bastion
EmilienM Jun 5, 2024
0b793c1
Merge pull request #2114 from shiftstack/issue_2113
k8s-ci-robot Jun 7, 2024
9643251
Add fatal switch to handleUpdateOSCError
qeqar May 24, 2024
eff0115
Add EmilienM as a maintainer
mdbooth Jun 7, 2024
984a48e
Merge pull request #2115 from mdbooth/emilien
k8s-ci-robot Jun 7, 2024
35efc1b
Merge pull request #2099 from qeqar/use-transition-error-if-cluster-w…
k8s-ci-robot Jun 7, 2024
dfeffe0
Fix dnsNameservers array in the v1beta1 changes docs
chess-knight Jun 10, 2024
1c78326
Merge pull request #2120 from chess-knight/fix/v1beta1_dnsNameservers…
k8s-ci-robot Jun 10, 2024
4e79a80
Document that OVSHWOffload is no longer required
mdbooth Jun 12, 2024
5331a5a
Merge pull request #2123 from shiftstack/issue1946
k8s-ci-robot Jun 12, 2024
516d5dd
📖 Update agenda links w/ shared drive
EmilienM Jun 12, 2024
b55a841
Merge pull request #2125 from kubernetes-sigs/meetings
k8s-ci-robot Jun 14, 2024
c5ed533
IdentityRefProvider: DRY obtaining OpenStackIdentityRef
mdbooth Jun 24, 2024
6a5a926
Merge pull request #2132 from shiftstack/identityrefprovider
k8s-ci-robot Jun 24, 2024
a4d19da
Upgrade Gophercloud to v2
pierreprinetti May 29, 2024
3870213
Fix TestService_ReconcileInstance with gophercloud v2
mdbooth May 30, 2024
c197a1f
Merge pull request #2107 from shiftstack/g2
k8s-ci-robot Jul 1, 2024
4d9cc63
cloud: Better error message on image lookup failure
stephenfin Jul 2, 2024
ffe572e
Merge pull request #2135 from shiftstack/error-messages
k8s-ci-robot Jul 3, 2024
0343b92
Fix down-conversion of IdentityRef
mdbooth Jul 4, 2024
20e8bac
Merge pull request #2139 from shiftstack/issue2136-main
k8s-ci-robot Jul 4, 2024
543778e
Ensure tools deps aren't older than CAPO deps
mdbooth Jul 12, 2024
afe4a3a
Merge pull request #2143 from shiftstack/issue2142
k8s-ci-robot Jul 15, 2024
725e9a6
Update the year on the generated boilerplate
mdbooth Jul 11, 2024
c6798e0
Remove genclient:Namespaced
mdbooth Jun 24, 2024
0c95f00
Rename GroupVersion to SchemeGroupVersion
mdbooth Jun 27, 2024
1c297ef
Add generation of applyconfiguration
mdbooth Jun 27, 2024
69089e0
generate applyconfiguration
mdbooth Jun 27, 2024
6fb0b89
e2e: Fix deletion of test security group
mdbooth Jul 16, 2024
67cd1c8
Merge pull request #2133 from shiftstack/client-gen
k8s-ci-robot Jul 17, 2024
5aaceac
Merge pull request #2145 from shiftstack/e2e_securitygroup
k8s-ci-robot Jul 17, 2024
60ce72d
e2e: Only dump resources on node1
mdbooth Jul 17, 2024
82d7acf
Merge pull request #2147 from shiftstack/dumpnode1only
k8s-ci-robot Jul 18, 2024
fb3779c
First iteration of `OpenStackServer` CRD + controller
EmilienM May 7, 2024
a5cfcd7
Merge pull request #2067 from shiftstack/OpenStackServer
k8s-ci-robot Jul 18, 2024
16d4e87
Merge pull request #2021 from shiftstack/openstackserver-controller
k8s-ci-robot Jul 25, 2024
567dbb3
E2E: Add subports to trunked port to test subports deletion
Jul 11, 2024
5d92223
Merge pull request #2141 from Nordix/mquhuy/ensure-trunkport-deletion…
k8s-ci-robot Aug 6, 2024
be7e940
netlify: Fix go version
mdbooth Aug 8, 2024
ff5788e
Merge pull request #2151 from shiftstack/netlify
k8s-ci-robot Aug 8, 2024
d91d9f1
Copy InstanceID from OpenStackServer to OpenStackMachine
tsuzu Aug 8, 2024
9f616fc
test: bump Flatcar Stable version
tormath1 Aug 8, 2024
1e2d65b
Merge pull request #2152 from tormath1/tormath1/flatcar
k8s-ci-robot Aug 8, 2024
3624479
netlify: Bump Go version to 1.22.6
mdbooth Aug 8, 2024
3090a6c
Add ORC with image controller
mdbooth Aug 8, 2024
6701f61
Merge pull request #2153 from tsuzu/main
k8s-ci-robot Aug 12, 2024
90da86d
Merge pull request #2130 from shiftstack/imagecontroller
k8s-ci-robot Aug 13, 2024
4a7744a
port: don't add any SGs when port security is disabled
EmilienM Aug 15, 2024
8973a4d
Merge pull request #2159 from shiftstack/issue_1341
k8s-ci-robot Aug 16, 2024
ce578b0
Dependency update
pierreprinetti Aug 19, 2024
16be023
Merge pull request #2160 from shiftstack/bump
k8s-ci-robot Aug 19, 2024
e5380e4
CI: update OpenStack to 2024.1 (Caracal)
EmilienM Aug 19, 2024
dfb7912
Merge pull request #2162 from shiftstack/devstack
k8s-ci-robot Aug 20, 2024
2899df6
openstackserver: create before delete if adoption fields are empty
EmilienM Aug 26, 2024
4ea1016
cluster: don't wait for bastion to mark cluster ready
EmilienM Aug 27, 2024
ab6cca9
Merge pull request #2167 from shiftstack/moveServer
k8s-ci-robot Aug 29, 2024
60393dd
docs/configuration: fix security groups example
tormath1 Aug 29, 2024
a74f5ff
Merge pull request #2168 from tormath1/tormath1/sg
k8s-ci-robot Aug 29, 2024
aa65d0f
Bump CAPI to v1.8.1
EmilienM Aug 14, 2024
010ddad
Exclude tiltbuild from boilerplate.py
EmilienM Aug 14, 2024
44604b1
manager: remove TLS options
EmilienM Aug 16, 2024
b3b320e
Bump orc deps
EmilienM Aug 20, 2024
a79cce9
clusterctl: add `InitWithKubernetesVersion` to `ClusterctlUpgradeSpec…
EmilienM Sep 3, 2024
a84b1b4
Merge pull request #2154 from shiftstack/new-capi
k8s-ci-robot Sep 4, 2024
d6c93e7
Bump golangci-lint to v1.61.0
mdbooth Sep 17, 2024
978216a
Merge pull request #2173 from shiftstack/linter
k8s-ci-robot Sep 17, 2024
3463e0e
Allow running CAPO and ORC tests separately
mdbooth Sep 17, 2024
033532e
Convert APIServerPort to uint16
mdbooth Sep 17, 2024
f660352
Merge pull request #2175 from shiftstack/capo-tests
k8s-ci-robot Sep 18, 2024
bb6cf4d
feat: support server group and scheduler hint additional properties
okozachenko1203 Aug 20, 2024
6560f88
Merge pull request #2163 from okozachenko1203/feat/support-server-gro…
k8s-ci-robot Sep 23, 2024
ba3a083
Ensure SSA patch can't accidentally create a new object
mdbooth Sep 25, 2024
574a702
Image controller: don't attempt upload when adopting
mdbooth Sep 26, 2024
1e39a38
Merge pull request #2180 from shiftstack/image-adopt
k8s-ci-robot Sep 26, 2024
c02afe0
Merge pull request #2178 from shiftstack/image-finalizer
k8s-ci-robot Sep 27, 2024
8522721
Merge pull request #2174 from shiftstack/apiserverport
k8s-ci-robot Sep 27, 2024
01ccaed
Reduce logs on security groups
EmilienM Oct 8, 2024
a4fed99
Stop watching OpenStackCluster
EmilienM Oct 8, 2024
186c11d
Reduce reconciles and watch for OpenStackServer events
EmilienM Sep 27, 2024
6f5456c
Bump controller-tools to v0.16.4
mdbooth Oct 10, 2024
94ba718
Merge pull request #2189 from shiftstack/controller-tools
k8s-ci-robot Oct 10, 2024
d8edc23
Fix fetching 'inherited' credentials in OpenStackMachine
mdbooth Oct 11, 2024
e8bddb5
Merge pull request #2191 from shiftstack/issue_2190
k8s-ci-robot Oct 15, 2024
32b19de
Support Flavor IDs
spjmurray Jul 18, 2024
91b7ccf
Merge pull request #2182 from shiftstack/watch
k8s-ci-robot Oct 15, 2024
ea7bf33
Expose NodePorts on cluster network instead of 0.0.0.0/0
mikaelgron Oct 16, 2024
2e82249
image: Replace controllerOptions with managementPolicy
mdbooth Oct 11, 2024
d0d6434
Use field indexer instead of labels for image dependencies
mdbooth Oct 11, 2024
533f393
image: Change SourceURL to Download
mdbooth Oct 14, 2024
47063b6
ORC: Consistent capitalisation of Glance in godocs
mdbooth Oct 16, 2024
ddc26ee
Merge pull request #2128 from elastx/nodeport-block-internet
k8s-ci-robot Oct 16, 2024
19ddf0a
Merge pull request #2148 from spjmurray/flavor_ids
k8s-ci-robot Oct 16, 2024
218212a
Merge pull request #2192 from shiftstack/image-api
k8s-ci-robot Oct 16, 2024
7ef114b
Wait and requeue if LB is in PENDING_DELETE
EmilienM Jun 11, 2024
28cccb9
Merge pull request #2122 from shiftstack/lb
k8s-ci-robot Oct 16, 2024
05c5cad
feat(manager): :sparkles: add region to openStackMachineSpec.Provider…
MatthieuFin Oct 15, 2024
c66c21d
image: Fix various immutability validations
mdbooth Oct 17, 2024
6543a62
Merge pull request #2193 from MatthieuFin/main
k8s-ci-robot Oct 17, 2024
b4c928a
Merge pull request #2197 from shiftstack/image-api
k8s-ci-robot Oct 17, 2024
fc4f58c
Bump version artifacts for release-0.11
EmilienM Oct 17, 2024
eefb044
Merge pull request #2198 from kubernetes-sigs/prepare-0.11
k8s-ci-robot Oct 17, 2024
66520b0
Fix verification of generated files
mdbooth Oct 18, 2024
ab6ed71
make generate
mdbooth Oct 18, 2024
d5cd168
Merge pull request #2201 from k8s-infra-cherrypick-robot/cherry-pick-…
k8s-ci-robot Oct 18, 2024
101b294
Fix conversion of v1alpha6 PortOpts
mdbooth Oct 28, 2024
f5de071
Merge pull request #2208 from k8s-infra-cherrypick-robot/cherry-pick-…
k8s-ci-robot Oct 28, 2024
8f184db
CARRY: Downstream OWNERS
pierreprinetti Apr 4, 2022
0444568
CARRY: Add Snyk security scan config
racheljpg Dec 18, 2023
18e17ca
CARRY: Add OCP CI config
mdbooth Oct 2, 2023
04e1e79
CARRY: Mark CAPO as second level operator
mdbooth Oct 5, 2023
6648bd2
CARRY: Don't ignore vendor directories
mdbooth Oct 3, 2023
0b06ca8
CARRY: Add verify-vendoring make target
mdbooth Oct 4, 2023
0ff7902
Add cluster-capi-operator integration
mdbooth Nov 22, 2023
1f5255c
openshift: Add make verify and test
mdbooth Nov 28, 2023
31fd003
openshift: Fix label of cluster-capi infrastructure CM
mdbooth Nov 30, 2023
91aca32
openshift: Add (stub) make e2e
stephenfin Dec 1, 2023
b26deef
vendoring: add cluster-capi-operator && go mod vendor
EmilienM Nov 23, 2023
935f870
Add cluster-capi-operator-specific e2e tests
EmilienM Nov 23, 2023
7fe9dc8
openshift/manifests: Drop single-node-developer profile
wking Jan 3, 2024
1416f63
openshift/manifests: CloudCredential capability for CredentialsRequest
wking Jan 3, 2024
6840528
Updating openstack-cluster-api-controllers-container image to be cons…
Mar 21, 2024
89be922
openshift: Set FallbackToLogsOnError on infra-cluster controller
mdbooth May 8, 2024
ba23b44
Remove dulek from shiftstack-team
stephenfin May 15, 2024
352136d
CARRY: Updating openstack-cluster-api-controllers-container
EmilienM Jun 20, 2024
48dee38
Updating openstack-cluster-api-controllers-container image to be cons…
Sep 4, 2024
782909b
CARRY: openshift: bump CAPO, gophercloud, k8s and controller-runtime
EmilienM Oct 29, 2024
29d4fbe
CARRY: hack/tools: `go mod tidy && go mod vendor`
EmilienM Oct 29, 2024
c0fec2c
CARRY: orc: `go mod tidy && go mod vendor`
EmilienM Oct 29, 2024
002681a
CARRY: `go mod tidy && go mod vendor`
EmilienM Oct 29, 2024
2c12d93
Merge branch 'main' into sync-main
EmilienM Oct 29, 2024
8ff816d
CARRY: openshift: `go mod tidy && go mod vendor`
EmilienM Oct 29, 2024
59cff39
CARRY: openshift: CAPO v0.11.0 (v1beta1) adjustments
EmilienM Oct 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ kubernetes.tar.gz
# generated files in any directory
# TODO(thockin): uncomment this when we stop committing the generated files.
#zz_generated.*
zz_generated.openapi.go
#zz_generated.openapi.go

# make-related metadata
/.make/
Expand Down
25 changes: 14 additions & 11 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,12 @@ linters:
- asciicheck
- bidichk
- bodyclose
- copyloopvar
- cyclop
# - depguard
- dogsled
- dupword
- durationcheck
- errcheck
- exportloopref
- forbidigo
- gci
- goconst
Expand Down Expand Up @@ -56,7 +55,11 @@ linters-settings:
# TODO(sbuerin) fix remaining findings and set to 20 afterwards
max-complexity: 30
gci:
local-prefixes: sigs.k8s.io/cluster-api-provider-openstack
sections:
- standard
- default
- prefix(github.com/k-orc/openstack-resource-controller)
- prefix(sigs.k8s.io/cluster-api-provider-openstack)
gocritic:
enabled-tags:
- diagnostic
Expand Down Expand Up @@ -96,8 +99,8 @@ linters-settings:
- pkg: sigs.k8s.io/controller-runtime
alias: ctrl
# CAPO
- pkg: sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha5
alias: infrav1alpha5
- pkg: sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha1
alias: infrav1alpha1
- pkg: sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha6
alias: infrav1alpha6
- pkg: sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha7
Expand Down Expand Up @@ -127,14 +130,13 @@ linters-settings:
alias: controlplanev1alpha4
- pkg: sigs.k8s.io/cluster-api/controlplane/kubeadm/api/v1beta1
alias: controlplanev1
# ORC
- pkg: github.com/k-orc/openstack-resource-controller/api/v1alpha1
alias: orcv1alpha1

nolintlint:
# https://github.com/golangci/golangci-lint/issues/3228
allow-unused: true
staticcheck:
go: "1.20"
stylecheck:
go: "1.20"
nestif:
# minimal complexity of if statements to report, 5 by default
# TODO(sbuerin) fix remaining findings and set to 5 after:
Expand Down Expand Up @@ -176,12 +178,13 @@ issues:
- stylecheck
text: "ST1003: should not use underscores in Go names;"
path: pkg/utils/conversioncommon/.*.go
exclude-files:
- "zz_generated.*\\.go$"

run:
go: "1.22"
timeout: 10m
build-tags:
- e2e

skip-files:
- "zz_generated.*\\.go$"
allow-parallel-runners: true
3 changes: 3 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,11 @@ ARG goproxy=https://proxy.golang.org
ENV GOPROXY=$goproxy

# Copy the Go Modules manifests
RUN mkdir orc
COPY go.mod go.mod
COPY go.sum go.sum
COPY orc/go.mod orc/go.mod
COPY orc/go.sum orc/go.sum

# Cache deps before building and copying source so that we don't need to re-download as much
# and so that source changes don't invalidate our downloaded layer
Expand Down
69 changes: 54 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -41,18 +41,25 @@ KUBETEST_CONF_PATH ?= $(abspath $(E2E_DATA_DIR)/kubetest/conformance.yaml)
KUBETEST_FAST_CONF_PATH ?= $(abspath $(E2E_DATA_DIR)/kubetest/conformance-fast.yaml)
GO_INSTALL := ./scripts/go_install.sh

# go-apidiff
GO_APIDIFF_VER := v0.8.2
GO_APIDIFF_BIN := go-apidiff
GO_APIDIFF_PKG := github.com/joelanford/go-apidiff

# Binaries.
CONTROLLER_GEN := $(TOOLS_BIN_DIR)/controller-gen
CONVERSION_GEN := $(TOOLS_BIN_DIR)/conversion-gen
ENVSUBST := $(TOOLS_BIN_DIR)/envsubst
GINKGO := $(TOOLS_BIN_DIR)/ginkgo
GOJQ := $(TOOLS_BIN_DIR)/gojq
GOLANGCI_LINT := $(TOOLS_BIN_DIR)/golangci-lint
GOTESTSUM := $(TOOLS_BIN_DIR)/gotestsum
KUSTOMIZE := $(TOOLS_BIN_DIR)/kustomize
MOCKGEN := $(TOOLS_BIN_DIR)/mockgen
RELEASE_NOTES := $(TOOLS_BIN_DIR)/release-notes
SETUP_ENVTEST := $(TOOLS_BIN_DIR)/setup-envtest
GEN_CRD_API_REFERENCE_DOCS := $(TOOLS_BIN_DIR)/gen-crd-api-reference-docs
GO_APIDIFF := $(TOOLS_BIN_DIR)/$(GO_APIDIFF_BIN)-$(GO_APIDIFF_VER)

# Kubebuilder
export KUBEBUILDER_ENVTEST_KUBERNETES_VERSION ?= 1.28.0
Expand Down Expand Up @@ -140,8 +147,16 @@ kubebuilder_assets: $(SETUP_ENVTEST)

.PHONY: test
TEST_PATHS ?= ./...
test: kubebuilder_assets
KUBEBUILDER_ASSETS="$(KUBEBUILDER_ASSETS)" go test -v $(TEST_PATHS) $(TEST_ARGS)
test: test-capo test-orc

.PHONY: test-capo
test-capo: $(ARTIFACTS) $(GOTESTSUM) kubebuilder_assets
KUBEBUILDER_ASSETS="$(KUBEBUILDER_ASSETS)" $(GOTESTSUM) --junitfile $(ARTIFACTS)/junit.test.xml --junitfile-hide-empty-pkg --jsonfile $(ARTIFACTS)/test-output.log -- \
-v $(TEST_PATHS) $(TEST_ARGS)

.PHONY: test-orc
test-orc:
$(MAKE) -C $(REPO_ROOT)/orc test

E2E_TEMPLATES_DIR=test/e2e/data/infrastructure-openstack
E2E_KUSTOMIZE_DIR=test/e2e/data/kustomize
Expand All @@ -151,7 +166,6 @@ E2E_NO_ARTIFACT_TEMPLATES_DIR=test/e2e/data/infrastructure-openstack-no-artifact
.PHONY: e2e-templates
e2e-templates: ## Generate cluster templates for e2e tests
e2e-templates: $(addprefix $(E2E_NO_ARTIFACT_TEMPLATES_DIR)/, \
cluster-template-v1alpha6.yaml \
cluster-template-v1alpha7.yaml \
cluster-template-md-remediation.yaml \
cluster-template-kcp-remediation.yaml \
Expand Down Expand Up @@ -209,6 +223,11 @@ test-conformance: $(GINKGO) e2e-prerequisites ## Run clusterctl based conformanc
test-conformance-fast: ## Run clusterctl based conformance test on workload cluster (requires Docker) using a subset of the conformance suite in parallel.
$(MAKE) test-conformance CONFORMANCE_E2E_ARGS="-kubetest.config-file=$(KUBETEST_FAST_CONF_PATH) -kubetest.ginkgo-nodes=5 $(E2E_ARGS)"

APIDIFF_OLD_COMMIT ?= $(shell git rev-parse origin/main)

.PHONY: apidiff
apidiff: $(GO_APIDIFF) ## Check for API differences.
$(GO_APIDIFF) $(APIDIFF_OLD_COMMIT)

## --------------------------------------
##@ Binaries
Expand All @@ -225,17 +244,25 @@ managers:
manager-openstack-infrastructure: ## Build manager binary.
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "${LDFLAGS} -extldflags '-static'" -o $(BIN_DIR)/manager .

.PHONY: $(GO_APIDIFF_BIN)
$(GO_APIDIFF_BIN): $(GO_APIDIFF)

$(GO_APIDIFF): # Build go-apidiff.
GOBIN=$(abspath $(TOOLS_BIN_DIR)) $(GO_INSTALL) $(GO_APIDIFF_PKG) $(GO_APIDIFF_BIN) $(GO_APIDIFF_VER)

## --------------------------------------
##@ Linting
## --------------------------------------

.PHONY: lint
lint: $(GOLANGCI_LINT) ## Lint codebase
$(GOLANGCI_LINT) run -v --fast=false
$(MAKE) -C $(REPO_ROOT)/orc lint

.PHONY: lint-update
lint-update: $(GOLANGCI_LINT) ## Lint codebase
$(GOLANGCI_LINT) run -v --fast=false --fix
$(MAKE) -C $(REPO_ROOT)/orc lint-fix

lint-fast: $(GOLANGCI_LINT) ## Run only faster linters to detect possible issues
$(GOLANGCI_LINT) run -v --fast=true
Expand All @@ -246,11 +273,13 @@ lint-fast: $(GOLANGCI_LINT) ## Run only faster linters to detect possible issues

.PHONY: modules
modules: ## Runs go mod to ensure proper vendoring.
$(MAKE) -C $(REPO_ROOT)/orc modules
go mod tidy
cd $(TOOLS_DIR); go mod tidy
cd $(REPO_ROOT)/hack/codegen; go work sync; go mod tidy

.PHONY: generate
generate: templates generate-controller-gen generate-conversion-gen generate-go generate-manifests generate-api-docs ## Generate all generated code
generate: templates generate-orc generate-controller-gen generate-codegen generate-conversion-gen generate-go generate-manifests generate-api-docs ## Generate all generated code

.PHONY: generate-go
generate-go: $(MOCKGEN)
Expand All @@ -262,18 +291,22 @@ generate-controller-gen: $(CONTROLLER_GEN)
paths=./api/... \
object:headerFile=./hack/boilerplate/boilerplate.generatego.txt

.PHONY: generate-codegen
generate-codegen: generate-controller-gen
./hack/update-codegen.sh

.PHONY: generate-orc
generate-orc:
$(MAKE) -C $(REPO_ROOT)/orc generate

.PHONY: generate-conversion-gen
capo_module := sigs.k8s.io/cluster-api-provider-openstack
generate-conversion-gen: $(CONVERSION_GEN)
$(CONVERSION_GEN) \
--input-dirs=$(capo_module)/api/v1alpha5 \
--input-dirs=$(capo_module)/api/v1alpha6 \
--input-dirs=$(capo_module)/api/v1alpha7 \
--extra-dirs=$(capo_module)/pkg/utils/optional \
--extra-dirs=$(capo_module)/pkg/utils/conversioncommon \
--output-file-base=zz_generated.conversion \
--trim-path-prefix=$(capo_module)/ \
--go-header-file=./hack/boilerplate/boilerplate.generatego.txt
--extra-peer-dirs=./pkg/utils/optional \
--extra-peer-dirs=./pkg/utils/conversioncommon \
--output-file=zz_generated.conversion.go \
--go-header-file=./hack/boilerplate/boilerplate.generatego.txt \
./api/v1alpha6 ./api/v1alpha7

.PHONY: generate-manifests
generate-manifests: $(CONTROLLER_GEN) ## Generate manifests e.g. CRD, RBAC etc.
Expand All @@ -288,6 +321,7 @@ generate-manifests: $(CONTROLLER_GEN) ## Generate manifests e.g. CRD, RBAC etc.
$(CONTROLLER_GEN) \
paths=./ \
paths=./controllers/... \
paths=./internal/controllers/... \
output:rbac:dir=$(RBAC_ROOT) \
rbac:roleName=manager-role

Expand Down Expand Up @@ -506,25 +540,30 @@ clean-release: ## Remove the release folder
rm -rf $(RELEASE_DIR)

.PHONY: verify
verify: verify-boilerplate verify-modules verify-gen
verify: verify-boilerplate verify-modules verify-gen verify-orc

.PHONY: verify-boilerplate
verify-boilerplate:
./hack/verify-boilerplate.sh

.PHONY: verify-modules
verify-modules: modules
@if !(git diff --quiet HEAD -- go.sum go.mod hack/tools/go.mod hack/tools/go.sum); then \
@if !(git diff --quiet HEAD -- go.* hack/tools/go.* hack/codegen/go.*); then \
git diff; \
echo "go module files are out of date"; exit 1; \
fi

.PHONY: verify-gen
verify-gen: generate
@if !(git diff --quiet HEAD); then \
git diff; \
echo "generated files are out of date, run make generate"; exit 1; \
fi

.PHONY: verify-orc
verify-orc:
$(MAKE) -C $(REPO_ROOT)/orc verify-generated

.PHONY: vendor verify-vendoring
vendor:
go mod vendor
Expand Down
22 changes: 7 additions & 15 deletions PROJECT
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,6 @@
domain: cluster.x-k8s.io
repo: sigs.k8s.io/cluster-api-provider-openstack
resources:
- group: infrastructure
kind: OpenStackCluster
version: v1alpha5
- group: infrastructure
kind: OpenStackMachine
version: v1alpha5
- group: infrastructure
kind: OpenStackMachineTemplate
version: v1alpha5
- group: infrastructure
kind: OpenStackClusterTemplate
version: v1alpha5
- group: infrastructure
kind: OpenStackCluster
version: v1alpha6
Expand All @@ -42,18 +30,22 @@ resources:
kind: OpenStackClusterTemplate
version: v1alpha7
- group: infrastructure
version: v1beta1
kind: OpenStackCluster
- group: infrastructure
version: v1beta1
kind: OpenStackMachine
- group: infrastructure
kind: OpenStackMachine
version: v1beta1
- group: infrastructure
kind: OpenStackMachineTemplate
version: v1beta1
- group: infrastructure
kind: OpenStackClusterTemplate
version: v1beta1
- group: infrastructure
kind: OpenStackFloatingIPPool
version: v1alpha1
- group: infrastructure
kind: OpenStackServer
version: v1alpha1
- group: infrastructure
version: "2"
40 changes: 9 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,44 +35,16 @@ previous cluster managers such as [kops][kops] and

------

## Compatibility with Cluster API and Kubernetes Versions
## Compatibility with Cluster API

This provider's versions are compatible with the following versions of Cluster API:

| | v1beta1 (v1.x) |
|------------------------------------| -------------- |
| OpenStack Provider v1alpha5 (v0.6) | ✓ |
| OpenStack Provider v1alpha6 (v0.7) | ✓ |
| OpenStack Provider v1alpha7 (v0.9) | ✓ |
| OpenStack Provider v1beta1 | ✓ |


This provider's versions are able to install and manage the following versions of Kubernetes:

| | v1.25 | v1.26 | v1.27 | v1.28 |
|------------------------------------| ----- | ----- | ----- | ----- |
| OpenStack Provider v1alpha5 (v0.6) | ✓ | + | + | + |
| OpenStack Provider v1alpha6 (v0.7) | ✓ | ✓ | ✓ | + |
| OpenStack Provider v1alpha7 (v0.9) | + | ✓ | ✓ | ★ |
| OpenStack Provider v1beta1 | + | ✓ | ✓ | ★ |

This provider's versions are able to install Kubernetes to the following versions of OpenStack:

| | Queens | Rocky | Stein | Train | Ussuri | Victoria | Wallaby | Xena | Yoga | Bobcat |
|------------------------------------| ------ | ----- | ----- | ----- | ------ | -------- | ------- | ---- | ---- | ------ |
| OpenStack Provider v1alpha5 (v0.6) | + | + | + | + | + | ✓ | ✓ | ✓ | ✓ | ★ |
| OpenStack Provider v1alpha6 (v0.7) | + | + | + | + | + | ✓ | ✓ | ✓ | ✓ | ★ |
| OpenStack Provider v1alpha7 (v0.9) | | + | + | + | + | ✓ | ✓ | ✓ | ✓ | ★ |
| OpenStack Provider v1beta1 | | + | + | + | + | ✓ | ✓ | ✓ | ✓ | ★ |

Test status:

- `★` currently testing
- `✓` previously tested
- `+` should work, but we weren't able to test it

Older versions may also work but we have not verified.

Each version of Cluster API for OpenStack will attempt to support two Kubernetes versions.

**NOTE:** As the versioning for this project is tied to the versioning of Cluster API, future modifications to this
Expand Down Expand Up @@ -124,7 +96,11 @@ involved:
- via the [SIG-Cluster-Lifecycle Mailing List](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-lifecycle).
- during our Office Hours
- bi-weekly on Wednesdays @ 14:00 UTC on Zoom (link in meeting notes)
- Previous meetings: [ [notes][office-hours-notes] | [recordings][office-hours-recordings] ]
- Previous meetings:
- [notes this year][office-hours-notes]
- [notes in 2023][office-hours-notes-2023]
- [notes in 2022][office-hours-notes-2022]
- [recordings][office-hours-recordings]

In the interest of getting more new people involved we try to tag issues with
[`good first issue`][good_first_issue].
Expand Down Expand Up @@ -180,7 +156,9 @@ We also use the issue tracker to track features. If you have an idea for a featu
[kops]: https://github.com/kubernetes/kops
[kubicorn]: http://kubicorn.io/
[slack]: https://kubernetes.slack.com/messages/cluster-api-openstack
[office-hours-notes]: https://docs.google.com/document/d/1hzi6nr04mhQYBKrwL2NDTNPvgI4RgO9a-gqmk31kXMA/edit
[office-hours-notes]: https://cluster-api-openstack.sigs.k8s.io/agenda
[office-hours-notes-2023]: https://cluster-api-openstack.sigs.k8s.io/agenda/2023.html
[office-hours-notes-2022]: https://cluster-api-openstack.sigs.k8s.io/agenda/2022.html
[office-hours-recordings]: https://www.youtube.com/playlist?list=PL69nYSiGNLP29D0nYgAGWt1ZFqS9Z7lw4
[good_first_issue]: https://github.com/kubernetes-sigs/cluster-api-provider-openstack/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22
[prow]: https://go.k8s.io/bot-commands
Expand Down
Loading