Skip to content

Commit

Permalink
fix implementation and update status description
Browse files Browse the repository at this point in the history
  • Loading branch information
mattbates committed Nov 21, 2024
1 parent a3fa6cf commit e27f3f8
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 42 deletions.
30 changes: 0 additions & 30 deletions cmd/cofidectl/cmd/workload/workload.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,36 +135,6 @@ func (w *WorkloadCommand) GetStatusCommand() *cobra.Command {
return fmt.Errorf("failed to retrieve the kubeconfig file location")
}

ds, err := w.cmdCtx.PluginManager.GetDataSource()
if err != nil {
return err
}

var trustZones []*trust_zone_proto.TrustZone

if opts.trustZone != "" {
trustZone, err := ds.GetTrustZone(opts.trustZone)
if err != nil {
return err
}

trustZones = append(trustZones, trustZone)
} else {
trustZones, err = ds.ListTrustZones()
if err != nil {
return err
}
}

if len(trustZones) == 0 {
return fmt.Errorf("no trust zones have been configured")
}

err = renderRegisteredWorkloads(cmd.Context(), kubeConfig, trustZones)
if err != nil {
return err
}

opts.workloadName = args[0]
return w.status(cmd.Context(), kubeConfig, opts)
},
Expand Down
1 change: 0 additions & 1 deletion internal/pkg/provider/helm/values.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ func (g *HelmValuesGenerator) GenerateValues() (map[string]interface{}, error) {
fmt.Sprintf(`"spire-agent"."workloadAttestors"."%s"."enabled"`, agentConfig.WorkloadAttestor): agentConfig.WorkloadAttestorConfig["enabled"],
fmt.Sprintf(`"spire-agent"."workloadAttestors"."%s"."skipKubeletVerification"`, agentConfig.WorkloadAttestor): agentConfig.WorkloadAttestorConfig["skipKubeletVerification"],
fmt.Sprintf(`"spire-agent"."workloadAttestors"."%s"."useNewContainerLocator"`, agentConfig.WorkloadAttestor): agentConfig.WorkloadAttestorConfig["useNewContainerLocator"],
fmt.Sprintf(`"spire-agent"."workloadAttestors"."%s"."disableContainerSelectors"`, agentConfig.WorkloadAttestor): agentConfig.WorkloadAttestorConfig["disableContainerSelectors"],
fmt.Sprintf(`"spire-agent"."workloadAttestors"."%s"."verboseContainerLocatorLogs"`, agentConfig.WorkloadAttestor): agentConfig.WorkloadAttestorConfig["verboseContainerLocatorLogs"],
`"spire-agent"."server"."address"`: "spire-server.spire",
}
Expand Down
4 changes: 2 additions & 2 deletions internal/pkg/provider/helm/values_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ func TestHelmValuesGenerator_GenerateValues_success(t *testing.T) {
},
"workloadAttestors": Values{
"k8s": Values{
"disableContainerSelectors": false,
"disableContainerSelectors": true,
"enabled": true,
"skipKubeletVerification": true,
"useNewContainerLocator": false,
Expand Down Expand Up @@ -152,7 +152,7 @@ func TestHelmValuesGenerator_GenerateValues_success(t *testing.T) {
},
"workloadAttestors": Values{
"k8s": Values{
"disableContainerSelectors": false,
"disableContainerSelectors": true,
"enabled": true,
"skipKubeletVerification": true,
"useNewContainerLocator": false,
Expand Down
18 changes: 9 additions & 9 deletions internal/pkg/workload/workload.go
Original file line number Diff line number Diff line change
Expand Up @@ -143,14 +143,14 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat
defer cancel()
statusCh <- provider.ProviderStatus{
Stage: "Creating",
Message: fmt.Sprintf("Waiting for ephemeral container to be created in %s", podName),
Message: fmt.Sprintf("Waiting for ephemeral debug container to be created in %s", podName),
}

pod, err := client.Clientset.CoreV1().Pods(namespace).Get(ctx, podName, metav1.GetOptions{})
if err != nil {
statusCh <- provider.ProviderStatus{
Stage: "Creating",
Message: fmt.Sprintf("Failed waiting for ephemeral container to be created in %s", podName),
Message: fmt.Sprintf("Failed waiting for ephemeral debug container to be created in %s", podName),
Done: true,
Error: err,
}
Expand Down Expand Up @@ -187,7 +187,7 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat
if err != nil {
statusCh <- provider.ProviderStatus{
Stage: "Creating",
Message: fmt.Sprintf("Failed waiting for ephemeral container to be created in %s", podName),
Message: fmt.Sprintf("Failed waiting for ephemeral debug container to be created in %s", podName),
Done: true,
Error: err,
}
Expand All @@ -196,15 +196,15 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat

statusCh <- provider.ProviderStatus{
Stage: "Waiting",
Message: "Waiting for ephemeral container to complete",
Message: "Waiting for ephemeral debug container to complete",
}

for {
pod, err := client.Clientset.CoreV1().Pods(namespace).Get(ctx, podName, metav1.GetOptions{})
if err != nil {
statusCh <- provider.ProviderStatus{
Stage: "Waiting",
Message: "Error waiting for ephemeral container to complete",
Message: "Error waiting for ephemeral debug container to complete",
}
return
}
Expand All @@ -225,7 +225,7 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat
case <-waitCtx.Done():
statusCh <- provider.ProviderStatus{
Stage: "Waiting",
Message: "Error waiting for ephemeral container to complete",
Message: "Error waiting for ephemeral debug container to complete",
}
return
default:
Expand All @@ -240,7 +240,7 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat
if err != nil {
statusCh <- provider.ProviderStatus{
Stage: "Waiting",
Message: "Error waiting for ephemeral container logs",
Message: "Error waiting for ephemeral debug container logs",
}
return
}
Expand All @@ -252,15 +252,15 @@ func GetStatus(ctx context.Context, statusCh chan<- provider.ProviderStatus, dat
if err != nil {
statusCh <- provider.ProviderStatus{
Stage: "Waiting",
Message: "Error waiting for ephemeral container logs",
Message: "Error waiting for ephemeral debug container logs",
}
}

dataCh <- buf.String()

statusCh <- provider.ProviderStatus{
Stage: "Complete",
Message: fmt.Sprintf("Successfully executed emphemeral container in %s", podName),
Message: fmt.Sprintf("Successfully executed emphemeral debug container in %s", podName),
Done: true,
}
}
Expand Down

0 comments on commit e27f3f8

Please sign in to comment.