mod_pack.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // package mod_pack -- главный модуль пакера
  2. package mod_pack
  3. import (
  4. "fmt"
  5. "log"
  6. "os"
  7. mKh "gitp78su.ipnodns.ru/svi/kern/v3/kc/helpers"
  8. "gitp78su.ipnodns.ru/svi/packer/lev2/packer"
  9. )
  10. // МодПакер -- главный тип пакера
  11. type МодПакер struct {
  12. пакер *packer.Пакер
  13. }
  14. // НовМодПак -- возвращает новый пакер
  15. func НовМодПак() (*МодПакер, error) {
  16. log.Printf("НовМодПак()\n")
  17. сам := &МодПакер{
  18. пакер: packer.НовПакер(),
  19. }
  20. return сам, nil
  21. }
  22. // Пуск -- запускает пакер в работу
  23. func (sf *МодПакер) Пуск() error {
  24. log.Printf("МодПакер.Пуск()\n")
  25. cmd := os.Getenv("PACKER_CMD")
  26. mKh.Hassert(cmd != "", "МодПакер.Пуск(): env PACKER_CMD not set")
  27. switch cmd {
  28. case "pack":
  29. err := sf.пакер.Пуск()
  30. if err != nil {
  31. return fmt.Errorf("МодПакер.Пуск(): in Пуск IPacker, err=\n\t%w", err)
  32. }
  33. default:
  34. return fmt.Errorf("МодПакер.Пуск(): unknown env PACKER_CMD(%q)", cmd)
  35. }
  36. return nil
  37. }