| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- package main
- import (
- "fmt"
- "log"
- "myjob/libs/foo"
- "os/exec"
- "time"
- "dario.cat/mergo"
- "git.bazzel.dev/bmallen/helios/state"
- "git.bazzel.dev/bmallen/helios/tools"
- "gopkg.in/yaml.v3"
- )
- var (
- GlobalVar = "bar"
- JobID = state.ID()
- GlobalFunc = func() {}
- )
- func init() {
- log.Println("main init")
- fmt.Println("ID: ", state.ID())
- }
- type Foo struct {
- A *string
- B int64
- }
- func main() {
- log.Println("Hello from main")
- tools.SetLogger(log.Writer())
- fmt.Println(foo.Bar("Kung"))
- GlobalVar = foo.Bar("Kung")
- // Exec Testing
- cmd := exec.Command("whoami")
- log.Println("starting cmd...")
- out, err := cmd.CombinedOutput()
- if err != nil {
- log.Println(err)
- }
- fmt.Print(string(out))
- // Docker Testing
- err = tools.Docker().Image().Build("test:latest", ".", "Dockerfile")
- if err != nil {
- log.Println(err)
- }
- // State Testing
- state.Set("myvar", time.Now())
- // Mergo Testing
- first := "first"
- second := "second"
- src := Foo{
- A: &first,
- B: 2,
- }
- dest := Foo{
- A: &second,
- B: 1,
- }
- mergo.Merge(&dest, src, mergo.WithOverride, mergo.WithoutDereference)
- // Yaml Testing
- y, err := yaml.Marshal(dest)
- if err != nil {
- log.Println(err)
- } else {
- log.Println(string(y))
- }
- // Git Clone
- fmt.Println("# Git Clone")
- err = tools.Git().Clone("https://git.bazzel.dev/bmallen/helios-job-example.git", "main", "repo")
- if err != nil {
- log.Println(err)
- }
- // Terraform Testing
- t := tools.Terraform(".")
- fmt.Println("# Plan")
- p, err := t.Plan()
- if err != nil {
- log.Println(err)
- } else {
- fmt.Println("# Changes")
- for _, v := range p.ResourceChanges {
- fmt.Println(" ", v.Address)
- }
- }
- }
- func Test() {
- }
|