From 755f81cb04c3c49379a5e0aa7b5322edd51d08a6 Mon Sep 17 00:00:00 2001 From: Fedorov Vladimir Date: Mon, 14 Aug 2023 01:45:23 +0700 Subject: [PATCH] add Dockerfile --- .gitignore | 1 + README.md | 23 +++++++++++++++++++++++ build/ci/Dockerfile | 3 +++ cmd/butler/main.go | 16 ++++++++++------ go.mod | 5 +++-- go.sum | 2 ++ 6 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 .gitignore create mode 100644 build/ci/Dockerfile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2eea525 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env \ No newline at end of file diff --git a/README.md b/README.md index 3fda893..cb3aecf 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,26 @@ # BUTLER ## Дворецкий Константин + +Телеграм бот который тегает активных (которых бот видел) участников группы + +### Как пользоваться + +- Добавить в чат +- Попросить всех участников поприветствовать бота +- Написать сообщение с @all/@все или сообщение "Ау" (регистр последнего не важен) + +### Конфигурация и запуск + +Для работы создать файл ```.env``` + +Локально + +```txt +TELEGRAM_TOKEN=your_token +POSTGRES_URL_CONNECT=postgresql://user:password@hos:port/db?sslmode=disable +``` + +```sh +go run cmd/butler/main.go +``` diff --git a/build/ci/Dockerfile b/build/ci/Dockerfile new file mode 100644 index 0000000..a802427 --- /dev/null +++ b/build/ci/Dockerfile @@ -0,0 +1,3 @@ +FROM scratch +COPY butler / +CMD [ "./butler" ] diff --git a/cmd/butler/main.go b/cmd/butler/main.go index 0dbebd2..f55deae 100644 --- a/cmd/butler/main.go +++ b/cmd/butler/main.go @@ -4,6 +4,8 @@ import ( "context" "os" + "github.com/joho/godotenv" + "git.3crabs.ru/VLADIMIR/butler/internal/modules/messenger/telegram" "git.3crabs.ru/VLADIMIR/butler/internal/modules/storage/postgres" "git.3crabs.ru/VLADIMIR/butler/internal/services/bot" @@ -12,16 +14,18 @@ import ( ) func main() { - args := os.Args[1:] - - tgToken := args[0] - messengerTelegram, err := telegram.NewMessengerTelegram(tgToken) + if err := godotenv.Load(); err != nil { + panic(err) + } + + telegarmToken := os.Getenv("TELEGRAM_TOKEN") + messengerTelegram, err := telegram.NewMessengerTelegram(telegarmToken) if err != nil { panic(err) } - urlConnect := args[1] - storage, err := postgres.NewStoragePostgres(urlConnect) + postgresUrlConnect := os.Getenv("POSTGRES_URL_CONNECT") + storage, err := postgres.NewStoragePostgres(postgresUrlConnect) if err != nil { panic(err) } diff --git a/go.mod b/go.mod index 1bfe9f3..e421f2e 100644 --- a/go.mod +++ b/go.mod @@ -4,11 +4,12 @@ go 1.20 require ( github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 + github.com/joho/godotenv v1.5.1 go.uber.org/mock v0.2.0 ) require ( - github.com/lib/pq v1.10.9 // indirect - github.com/samber/lo v1.38.1 // indirect + github.com/lib/pq v1.10.9 + github.com/samber/lo v1.38.1 golang.org/x/exp v0.0.0-20220303212507-bbda1eaf7a17 // indirect ) diff --git a/go.sum b/go.sum index 0a82542..474f1a4 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,7 @@ github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 h1:wG8n/XJQ07TmjbITcGiUaOtXxdrINDz1b0J1w0SzqDc= github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1/go.mod h1:A2S0CWkNylc2phvKXWBBdD3K0iGnDBGbzRpISP2zBl8= +github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0= +github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/samber/lo v1.38.1 h1:j2XEAqXKb09Am4ebOg31SpvzUTTs6EN3VfgeLUhPdXM=