summaryrefslogtreecommitdiff
path: root/SetMode.go
blob: 3ea7d0ce7d5eff7b1b9b61a9424152b3b8a2a40d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright 2025 WIT.COM Inc Licensed GPL 3.0

package forgepb

import (
	"go.wit.com/lib/env"
	"go.wit.com/log"
)

func (f *Forge) SetMode(newmode ForgeMode) error {
	if f.mode == newmode {
		// nothing changed
		return nil
	}
	f.mode = newmode
	err := env.Set("mode", newmode.String())
	if err != nil {
		panic("env.Set() doesn't work")
	}
	if env.Verbose() {
		log.Info("saving new mode", newmode)
	}
	err = env.Save()
	if err != nil {
		panic("env.Save() doesn't work")
	}
	return err
}