terraform-provider-docker/scripts/testing/v1/main.go
Martin dacb5dfe73
chore: Upgrade golangci-lint to next major version (#686)
* chore: Upgrade golangci-lint to next major version

* chore: Add //nolint to new tests

---------

Co-authored-by: Martin Wentzel <junker@monoceres.uberspace.de>
2025-04-15 18:54:25 +02:00

45 lines
961 B
Go

package main
import (
"encoding/json"
"fmt"
"log"
"net/http"
"os"
)
const listenAddr = ":8080"
type config struct {
Prefix string `json:"prefix"`
}
func main() {
configsContent, err := os.ReadFile("configs.json")
if err != nil {
log.Fatalf("cannot open 'configs.json': %s", err)
}
var configs config
err = json.Unmarshal(configsContent, &configs)
if err != nil {
log.Fatalf("cannot unmarshal 'configs.json': %s", err)
}
http.HandleFunc("/health", func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
})
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
_, err = w.Write([]byte(fmt.Sprintf("%s - Hello World!", configs.Prefix))) //nolint:staticcheck
if err != nil {
log.Fatalln("failed to write for path '/'")
}
})
err = http.ListenAndServe(listenAddr, nil)
if err != nil {
log.Fatalf("failed to listen and server on port '%s'", listenAddr)
}
}