From 6120463088251675ea344912785e88f516739f3f Mon Sep 17 00:00:00 2001 From: christolis Date: Mon, 28 Aug 2023 21:56:25 +0300 Subject: [PATCH 1/4] feat: update .gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 39c8ec2..2c157a0 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,7 @@ build bin .vscode .idea -.env +config.json .classpath .project From 14ad75e605c5192fe18b73946217ea6a5030a4bc Mon Sep 17 00:00:00 2001 From: christolis Date: Mon, 28 Aug 2023 21:57:32 +0300 Subject: [PATCH 2/4] feat(env): switch from .env to config.json --- .env.example | 16 ---------------- app/build.gradle | 1 - app/config-example.json | 16 ++++++++++++++++ app/src/main/java/bot/App.java | 22 +++++++++++++--------- 4 files changed, 29 insertions(+), 26 deletions(-) delete mode 100644 .env.example create mode 100644 app/config-example.json diff --git a/.env.example b/.env.example deleted file mode 100644 index 1e7e4d1..0000000 --- a/.env.example +++ /dev/null @@ -1,16 +0,0 @@ -BOT_TOKEN_DEV="" -BOT_TOKEN_PROD="" - -KEY_DEEPL="" -KEY_RAPID_API="" - -ROLE_ID_VOICE_CHAT="<@Voice Chat role ID>" -ROLE_ID_TOTD="<@TOTD role ID>" -ROLE_ID_WOTD="<@WOTD role ID>" - -CHANNEL_ID_CHAT="#chat text channel ID" -CHANNEL_ID_WOTD="#wotd text channel ID" - -#Database -MONGODB_URI="mongodb://:" -MONGODB_DATABASE="learn_english" diff --git a/app/build.gradle b/app/build.gradle index faa38e1..16dc5d5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -35,7 +35,6 @@ dependencies { testImplementation 'org.springframework.boot:spring-boot-starter-test' implementation 'com.konghq:unirest-java:3.14.5' - implementation 'io.github.cdimascio:dotenv-java:3.0.0' implementation 'org.apache.logging.log4j:log4j-api:2.20.0' implementation 'org.apache.logging.log4j:log4j-core:2.20.0' implementation "com.deepl.api:deepl-java:1.3.0" diff --git a/app/config-example.json b/app/config-example.json new file mode 100644 index 0000000..e6b3d47 --- /dev/null +++ b/app/config-example.json @@ -0,0 +1,16 @@ +{ + "BOT_TOKEN_DEV": "", + "BOT_TOKEN_PROD": "", + + "KEY_DEEPL": "", + "KEY_RAPID_API": "", + + "ROLE_ID_VOICE_CHAT": "<@Voice Chat role ID>", + "ROLE_ID_TOTD": "<@TOTD role ID>", + "ROLE_ID_WOTD": "<@WOTD role ID>", + "CHANNEL_ID_CHAT": "#chat text channel ID", + "CHANNEL_ID_WOTD": "#wotd text channel ID", + + "MONGODB_URI": "mongodb://:", + "MONGODB_DATABASE": "learn_english" +} diff --git a/app/src/main/java/bot/App.java b/app/src/main/java/bot/App.java index fbc8df4..29b1e20 100644 --- a/app/src/main/java/bot/App.java +++ b/app/src/main/java/bot/App.java @@ -5,9 +5,12 @@ import bot.service.UserService; import bot.task.StreakResetTask; import com.deepl.api.Translator; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import com.mongodb.BasicDBObject; -import io.github.cdimascio.dotenv.Dotenv; import it.sauronsoftware.cron4j.Scheduler; +import java.io.FileReader; import java.util.ArrayList; import java.util.Collection; import java.util.List; @@ -40,7 +43,7 @@ public class App implements ApplicationRunner { public static final Scheduler scheduler = new Scheduler(); - private static Dotenv dotenv; + private static JsonObject config; private static Translator translator; public static List listeners = new ArrayList<>(); @@ -168,20 +171,21 @@ public static Translator getTranslator() { } public static String getenv(String key) { - if (dotenv == null) { + if (config == null) { try { - dotenv = Dotenv.configure().directory("..").load(); + config = JsonParser.parseReader(new FileReader("config.json")).getAsJsonObject(); } catch (Exception e) { - dotenv = null; + config = null; } } - // Prioritize .env first - String value = null; + // Prioritize config first + JsonElement value = null; - if (dotenv != null) value = dotenv.get(key); + System.out.println(key); + if (config != null) value = config.get(key); - return value != null ? value : System.getenv(key); + return value != null ? value.getAsString() : System.getenv(key); } public static void main(String[] args) { From 6e4bcc70695aa29ec8a033f0af63e4ea20909fb5 Mon Sep 17 00:00:00 2001 From: christolis Date: Mon, 28 Aug 2023 22:01:04 +0300 Subject: [PATCH 3/4] feat(env): switch to one type of bot token --- app/src/main/java/bot/App.java | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/app/src/main/java/bot/App.java b/app/src/main/java/bot/App.java index 29b1e20..847c96f 100644 --- a/app/src/main/java/bot/App.java +++ b/app/src/main/java/bot/App.java @@ -82,17 +82,7 @@ public void launch() { scheduler.start(); try { - String envVar = App.getenv("PROD_BUILD"); - int isProdBuild; - - if (envVar != null) { - isProdBuild = Integer.parseInt(envVar); - } else { - isProdBuild = 0; - } - - String botToken = isProdBuild == 1 ? "BOT_TOKEN_PROD" : "BOT_TOKEN_DEV"; - JDABuilder jdaBuilder = JDABuilder.createDefault(App.getenv(botToken)); + JDABuilder jdaBuilder = JDABuilder.createDefault(App.getenv("BOT_TOKEN")); jdaBuilder.enableIntents(GatewayIntent.GUILD_VOICE_STATES); commands = SpringContext.getBeansOfType(BotCommand.class); From 10b40389ef76424234a7e5f8122a262abeccc253 Mon Sep 17 00:00:00 2001 From: christolis Date: Mon, 28 Aug 2023 22:04:47 +0300 Subject: [PATCH 4/4] feat(config): update config-example.json --- app/config-example.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/config-example.json b/app/config-example.json index e6b3d47..080f923 100644 --- a/app/config-example.json +++ b/app/config-example.json @@ -1,6 +1,5 @@ { - "BOT_TOKEN_DEV": "", - "BOT_TOKEN_PROD": "", + "BOT_TOKEN": "", "KEY_DEEPL": "", "KEY_RAPID_API": "",