mirror of
https://github.com/kreuzwerker/terraform-provider-docker.git
synced 2025-12-18 23:06:10 -05:00
* chore: Upgrade golangci-lint to next major version * chore: Add //nolint to new tests --------- Co-authored-by: Martin Wentzel <junker@monoceres.uberspace.de>
53 lines
1.2 KiB
Go
53 lines
1.2 KiB
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 '/'")
|
|
}
|
|
})
|
|
|
|
http.HandleFunc("/newroute", func(w http.ResponseWriter, r *http.Request) {
|
|
w.WriteHeader(http.StatusOK)
|
|
_, err = w.Write([]byte("new Route!"))
|
|
if err != nil {
|
|
log.Fatalln("failed to write for path '/newroute'")
|
|
}
|
|
})
|
|
|
|
err = http.ListenAndServe(listenAddr, nil)
|
|
if err != nil {
|
|
log.Fatalf("failed to listen and server on port '%s'", listenAddr)
|
|
}
|
|
}
|