From dd7dabe839706cd38e6464ef87c8a2b53decd3ae Mon Sep 17 00:00:00 2001 From: augustus Date: Wed, 11 Mar 2026 18:35:54 +0300 Subject: [PATCH] Initial Commit --- .gitignore | 2 ++ application-localhost.yml | 64 ++++++++++++++++++++++++++++++++++++++ application-prod.yml | 64 ++++++++++++++++++++++++++++++++++++++ application-staging.yml | 64 ++++++++++++++++++++++++++++++++++++++ kilimo-core/localhost.yml | 64 ++++++++++++++++++++++++++++++++++++++ kilimo-core/production.yml | 64 ++++++++++++++++++++++++++++++++++++++ kilimo-core/staging.yml | 64 ++++++++++++++++++++++++++++++++++++++ 7 files changed, 386 insertions(+) create mode 100644 .gitignore create mode 100644 application-localhost.yml create mode 100644 application-prod.yml create mode 100644 application-staging.yml create mode 100644 kilimo-core/localhost.yml create mode 100644 kilimo-core/production.yml create mode 100644 kilimo-core/staging.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4ba3243 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/.idea/ +/Configs.iml diff --git a/application-localhost.yml b/application-localhost.yml new file mode 100644 index 0000000..b81ccad --- /dev/null +++ b/application-localhost.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://localhost:5432/kilimo + username: root + password: password + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - http://localhost:9080 +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file diff --git a/application-prod.yml b/application-prod.yml new file mode 100644 index 0000000..7110a34 --- /dev/null +++ b/application-prod.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://127.0.0.1:5432/kilimo + username: apiuser + password: 4hKiOnTqbP2kLwR + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - https://zp1v56uxy8rdx5ypatb0ockcb9tr6a-oci3-m1d8v647--5173--96435430.local-credentialless.webcontainer-api.io/ +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file diff --git a/application-staging.yml b/application-staging.yml new file mode 100644 index 0000000..f31ddf5 --- /dev/null +++ b/application-staging.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://145.241.246.130:5432/kilimo + username: apiuser + password: 4hKiOnTqbP2kLwR + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - https://zp1v56uxy8rdx5ypatb0ockcb9tr6a-oci3-m1d8v647--5173--96435430.local-credentialless.webcontainer-api.io/ +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file diff --git a/kilimo-core/localhost.yml b/kilimo-core/localhost.yml new file mode 100644 index 0000000..b81ccad --- /dev/null +++ b/kilimo-core/localhost.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://localhost:5432/kilimo + username: root + password: password + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - http://localhost:9080 +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file diff --git a/kilimo-core/production.yml b/kilimo-core/production.yml new file mode 100644 index 0000000..7110a34 --- /dev/null +++ b/kilimo-core/production.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://127.0.0.1:5432/kilimo + username: apiuser + password: 4hKiOnTqbP2kLwR + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - https://zp1v56uxy8rdx5ypatb0ockcb9tr6a-oci3-m1d8v647--5173--96435430.local-credentialless.webcontainer-api.io/ +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file diff --git a/kilimo-core/staging.yml b/kilimo-core/staging.yml new file mode 100644 index 0000000..f31ddf5 --- /dev/null +++ b/kilimo-core/staging.yml @@ -0,0 +1,64 @@ +server: + port: 9080 +spring: + application: + name: farm-kilimo-ms-core + datasource: + url: jdbc:postgresql://145.241.246.130:5432/kilimo + username: apiuser + password: 4hKiOnTqbP2kLwR + driver-class-name: org.postgresql.Driver + jpa: + show-sql: false + hibernate: + ddl-auto: update + database-platform: org.hibernate.dialect.PostgreSQLDialect +logging: + pattern: + console: "%d{HH:mm:ss.SSS} [%X{requestId}] %-5level %logger{36} - %msg%n" +cors: + allowed-origins: + - https://zp1v56uxy8rdx5ypatb0ockcb9tr6a-oci3-m1d8v647--5173--96435430.local-credentialless.webcontainer-api.io/ +jwt: + secret: U7R7yI7oF5wI5Of5qTnS83uWhhRr9mY8ftkbvEtN/fc= + access: + expiration: 900000 + refresh: + expiration: 604800000 + verification: + expiration: 86400000 + device: + expiration: 86400000 +assistant: + base: "You are Kilimo Assistant, an expert in farm and agriculture questions only." + generateJson: "Return a JSON with fields: content (string), violate (bool if outside your expertise)." + generateTitle: "Add a short title field in the JSON." + generateActions: "Add an actions field in the JSON with relevant actions from the list below." + models: + - name: deepseek-gpt-4 + url: https://api.deepseek.com/chat/completions + access: + key: Authorization + value: Bearer sk-52cdbf062bdf4e45aa39734e1bb2f813 + - name: gemini-3-flash-preview + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + access: + key: x-goog-api-key + value: AIzaSyA3DXZUXLIYcMFWaWuZMmtzTU8RMIBg1Yk + actions: + - CREATE_FARM + - START_IRRIGATION + - HARVEST_CROPS + - PEST_CONTROL + - FERTILIZATION + - SOIL_TESTING + - WEATHER_FORECAST + - CROP_SELECTION + - DISEASE_DIAGNOSIS + - YIELD_PREDICTION + - IRRIGATION_SCHEDULING + - MARKET_PRICES + - FARM_EQUIPMENT_MAINTENANCE +supabase: + url: https://sylbynfpltfypiiimxwp.supabase.co + key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InN5bGJ5bmZwbHRmeXBpaWlteHdwIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc2MjM1Njg5OSwiZXhwIjoyMDc3OTMyODk5fQ.4pZqP24rE-cKnXOyrMa88RuNbkKeL7Q2q3IiUCuMwAg \ No newline at end of file