| 296 | } |
| 297 | |
| 298 | func setupRekor(ctx context.Context, vars map[string]string, environment []string) ([]string, map[string]string, error) { |
| 299 | if !rekor.IsRunning(ctx) { |
| 300 | return environment, vars, nil |
| 301 | } |
| 302 | |
| 303 | rekorURL, err := rekor.StubRekor(ctx) |
| 304 | if err != nil { |
| 305 | return environment, vars, err |
| 306 | } |
| 307 | |
| 308 | vars["REKOR"] = rekorURL |
| 309 | |
| 310 | // If TUF is initialized, skip setting SIGSTORE_REKOR_PUBLIC_KEY to avoid conflicts. |
| 311 | if !tuf.Initialized(ctx) { |
| 312 | f, err := os.CreateTemp("", "ec-acceptance-rekor-pub-*") |
| 313 | if err != nil { |
| 314 | return environment, vars, err |
| 315 | } |
| 316 | defer f.Close() |
| 317 | if _, err := f.Write(rekor.PublicKey(ctx)); err != nil { |
| 318 | return environment, vars, err |
| 319 | } |
| 320 | environment = append(environment, fmt.Sprintf("SIGSTORE_REKOR_PUBLIC_KEY=%s", f.Name())) |
| 321 | } |
| 322 | |
| 323 | return environment, vars, nil |
| 324 | } |
| 325 | |
| 326 | func setupRegistry(ctx context.Context, vars map[string]string, environment []string) ([]string, map[string]string, error) { |
| 327 | if !registry.IsRunning(ctx) { |