With the assisted-service client now in a separate go module, we are
able to drop the dependency on the main assisted-service module. This
allows us to update to the latest version without pulling in any
undesirable dependencies as a side-effect.
Update to the assisted-service at commit
a40422bdea617f16cbdb724d53619ca74773be45.
This repo now contains multiple go modules, so we have to add overrides
for the internal references to the api and models modules.
* Replace terraform modules with github.com/hashicorp/terraform-exec.
* Remove all terraform providers.
* Remove all unneeded replaces.
* Tidy up the replace stanzas so that it is more clear why each replace is needed.
* Remove and re-create all indirect requires to clean up ones that are
no longer needed.
-replace=k8s.io/client-go=k8s.io/client-go@v0.22.0 \
-replace=k8s.io/kube-openapi=k8s.io/kube-openapi@v0.0.0-20210305001622-591a79e4bda7
Bumps the OpenShift & k8s APIs. There seems to be a breaking change
in kube-openshift which breaks our kubevirt.io dependencies. I'm pinning
this to the earlier kube-openapi until these dependencies can be
updated.
ibmcloud: add ibm cloud types
support the new ibm cloud platform by adding required types
ibmcloud: add initial assets
Add ibmcloud assets to support the new ibmcloud platform. These changes are functional, but additional functionality will be built out over time
ibmcloud: resolve linting issues
ibmcloud: obtain the cisInstanceCRN for install-config
The cisInstanceCRN field is derived from the user-provided baseDomain. It is needed for all DNS configuration.
types: fix ibmcloud machinepool file name
ibmcloud: rename platform ResourceGroupID field
Rename the field `ResourceGroupID` in the Platform type to
`ResourceGroup`
ibmcloud: add initial metadata
ibmcloud: add ClusterOSImage customization
The ClusterOSImage field will allow the user to specify the custom
RHCOS image to use for their cluster VSIs
ibmcloud: add fields to Platform type
Add the DefaultMachinePlatform, VPC, VPCResourceGroup, and Subnets
fields to the Platform type. These are needed to fully define a
cluster.
ibmcloud: improve platform validation and tests
Add in additional validation to the ibmcloud Platform. Also,
add unit tests around that new validation. This is just a start
and more validation and unit tests are required.
ibmcloud: fix linting issues
These issues were discovered using golangci-lint
ibmcloud: use resource group name in install config
Use the resource group name instead of ID in the install config. This
will be more human friendly. The ID will also still be valid, but
name will be preferred.
ibmcloud: improve default resource group check
Check for the default resource group based off of the 'default'
field in the resource group struct.
ibmcloud: fix typo
ibmcloud: remove vpcResourceGroup and use vpc ID
vpcResourceGroup is no longer needed if the vpc field holds the
ID of the VPC instead of the name.
ibmcloud: enforce clusterOSImage region
The clusterOSImage refers to a custom image in a user's VPC. That
image is regionally scoped and the region should be honored. Users
should not be allowed to pick a custom image from a region that
differes from the value of the region field in the install config.
ibmcloud: use resourcev2 API
The resourcev2 API should be used in place of v1. This is the most
up-to-date and well supported version.
ibmcloud: fix log message
Co-Authored-By: Hidematsu Sueki <Hidematsu.Sueki@ibm.com>
ibmcloud: add machinepool type and validation
Add the MachinePool type for the IBM Cloud platform. Also include
initial validation on the fields.
ibmcloud: update survey version
ibmcloud: use ibm go sdks instead of bluemix-go
The ibm-go-sdk and corresponding service SDKs in the IBM GH org
are more up-to-date and routinely supported. The old bluemix-go
SDKs should no longer be used.
update go mod
update vendor
fix: make validateVPCConfig a private function
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: improve log message for resource group not found
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: simplify subnet return statement
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: improve log message for vpc not found
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: images slice declaration
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: improve images range loop
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: typo in baseDomain help string
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: clarify resource group help message
fix: use platformPath as variable name
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: ibmcloud platform reference
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: remove unnecessary conditionals in validation
fix: check encryptionKey exists before validation
fix: improve zone validation message
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: keep errors out of happy path
fix: add index to subnets validation
fix: create VPCResourceNotFoundError
fix: use sets.String for contains
fix: ibmcloud platform type comments
fix: improve vpc config validation messages
fix: add omitempty for encryptionKey
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: improve BootVolume copying
Co-authored-by: Matthew Staebler <staebler@redhat.com>
fix: rename MachinePool.Type to InstanceType
fix: remove validateRegion
fix: remove unnecessary context from client
fix: remove context timeout in ic Platform
fix: remove superfluous edit
fix: update unit tests
fix: move types used by cilent to same package
fix: update OWNERS and OWNERS_ALIASES
fix: improve client call to load services
fix: improve GetZoneIDByName range loop
fix: whitepsace in OWNERS
fix: populate ibmcloud OWNERS_ALIASES
fix: make cisServiceID a const
Co-authored-by: Matthew Staebler <staebler@redhat.com>
ibmcloud: refactor resource groups
Allow users to have VPC resources in a different resource
group from the cluster creation. This will enable CI and E2E
testing along with making it easier to destroy clusters.
This commit also adds a "Name" suffix to resource groups to align
with other platforms naming convention.
fix: error message format
fix: update unit test
ibmcloud: move ibmcloud to hidden platforms
The IBMCloud platform will be in a developer preview for 4.9. As a result
we will move it to the list of hidden platforms. This commit does that by
default, but allows for it to show up in the survey via a build flag:
'ibmcloud'.
ibmcloud: remove cisInstanceCRN field
The cisInstanceCRN platform field is not needed. Though it is possible
to manage a single DNS zone with multiple CIS instances, only one zone
can be in the "Active" state at a time. As a result, we know which CIS
instance to use based off of its managed zone's state.
fix: address pr comments
update codegen
This updates baremetal-operator to pull in the latest changes including
hardware profiles. The installer vendors hardware profiles from
baremetal-operator to keep the interface the same between
terraform-provisioned baremetal hosts and those provisioned by the
machine-api.
This is done by updating the entry in the `replace` clause of the go.mod
file. Then, we run `go mod tidy`, followed by `go mod vendor`. This
breaks because the requested version of google.golang.org/grpc, v1.27.0,
changes the API in backwards-incompatible ways. Thus, we also include a
new pin for this dependency to the previously requested version,
v1.25.0, which yields a working build.
Also had to manually add vfsutil to testImports because glide didn't
pick it up for some reason.
Commands run:
rm glide.lock
glide install --strip-vendor
glide-vc --use-lock-file --no-tests --only-code