nexgate-engines
the engines module, member of GSF-nexgate ZUGFeRD family.
This Go module uses its writer components to handle rendering into output formats within the nexgate ecosystem.
Tasks
- Accepting the
RenderInput structure.
- Generating
RenderJob files within the nexgate-env structure.
- Triggering and monitoring the individual engine workers (Base, PDF, ZUGFeRD).
- Providing the finished output document (Factur-X, PDF, hybrid ZUGFeRD PDF).
Installation
go get codeberg.org/tiny-frameworks/nexgate-engines
Nutzung
The module is instantiated and triggered by the orchestrator
func (o *Orchestrator) generateZugferd(rJob *job.RenderJob, finalize bool) (*writer.RenderOutput, error) {
engine := config.SystemParams.Engine.ZugferdEngine
provider := config.SystemParams.Engine.ZugferdProvider // native | container | webservice
kind := writer.ZugferdKind
timeout := config.SystemParams.Engine.CmdTimeout
zugferdWriter, err := o.CreateWriter(provider, engine, timeout, kind)
if err != nil {
return nil, err
}
renderInput := writer.RenderInput{}
renderInput.ArtefactsPath = filepath.Join(config.SellerParams.SellerRoot, "data", "artefacts")
renderInput.RootPath = filepath.Join(config.SellerParams.SellerRoot, "data", "zugferds")
renderInput.OutputPath = filepath.Join(config.SellerParams.SellerRoot, "outputs", o.ZugferdMaster.Invoice.InvoiceID+".zf.pdf")
return zugferdWriter.Render(o.ctx, rJob, &renderInput, finalize)
}
Documentation, Contributing & Security
- For the detailed documentation of nexgate-engines, see the main repository nexgate-doc.
- For the complete documentation of the nexgate system, see the main repository nexgate-doc.
- You can find guidelines for bug reports and pull requests in the central Contributing Guidelines.
- Information on reporting security vulnerabilities can be found in our Security Policy.