feat: initialize

This commit is contained in:
2024-11-30 01:22:51 +03:30
commit 3b0aff5688
16 changed files with 761 additions and 0 deletions

69
cmd/operator/main.go Normal file
View File

@@ -0,0 +1,69 @@
package main
import (
"flink-kube-operator/internal/config"
"flink-kube-operator/internal/managed_job"
"fmt"
"log"
"os"
"gitea.com/logicamp/lc"
"github.com/dgraph-io/badger/v4"
api "github.com/logi-camp/go-flink-client"
"go.uber.org/zap"
)
func main() {
lc.Logger.Debug("start")
db, err := badger.Open(badger.DefaultOptions("./db"))
if err != nil {
lc.Logger.Fatal("[main] error on open db", zap.Error(err))
}
defer db.Close()
c, err := api.New("127.0.0.1:8081")
if err != nil {
panic(err)
}
// get cluster clusterConfig
clusterConfig, err := c.Config()
if err != nil {
panic(err)
}
fmt.Println(clusterConfig)
jars, err := c.Jars()
if err != nil {
lc.Logger.Error("error on getting jars", zap.Error(err))
}
lc.Logger.Debug("[main] jars", zap.Any("jars", jars))
jobs, err := c.Jobs()
if err != nil {
lc.Logger.Error("error on getting jars", zap.Error(err))
}
lc.Logger.Debug("[main] jobs", zap.Any("jobs", jobs))
config := lc.LoadYamlConfig[config.Config]("./config.yaml")
for _, jobDef := range config.Jobs {
managed_job.NewManagedJob(c, db, jobDef)
}
for _, job := range jobs.Jobs {
job, err := c.Job(job.ID)
if err != nil {
lc.Logger.Error("error getting job info", zap.Error(err))
continue
}
if job.State == "RUNNING" {
lc.Logger.Debug("[main] running job", zap.String("jobId", job.ID))
}
// lc.Logger.Debug("[main]", zap.Any("job", job))
}
cancelChan := make(chan os.Signal, 1)
sig := <-cancelChan
log.Printf("Caught signal %v", sig)
}