From 9bb52e6971d3c0289aeb1ddc3afb366697348932 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 15 Dec 2025 17:17:10 +0000 Subject: [PATCH 1/2] Initial plan From 66f92697518f8f339d220adac132c8453620a957 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 15 Dec 2025 17:23:59 +0000 Subject: [PATCH 2/2] Add --updater-env flag to graph and fix test command - Add --updater-env flag registration to graph command - Pass UpdaterEnvironmentVariables to infra.Run() in graph command - Fix test command to pass UpdaterEnvironmentVariables to infra.Run() - Both commands now properly forward environment variables to the updater container Co-authored-by: jurre <749864+jurre@users.noreply.github.com> --- cmd/dependabot/internal/cmd/graph.go | 42 +++++++++++++++------------- cmd/dependabot/internal/cmd/test.go | 39 +++++++++++++------------- 2 files changed, 42 insertions(+), 39 deletions(-) diff --git a/cmd/dependabot/internal/cmd/graph.go b/cmd/dependabot/internal/cmd/graph.go index 0a1811a5..3b5260b1 100644 --- a/cmd/dependabot/internal/cmd/graph.go +++ b/cmd/dependabot/internal/cmd/graph.go @@ -71,26 +71,27 @@ func NewGraphCommand() *cobra.Command { } if err := infra.Run(infra.RunParams{ - CacheDir: flags.cache, - CollectorConfigPath: flags.collectorConfigPath, - CollectorImage: collectorImage, - Creds: input.Credentials, - Debug: flags.debugging, - Flamegraph: flags.flamegraph, - Expected: nil, // graph subcommand doesn't use expectations - ExtraHosts: flags.extraHosts, - InputName: flags.file, - Job: &input.Job, - LocalDir: flags.local, - Output: flags.output, - ProxyCertPath: flags.proxyCertPath, - ProxyImage: proxyImage, - PullImages: flags.pullImages, - Timeout: flags.timeout, - UpdaterImage: updaterImage, - Volumes: flags.volumes, - Writer: writer, - ApiUrl: flags.apiUrl, + CacheDir: flags.cache, + CollectorConfigPath: flags.collectorConfigPath, + CollectorImage: collectorImage, + Creds: input.Credentials, + Debug: flags.debugging, + Flamegraph: flags.flamegraph, + Expected: nil, // graph subcommand doesn't use expectations + ExtraHosts: flags.extraHosts, + InputName: flags.file, + Job: &input.Job, + LocalDir: flags.local, + Output: flags.output, + ProxyCertPath: flags.proxyCertPath, + ProxyImage: proxyImage, + PullImages: flags.pullImages, + Timeout: flags.timeout, + UpdaterImage: updaterImage, + Volumes: flags.volumes, + Writer: writer, + ApiUrl: flags.apiUrl, + UpdaterEnvironmentVariables: flags.updaterEnvironmentVariables, }); err != nil { if errors.Is(err, context.DeadlineExceeded) { log.Fatalf("update timed out after %s", flags.timeout) @@ -122,6 +123,7 @@ func NewGraphCommand() *cobra.Command { cmd.Flags().DurationVarP(&flags.timeout, "timeout", "t", 0, "max time to run an update") cmd.Flags().IntVar(&flags.inputServerPort, "input-port", 0, "port to use for securely passing input to the updater") cmd.Flags().StringVarP(&flags.apiUrl, "api-url", "a", "", "the api dependabot should connect to.") + cmd.Flags().StringArrayVarP(&flags.updaterEnvironmentVariables, "updater-env", "e", nil, "additional environment variables to set in the update container") return cmd } diff --git a/cmd/dependabot/internal/cmd/test.go b/cmd/dependabot/internal/cmd/test.go index 573346a5..659a1691 100644 --- a/cmd/dependabot/internal/cmd/test.go +++ b/cmd/dependabot/internal/cmd/test.go @@ -35,25 +35,26 @@ func NewTestCommand() *cobra.Command { processInput(&smokeTest.Input, nil) if err := executeTestJob(infra.RunParams{ - CacheDir: flags.cache, - CollectorConfigPath: flags.collectorConfigPath, - CollectorImage: collectorImage, - Creds: smokeTest.Input.Credentials, - Debug: flags.debugging, - Expected: smokeTest.Output, - ExtraHosts: flags.extraHosts, - InputName: flags.file, - InputRaw: inputRaw, - Job: &smokeTest.Input.Job, - LocalDir: flags.local, - Output: flags.output, - ProxyCertPath: flags.proxyCertPath, - ProxyImage: proxyImage, - PullImages: flags.pullImages, - StorageImage: storageImage, - Timeout: flags.timeout, - UpdaterImage: updaterImage, - Volumes: flags.volumes, + CacheDir: flags.cache, + CollectorConfigPath: flags.collectorConfigPath, + CollectorImage: collectorImage, + Creds: smokeTest.Input.Credentials, + Debug: flags.debugging, + Expected: smokeTest.Output, + ExtraHosts: flags.extraHosts, + InputName: flags.file, + InputRaw: inputRaw, + Job: &smokeTest.Input.Job, + LocalDir: flags.local, + Output: flags.output, + ProxyCertPath: flags.proxyCertPath, + ProxyImage: proxyImage, + PullImages: flags.pullImages, + StorageImage: storageImage, + Timeout: flags.timeout, + UpdaterImage: updaterImage, + Volumes: flags.volumes, + UpdaterEnvironmentVariables: flags.updaterEnvironmentVariables, }); err != nil { log.Fatal(err) }