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

Merge https://github.com/IBM-Cloud/cloud-provider-ibm:release-1.32 (f326c83) into master #76

Open
wants to merge 41 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
331db7b
Automated repo sync 20241008
iksrochpub Oct 8, 2024
28908d5
Automated repo sync 20241009
iksrochpub Oct 9, 2024
0992d91
Automated repo sync 20241010
iksrochpub Oct 10, 2024
78c4de2
Automated repo sync 20241018
iksrochpub Oct 18, 2024
cd1c1d4
Automated repo sync 20241019
iksrochpub Oct 19, 2024
3424f80
Automated repo sync 20241021
iksrochpub Oct 21, 2024
89f8098
Automated repo sync 20241022
iksrochpub Oct 22, 2024
568c208
Automated repo sync 20241023
iksrochpub Oct 23, 2024
7bc2ca7
Automated repo sync 20241025
iksrochpub Oct 25, 2024
32c4c27
Automated repo sync 20241029
iksrochpub Oct 29, 2024
76aff4a
Automated repo sync 20241101
iksrochpub Nov 1, 2024
9eab826
Automated repo sync 20241105
iksrochpub Nov 5, 2024
9ca5f98
Automated repo sync 20241107
iksrochpub Nov 7, 2024
f7106a0
Automated repo sync 20241108
iksrochpub Nov 8, 2024
d356352
Automated repo sync 20241114
iksrochpub Nov 14, 2024
aa4649f
Automated repo sync 20241115
iksrochpub Nov 15, 2024
6dfaafc
Automated repo sync 20241121
iksrochpub Nov 21, 2024
9e6c0f1
Automated repo sync 20241122
iksrochpub Nov 22, 2024
c5a45c3
Automated repo sync 20241125
iksrochpub Nov 25, 2024
a445eda
Automated repo sync 20241128
iksrochpub Nov 28, 2024
a765100
Automated repo sync 20241129
iksrochpub Nov 29, 2024
4d4dda5
Automated repo sync 20241130
iksrochpub Nov 30, 2024
e5e3bf9
Automated repo sync 20241203
iksrochpub Dec 3, 2024
7689583
Automated repo sync 20241207
iksrochpub Dec 7, 2024
494bb53
Automated repo sync 20241208
iksrochpub Dec 8, 2024
9d9d27c
Automated repo sync 20241209
iksrochpub Dec 9, 2024
838c224
Automated repo sync 20241213
iksrochpub Dec 13, 2024
c4bca3a
Automated repo sync 20241214
iksrochpub Dec 14, 2024
2279d42
Automated repo sync 20241220
iksrochpub Dec 20, 2024
f326c83
Automated repo sync 20250109
iksrochpub Jan 9, 2025
46a4254
merge upstream/release-1.32 into master
Jan 9, 2025
4707e94
UPSTREAM: <carry>: Add OWNERS
Fedosin Jul 19, 2021
7baa713
UPSTREAM: <carry>: Add vendor/
Fedosin Jul 19, 2021
890defe
UPSTREAM: <carry>: Add cloud-provider-vpc-controller git submodule
Fedosin Sep 8, 2021
518e1d8
UPSTREAM: <carry>: Add a Dockerfile that compatible with OpenShift
Fedosin Jul 19, 2021
e06fc2c
UPSTREAM: <carry>: Add Snyk file to exclude vendor directory on scan
racheljpg Dec 18, 2023
2cab1cd
UPSTREAM: <carry>: Updating ose-ibm-cloud-controller-manager-containe…
May 25, 2024
83396ea
UPSTREAM: <carry>: Sync OWNERS file
JoelSpeed Jun 24, 2024
efdb4c7
UPSTREAM: <carry>: Updating ose-ibm-cloud-controller-manager-containe…
Sep 4, 2024
28aad57
UPSTREAM: <carry>: Updating ose-ibm-cloud-controller-manager-containe…
Dec 4, 2024
de31576
UPSTREAM: <drop>: Updating and vendoring go modules after an upstream…
Jan 9, 2025
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
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .golangci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ******************************************************************************
# IBM Cloud Kubernetes Service, 5737-D43
# (C) Copyright IBM Corp. 2022 All Rights Reserved.
# (C) Copyright IBM Corp. 2022, 2024 All Rights Reserved.
#
# SPDX-License-Identifier: Apache2.0
#
Expand Down
27 changes: 14 additions & 13 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# ******************************************************************************
dist: focal
group: vpc

services:
- docker

