diff --git a/src/nginx/nginx.go b/src/nginx/nginx.go index 2339201..c646365 100644 --- a/src/nginx/nginx.go +++ b/src/nginx/nginx.go @@ -16,14 +16,14 @@ func getNginxDirectories(filename string, m Config) (string, string) { return pathAvailable, pathEnabled } -func CreateOrUpdateServerBlock(filename string, content string, m Config, markers map[string]string) (string, error) { +func CreateOrUpdateServerBlock(filename string, content string, m Config, markers map[string]interface{}) (string, error) { fullPathAvailable, _ := getNginxDirectories(filename, m) // Replace markers in content var re *regexp.Regexp for key, value := range markers { re, _ = regexp.Compile("{#\\s*" + key + "\\s*#}") - content = re.ReplaceAllString(content, value) + content = re.ReplaceAllString(content, value.(string)) } if err := ioutil.WriteFile(fullPathAvailable, []byte(content), 0744); err != nil { diff --git a/src/resource_server_block.go b/src/resource_server_block.go index bed0904..aac41ca 100644 --- a/src/resource_server_block.go +++ b/src/resource_server_block.go @@ -49,7 +49,7 @@ func resourceServerBlockCreate(d *schema.ResourceData, m interface{}) error { // Create file content := d.Get("content").(string) - fullPathAvailable, err := nginx.CreateOrUpdateServerBlock(d.Get("filename").(string), content, config, d.Get("markers").(map[string]string)) + fullPathAvailable, err := nginx.CreateOrUpdateServerBlock(d.Get("filename").(string), content, config, d.Get("markers").(map[string]interface{})) if err != nil { return err } @@ -82,7 +82,7 @@ func resourceServerBlockRead(d *schema.ResourceData, m interface{}) error { func resourceServerBlockUpdate(d *schema.ResourceData, m interface{}) error { // Content changed: replace old file content if d.HasChange("content") || d.HasChange("variables") { - _, err := nginx.CreateOrUpdateServerBlock(d.Id(), d.Get("content").(string), m.(nginx.Config), d.Get("markers").(map[string]string)) + _, err := nginx.CreateOrUpdateServerBlock(d.Id(), d.Get("content").(string), m.(nginx.Config), d.Get("markers").(map[string]interface{})) if err != nil { return err }