SetScrapeConfigs updates Parca with new configuration.
(scrapeJobs []parcaconfig.ScrapeConfig)
| 79 | |
| 80 | // SetScrapeConfigs updates Parca with new configuration. |
| 81 | func (p *Parca) SetScrapeConfigs(scrapeJobs []parcaconfig.ScrapeConfig) error { |
| 82 | if p.BuildErr() != nil { |
| 83 | return p.BuildErr() |
| 84 | } |
| 85 | |
| 86 | c := p.configHeader |
| 87 | |
| 88 | b, err := yaml.Marshal(struct { |
| 89 | ScrapeConfigs []parcaconfig.ScrapeConfig `yaml:"scrape_configs,omitempty"` |
| 90 | }{ScrapeConfigs: scrapeJobs}) |
| 91 | if err != nil { |
| 92 | return err |
| 93 | } |
| 94 | |
| 95 | config := fmt.Sprintf("%v\n%s", c, b) |
| 96 | if err := os.WriteFile(filepath.Join(p.Dir(), "parca.yml"), []byte(config), 0600); err != nil { |
| 97 | return errors.Wrap(err, "creating Parca config failed") |
| 98 | } |
| 99 | return nil |
| 100 | } |
| 101 | |
| 102 | type Service struct { |
| 103 | p *Parca |
no test coverage detected