Select Git revision
mage_debug.go
mage_debug.go 2.41 KiB
// +build mage
package main
import (
"context"
"sync"
"github.com/magefile/mage/mg"
"gitlab.com/ship-logic/backends/backend/_magefile"
)
// ====================================================================================
// region Debug
// ====================================================================================
// build a debug build and start sam
func Debug(ctx context.Context) error {
mg.Deps(clearCDKCache)
mg.Deps(compileCDKTypeScript)
// Build
api := "handler_api"
if err := _magefile.Build(api, true); err != nil {
return err
}
// Create template file
env := _magefile.CurrentEnv()
cdkDir := "./cdk"
if err := _magefile.CDKSynthDebug(cdkDir, env, api); err != nil {
return err
}
err := _magefile.SamStartApi(ctx, env, api, true)
return err
}
// build a debug build and invoke the sqs queue
func DebugSQS(ctx context.Context) error {
mg.Deps(clearCDKCache)
mg.Deps(compileCDKTypeScript)
// Build
sqs := "handler_sqs"
if err := _magefile.Build(sqs, true); err != nil {
return err
}
// Create template file
cdkDir := "./cdk"
env := _magefile.CurrentEnv()
if err := _magefile.CDKSynthDebug(cdkDir, env, sqs); err != nil {
return err
}
functions, err := _magefile.FunctionFromTemplate("core/" + sqs + "/template.yml")
if err != nil {
return err
}
index := _magefile.Select("Choose a function:", functions)
functionName := functions[index]
err = _magefile.SamInvokeSQS(ctx, env, sqs, functionName)
return err
}
// used from golang to build a debug function