language: go

go:
- 1.22.6

dist: bionic
- 1.23.3

env:
global:
- IKS_PIPELINE_IAM_APIKEY="${ALL_GLOBAL_NETWORK_IKS_PIPELINE_IAM_APIKEY_20231110}"
- CONTAINERIZED_BUILD_TOOLS="true"
- IKS_PIPELINE_IAM_APIKEY="${ALL_GLOBAL_NETWORK_IKS_PIPELINE_IAM_APIKEY_20241110}"
- registry_iam_api_key="${ALL_GLOBAL_registry_iam_api_key_20240423}"
- GHE_TOKEN="${ALL_GLOBAL_GHE_TOKEN_20240424}"
- TRAVIS_INTERNAL_HOSTNAME="v3.travis.ibm.com"

sudo: required

services:
- docker

git:
depth: false

Expand Down Expand Up @@ -75,7 +77,6 @@ script:
- make test
- make coverage
- make commands
- make fvttest
- make runanalyzedeps || true
- BUILD_SHA=${TRAVIS_COMMIT} BUILD_ID=${TRAVIS_BUILD_NUMBER} BUILD_TAG=${TRAVIS_TAG} make containers

Expand All @@ -88,19 +89,19 @@ deploy:
skip_cleanup: true
on:
tags: true
condition: ${TRAVIS_TAG} == v1.31.1-* && ${TRAVIS_JOB_NAME} == Internal
go: 1.22.6
condition: ${TRAVIS_TAG} == v1.32.0-* && ${TRAVIS_JOB_NAME} == Internal
go: 1.23.3
- provider: script
script: BUILD_TAG=${TRAVIS_TAG} make deploy
skip_cleanup: true
on:
tags: true
go: 1.22.6
go: 1.23.3
condition: ${TRAVIS_TAG} == dev-* && ${TRAVIS_JOB_NAME} == Internal
- provider: script
script: ./scripts/publishTag.sh
skip_cleanup: true
on:
branch: release-1.31
go: 1.22.6
branch: release-1.32
go: 1.23.3
condition: ${TRAVIS_COMMIT_MESSAGE} =~ push_build && ${TRAVIS_JOB_NAME} == Internal
31 changes: 3 additions & 28 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,12 @@ YAML_FILES=$(shell find . -type f -name '*.y*ml' -not -path "./build-tools/*" -n
INI_FILES=$(shell find . -type f -name '*.ini' -not -path "./build-tools/*")
OSS_FILES := go.mod

GOLANGCI_LINT_VERSION := 1.59.1
GOLANGCI_LINT_VERSION := 1.61.0
GOLANGCI_LINT_EXISTS := $(shell golangci-lint --version 2>/dev/null)

HUB_RLS ?= 2.14.2
REGISTRY ?= armada-master
TAG ?= v1.31.1
TAG ?= v1.32.0

NANCY_VERSION := 1.0.46

Expand All @@ -67,7 +67,7 @@ ifeq (,$(BUILD_TAG))
endif

.PHONY: all
all: oss fmt lint lint-sh lint-copyright vet test coverage commands fvttest containers
all: oss fmt lint lint-sh lint-copyright vet test coverage commands containers

.PHONY: setup-artifactory-build
setup-artifactory-build:
Expand Down Expand Up @@ -150,10 +150,6 @@ coverage:
commands:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o ibm-cloud-controller-manager -ldflags '-w -X cloud.ibm.com/cloud-provider-ibm/ibm.Version=${BUILD_TAG}' .

.PHONY: fvttest
fvttest:
cd tests/fvt && CGO_ENABLED=0 GOOS=linux go build ibm_loadbalancer.go

.PHONY: runanalyzedeps
runanalyzedeps:
which nancy || $(MAKE) install-nancy-dep-scanner
Expand Down Expand Up @@ -207,27 +203,6 @@ else
@echo "Use the existing pkg/vpcctl logic"
endif

.PHONY: kubectlcli
kubectlcli:
sudo curl -Lo /usr/local/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/$(TAG)/bin/linux/amd64/kubectl
sudo chmod 755 /usr/local/bin/kubectl

.PHONY: ibmcloudcli
ibmcloudcli:
curl -L 'https://clis.cloud.ibm.com/install/linux' | bash
ibmcloud config --check-version false
ibmcloud plugin uninstall kubernetes-service && ibmcloud plugin install kubernetes-service -r "IBM Cloud"

.PHONY: armadacli
armadacli: ibmcloudcli kubectlcli calicoctlcli
ibmcloud plugin list && ibmcloud plugin repos
ibmcloud --version
kubectl version --client

.PHONY: runfvt
runfvt: kubectlcli vpcctlcli
cd ./tests/fvt && LOCAL_IBM_ARMADA_LB_FVT_TEST=true ./ibm_loadbalancer --logtostderr=true -v=4 ${TEST_FVT_OPTIONS}

.PHONY: push-images
push-images:
cd vagrant-kube-build/provisioning && ./push_image.sh ${ALT_REGISTRY} ${ALT_NAMESPACE} ibm-cloud-controller-manager
Expand Down
34 changes: 1 addition & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ infrastructure node and load balancer support to
[Kubernetes](https://kubernetes.io/docs/home/) or
[OpenShift](https://docs.openshift.com/) clusters running on
[IBM Cloud](https://cloud.ibm.com/docs). This repository branch is based on
[Kubernetes version v1.31.1](https://github.com/kubernetes/kubernetes/tree/v1.31.1).
[Kubernetes version v1.32.0](https://github.com/kubernetes/kubernetes/tree/v1.32.0).
See [CONTRIBUTING.md](./CONTRIBUTING.md) for contribution guidelines.

## Local Build and Deploy Instructions
Expand Down Expand Up @@ -62,38 +62,6 @@ what is done by Travis CI.

`make test`

### Functional

Functional tests are available under `tests/fvt` and are designed to run against
an existing cluster. These tests exercise the load balancer interfaces without
having to do a full build and deployment. These tests are **not** run by
Travis CI.

To run these tests, do the following:

1. Copy your cluster admin configuration into `tests/fvt/kubeconfig` along with
the associated 3 `*.pem` files:
1. The `setupFVT.sh` script in `vagrant-kube-build` can do this for you, just:
- `cd vagrant-kube-build`
- `./setupFVT.sh <CLUSTER_NAME>`

1. Edit `ibm-cloud-config.ini` file depending on whether you are testing a cluster
using classic or VPC infrastructure:
1. For Classic, no modifications are needed
1. For VPC, you must uncomment the lines at the bottom from `[provider]` to
the end, and update them with information from your cluster:
- `accountID` can be anything (for example, `accountID = bogusAccountID`)
- `clusterID` must be set to your cluster ID

1. Once you have this done, the default `./build.sh` script will run the FVT tests.

1. You can also use this tester to run additional tests. To do that:
1. Run the full `./build.sh` to run through the default tests once
1. `vagrant ssh` into the build VM and run other variations of the tests
using any of the following as examples:
- `make runfvt TEST_FVT_OPTIONS="--action=create --name=BradsLB1"`
- `make runfvt TEST_FVT_OPTIONS="--action=delete --name=BradsLB1"`

## Dependencies

Dependencies are managed via [go modules](https://github.com/golang/go/wiki/Modules)
Expand Down
2 changes: 1 addition & 1 deletion addons/classic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
source: github.ibm.com/alchemy-containers/armada-classic-lb

# (Required) - git release or branch name in the source github repo
release: v0.2.5
release: v0.3.0

# (Required) - source directory in the github repo containing GO files
source_dir: pkg/classic
Expand Down
2 changes: 1 addition & 1 deletion addons/vpcctl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
source: github.ibm.com/alchemy-containers/armada-vpc-lb

# (Required) - git release or branch name in the source github repo
release: v0.31.1
release: v0.35.0

# (Required) - source directory in the github repo containing GO files
source_dir: pkg/vpcctl
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/ibm-cloud-controller-manager.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ spec:
terminationGracePeriodSeconds: 90
containers:
- name: ibm-cloud-controller-manager
image: registry.ng.bluemix.net/armada-master/ibm-cloud-controller-manager:v1.31.1-1
image: registry.ng.bluemix.net/armada-master/ibm-cloud-controller-manager:v1.32.0-1
imagePullPolicy: IfNotPresent
securityContext:
runAsNonRoot: true
Expand Down
86 changes: 43 additions & 43 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,28 +1,29 @@
module cloud.ibm.com/cloud-provider-ibm

go 1.22.5
go 1.23.3

require (
github.com/IBM/go-sdk-core/v5 v5.17.5
github.com/IBM/platform-services-go-sdk v0.69.1
github.com/IBM/vpc-go-sdk v0.59.0
github.com/fsnotify/fsnotify v1.7.0
github.com/IBM/go-sdk-core/v5 v5.18.5
github.com/IBM/platform-services-go-sdk v0.73.0
github.com/IBM/vpc-go-sdk v0.64.0
github.com/fsnotify/fsnotify v1.8.0
github.com/go-openapi/strfmt v0.23.0
github.com/spf13/cobra v1.8.1
github.com/spf13/pflag v1.0.5
github.com/stretchr/testify v1.9.0
github.com/stretchr/testify v1.10.0
gopkg.in/gcfg.v1 v1.2.3
k8s.io/api v0.31.1
k8s.io/apimachinery v0.31.1
k8s.io/client-go v0.31.1
k8s.io/cloud-provider v0.31.1
k8s.io/component-base v0.31.1
k8s.io/component-helpers v0.31.1
k8s.io/api v0.32.0
k8s.io/apimachinery v0.32.0
k8s.io/client-go v0.32.0
k8s.io/cloud-provider v0.32.0
k8s.io/component-base v0.32.0
k8s.io/component-helpers v0.32.0
k8s.io/klog/v2 v2.130.1
)

require (
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
cel.dev/expr v0.18.0 // indirect
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
github.com/NYTimes/gziphandler v1.1.1 // indirect
github.com/antlr4-go/antlr/v4 v4.13.0 // indirect
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
Expand All @@ -40,16 +41,16 @@ require (
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-openapi/errors v0.22.0 // indirect
github.com/go-openapi/jsonpointer v0.19.6 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/jsonreference v0.20.2 // indirect
github.com/go-openapi/swag v0.22.4 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/go-playground/validator/v10 v10.19.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.4 // indirect
github.com/google/cel-go v0.20.1 // indirect
github.com/google/btree v1.0.1 // indirect
github.com/google/cel-go v0.22.0 // indirect
github.com/google/gnostic-models v0.6.8 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/gofuzz v1.2.0 // indirect
Expand All @@ -58,7 +59,6 @@ require (
github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
github.com/imdario/mergo v0.3.6 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
Expand All @@ -76,11 +76,11 @@ require (
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.55.0 // indirect
github.com/prometheus/procfs v0.15.1 // indirect
github.com/stoewer/go-strcase v1.2.0 // indirect
github.com/stoewer/go-strcase v1.3.0 // indirect
github.com/x448/float16 v0.8.4 // indirect
go.etcd.io/etcd/api/v3 v3.5.14 // indirect
go.etcd.io/etcd/client/pkg/v3 v3.5.14 // indirect
go.etcd.io/etcd/client/v3 v3.5.14 // indirect
go.etcd.io/etcd/api/v3 v3.5.16 // indirect
go.etcd.io/etcd/client/pkg/v3 v3.5.16 // indirect
go.etcd.io/etcd/client/v3 v3.5.16 // indirect
go.mongodb.org/mongo-driver v1.14.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect
Expand All @@ -92,33 +92,33 @@ require (
go.opentelemetry.io/otel/trace v1.28.0 // indirect
go.opentelemetry.io/proto/otlp v1.3.1 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.26.0 // indirect
golang.org/x/crypto v0.24.0 // indirect
golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc // indirect
golang.org/x/net v0.26.0 // indirect
golang.org/x/oauth2 v0.21.0 // indirect
golang.org/x/sync v0.7.0 // indirect
golang.org/x/sys v0.21.0 // indirect
golang.org/x/term v0.21.0 // indirect
golang.org/x/text v0.16.0 // indirect
golang.org/x/time v0.3.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect
go.uber.org/zap v1.27.0 // indirect
golang.org/x/crypto v0.32.0 // indirect
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
golang.org/x/net v0.34.0 // indirect
golang.org/x/oauth2 v0.23.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.29.0 // indirect
golang.org/x/term v0.28.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/time v0.7.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240826202546-f6391c0de4c7 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240826202546-f6391c0de4c7 // indirect
google.golang.org/grpc v1.65.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect
google.golang.org/protobuf v1.35.1 // indirect
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
k8s.io/apiserver v0.31.1 // indirect
k8s.io/controller-manager v0.31.1 // indirect
k8s.io/kms v0.31.1 // indirect
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect
k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
k8s.io/apiserver v0.32.0 // indirect
k8s.io/controller-manager v0.32.0 // indirect
k8s.io/kms v0.32.0 // indirect
k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f // indirect
k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect
sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.0 // indirect
sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.4.2 // indirect
sigs.k8s.io/yaml v1.4.0 // indirect
)
Loading