Commit 106aa870 authored by Geoff Simmons's avatar Geoff Simmons

The main VCL template parsed from variable, not from external file.

parent 47d1a8a5
...@@ -145,7 +145,6 @@ var fMap = template.FuncMap{ ...@@ -145,7 +145,6 @@ var fMap = template.FuncMap{
} }
const ( const (
ingTmplSrc = "vcl.tmpl"
authTmplSrc = "auth.tmpl" authTmplSrc = "auth.tmpl"
aclTmplSrc = "acl.tmpl" aclTmplSrc = "acl.tmpl"
rewriteTmplSrc = "rewrite.tmpl" rewriteTmplSrc = "rewrite.tmpl"
...@@ -158,7 +157,6 @@ const ( ...@@ -158,7 +157,6 @@ const (
) )
var ( var (
ingressTmpl *template.Template
authTmpl *template.Template authTmpl *template.Template
aclTmpl *template.Template aclTmpl *template.Template
rewriteTmpl *template.Template rewriteTmpl *template.Template
...@@ -169,17 +167,11 @@ var ( ...@@ -169,17 +167,11 @@ var (
// InitTemplates initializes templates for VCL generation. // InitTemplates initializes templates for VCL generation.
func InitTemplates(tmplDir string) error { func InitTemplates(tmplDir string) error {
var err error var err error
ingTmplPath := path.Join(tmplDir, ingTmplSrc)
authTmplPath := path.Join(tmplDir, authTmplSrc) authTmplPath := path.Join(tmplDir, authTmplSrc)
aclTmplPath := path.Join(tmplDir, aclTmplSrc) aclTmplPath := path.Join(tmplDir, aclTmplSrc)
rewriteTmplPath := path.Join(tmplDir, rewriteTmplSrc) rewriteTmplPath := path.Join(tmplDir, rewriteTmplSrc)
reqDispTmplPath := path.Join(tmplDir, reqDispTmplSrc) reqDispTmplPath := path.Join(tmplDir, reqDispTmplSrc)
ingressTmpl, err = template.New(ingTmplSrc).
Funcs(fMap).ParseFiles(ingTmplPath)
if err != nil {
return err
}
authTmpl, err = template.New(authTmplSrc). authTmpl, err = template.New(authTmplSrc).
Funcs(fMap).ParseFiles(authTmplPath) Funcs(fMap).ParseFiles(authTmplPath)
if err != nil { if err != nil {
......
vcl 4.1; /*
* Copyright (c) 2020 UPLEX Nils Goroll Systemoptimierung
* All rights reserved
*
* Author: Geoffrey Simmons <geoffrey.simmons@uplex.de>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
package vcl
import "text/template"
const ingTmplSrc = `vcl 4.1;
import std; import std;
import directors; import directors;
...@@ -227,3 +259,9 @@ sub vcl_hit { ...@@ -227,3 +259,9 @@ sub vcl_hit {
call vk8s_set_backend; call vk8s_set_backend;
} }
} }
`
const ingTmplName = "vcl"
var ingressTmpl = template.Must(template.New(ingTmplName).
Funcs(fMap).Parse(ingTmplSrc))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment