Skip to content

Commit

Permalink
Fix: invalid memory address or nil pointer dereference
Browse files Browse the repository at this point in the history
  • Loading branch information
littlejo committed Mar 26, 2024
1 parent 2fd33ad commit 549c417
Show file tree
Hide file tree
Showing 7 changed files with 83 additions and 1 deletion.
16 changes: 16 additions & 0 deletions cilium/cluster_mesh_connect.go
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,10 @@ func (r *CiliumClusterMeshConnectResource) Configure(ctx context.Context, req re
func (r *CiliumClusterMeshConnectResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse) {
var data CiliumClusterMeshConnectResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = clustermesh.Parameters{
Writer: os.Stdout,
}
Expand Down Expand Up @@ -151,6 +155,10 @@ func (r *CiliumClusterMeshConnectResource) Read(ctx context.Context, req resourc
Writer: os.Stdout,
}
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform prior state data into the model
resp.Diagnostics.Append(req.State.Get(ctx, &data)...)
Expand All @@ -177,6 +185,10 @@ func (r *CiliumClusterMeshConnectResource) Read(ctx context.Context, req resourc
func (r *CiliumClusterMeshConnectResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
var data CiliumClusterMeshConnectResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = clustermesh.Parameters{
Writer: os.Stdout,
}
Expand Down Expand Up @@ -204,6 +216,10 @@ func (r *CiliumClusterMeshConnectResource) Update(ctx context.Context, req resou
func (r *CiliumClusterMeshConnectResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
var data CiliumClusterMeshConnectResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = clustermesh.Parameters{
Writer: os.Stdout,
}
Expand Down
8 changes: 8 additions & 0 deletions cilium/cluster_mesh_enable.go
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,10 @@ func (r *CiliumClusterMeshEnableResource) Create(ctx context.Context, req resour
Writer: os.Stdout,
}

if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
// Read Terraform plan data into the model
resp.Diagnostics.Append(req.Plan.Get(ctx, &data)...)

Expand Down Expand Up @@ -180,6 +184,10 @@ func (r *CiliumClusterMeshEnableResource) Read(ctx context.Context, req resource
Writer: os.Stdout,
}
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform prior state data into the model
resp.Diagnostics.Append(req.State.Get(ctx, &data)...)
Expand Down
16 changes: 16 additions & 0 deletions cilium/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,10 @@ func (r *CiliumConfigResource) Configure(ctx context.Context, req resource.Confi
func (r *CiliumConfigResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse) {
var data CiliumConfigResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = config.Parameters{
Writer: os.Stdout,
}
Expand Down Expand Up @@ -147,6 +151,10 @@ func (r *CiliumConfigResource) Create(ctx context.Context, req resource.CreateRe
func (r *CiliumConfigResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse) {
var data CiliumConfigResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = config.Parameters{
Writer: os.Stdout,
}
Expand Down Expand Up @@ -209,6 +217,10 @@ func (r *CiliumConfigResource) Read(ctx context.Context, req resource.ReadReques
func (r *CiliumConfigResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
var data CiliumConfigResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = config.Parameters{
Writer: os.Stdout,
}
Expand Down Expand Up @@ -239,6 +251,10 @@ func (r *CiliumConfigResource) Update(ctx context.Context, req resource.UpdateRe
func (r *CiliumConfigResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
var data CiliumConfigResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = config.Parameters{
Writer: os.Stdout,
}
Expand Down
7 changes: 6 additions & 1 deletion cilium/data_helm_values.go
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,11 @@ func (d *CiliumHelmValuesDataSource) Configure(ctx context.Context, req datasour

func (d *CiliumHelmValuesDataSource) Read(ctx context.Context, req datasource.ReadRequest, resp *datasource.ReadResponse) {
var data CiliumHelmValuesDataSourceModel
k8sClient := d.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform configuration data into the model
resp.Diagnostics.Append(req.Config.Get(ctx, &data)...)
Expand All @@ -102,7 +107,7 @@ func (d *CiliumHelmValuesDataSource) Read(ctx context.Context, req datasource.Re
release = "cilium"
}
helmDriver := ""
if err := actionConfig.Init(d.client.RESTClientGetter, namespace, helmDriver, logger); err != nil {
if err := actionConfig.Init(k8sClient.RESTClientGetter, namespace, helmDriver, logger); err != nil {
return
}

Expand Down
12 changes: 12 additions & 0 deletions cilium/hubble.go
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,10 @@ func (r *CiliumHubbleResource) Configure(ctx context.Context, req resource.Confi
func (r *CiliumHubbleResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse) {
var data CiliumHubbleResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = hubble.Parameters{Writer: os.Stdout}

// Read Terraform plan data into the model
Expand Down Expand Up @@ -151,6 +155,10 @@ func (r *CiliumHubbleResource) Read(ctx context.Context, req resource.ReadReques
func (r *CiliumHubbleResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
var data CiliumHubbleResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = hubble.Parameters{Writer: os.Stdout}

// Read Terraform plan data into the model
Expand All @@ -177,6 +185,10 @@ func (r *CiliumHubbleResource) Update(ctx context.Context, req resource.UpdateRe
func (r *CiliumHubbleResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
var data CiliumHubbleResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = hubble.Parameters{Writer: os.Stdout}

// Read Terraform prior state data into the model
Expand Down
8 changes: 8 additions & 0 deletions cilium/install.go
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,10 @@ func (r *CiliumInstallResource) Create(ctx context.Context, req resource.CreateR
var params = install.Parameters{Writer: os.Stdout}
var options values.Options

if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
// Read Terraform plan data into the model
resp.Diagnostics.Append(req.Plan.Get(ctx, &data)...)

Expand Down Expand Up @@ -433,6 +437,10 @@ func (r *CiliumInstallResource) Update(ctx context.Context, req resource.UpdateR
func (r *CiliumInstallResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
var data CiliumInstallResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}
var params = install.UninstallParameters{Writer: os.Stdout}

// Read Terraform prior state data into the model
Expand Down
17 changes: 17 additions & 0 deletions cilium/kubeproxy_free.go
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,10 @@ func (r *CiliumKubeProxyDisabledResource) Configure(ctx context.Context, req res
func (r *CiliumKubeProxyDisabledResource) Create(ctx context.Context, req resource.CreateRequest, resp *resource.CreateResponse) {
var data CiliumKubeProxyDisabledResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform plan data into the model
resp.Diagnostics.Append(req.Plan.Get(ctx, &data)...)
Expand Down Expand Up @@ -161,6 +165,11 @@ func (r *CiliumKubeProxyDisabledResource) Create(ctx context.Context, req resour

func (r *CiliumKubeProxyDisabledResource) Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResponse) {
var data CiliumKubeProxyDisabledResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform prior state data into the model
resp.Diagnostics.Append(req.State.Get(ctx, &data)...)
Expand All @@ -182,6 +191,10 @@ func (r *CiliumKubeProxyDisabledResource) Read(ctx context.Context, req resource
func (r *CiliumKubeProxyDisabledResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
var data CiliumKubeProxyDisabledResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform plan data into the model
resp.Diagnostics.Append(req.Plan.Get(ctx, &data)...)
Expand Down Expand Up @@ -211,6 +224,10 @@ func (r *CiliumKubeProxyDisabledResource) Update(ctx context.Context, req resour
func (r *CiliumKubeProxyDisabledResource) Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.DeleteResponse) {
var data CiliumKubeProxyDisabledResourceModel
k8sClient := r.client
if k8sClient == nil {
resp.Diagnostics.AddError("Client Error", "Unable to connect to kubernetes")
return
}

// Read Terraform prior state data into the model
resp.Diagnostics.Append(req.State.Get(ctx, &data)...)
Expand Down

0 comments on commit 549c417

Please sign in to comment.