Renderer returns a Renderer that can be used to render the template version's parameters. It automatically determines whether to use a static or dynamic renderer based on the template version's state. Static parameter rendering is required to support older template versions that do not have the dat
(ctx context.Context, db database.Store, cache files.FileAcquirer)
| 153 | // do not have the database state to support dynamic parameters. A constant |
| 154 | // warning will be displayed for these template versions. |
| 155 | func (r *loader) Renderer(ctx context.Context, db database.Store, cache files.FileAcquirer) (Renderer, error) { |
| 156 | err := r.loadData(ctx, db) |
| 157 | if err != nil { |
| 158 | return nil, xerrors.Errorf("load data: %w", err) |
| 159 | } |
| 160 | |
| 161 | if !ProvisionerVersionSupportsDynamicParameters(r.terraformValues.ProvisionerdVersion) { |
| 162 | return r.staticRender(ctx, db) |
| 163 | } |
| 164 | |
| 165 | return r.dynamicRenderer(ctx, db, files.NewCacheCloser(cache)) |
| 166 | } |
| 167 | |
| 168 | // Renderer caches all the necessary files when rendering a template version's |
| 169 | // parameters. It must be closed after use to release the cached files. |
no test coverage detected