summaryrefslogtreecommitdiff
path: root/app/config.go
blob: 66531aa738494e7f99567f73ecfc9ab4323544a9 (plain) (blame)
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
package app

import (
	"gitrepo.ru/neonxp/rss2world/internal/rss"
	"gitrepo.ru/neonxp/rss2world/internal/telegram"

	"github.com/caarlos0/env/v11"
)

type Config struct {
	RSS      *rss.Config
	Telegram *telegram.Config
}

func NewConfig() (*Config, error) {
	cfg := &Config{RSS: &rss.Config{}, Telegram: &telegram.Config{}}
	if err := env.Parse(cfg.RSS); err != nil {
		return nil, err
	}
	if err := env.Parse(cfg.Telegram); err != nil {
		return nil, err
	}

	return cfg, nil
}