diff --git a/.gitea/workflows/create-weekly-analytics-stats.yaml b/.gitea/workflows/create-weekly-analytics-stats.yaml index c6f87bd..a797146 100644 --- a/.gitea/workflows/create-weekly-analytics-stats.yaml +++ b/.gitea/workflows/create-weekly-analytics-stats.yaml @@ -53,7 +53,7 @@ jobs: git config --global user.name "gitea-actions[bot]" git config --global user.email "actions@users.noreply.local" git checkout -B analytics-update - git add analytics/ + git add otc_metadata/analytics/ if git diff --cached --quiet; then echo "No changes to commit" else diff --git a/otc_metadata/analytics/__init__.py b/otc_metadata/analytics/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/otc_metadata/analytics/data.py b/otc_metadata/analytics/data.py new file mode 100644 index 0000000..131f6ff --- /dev/null +++ b/otc_metadata/analytics/data.py @@ -0,0 +1,47 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from pathlib import Path +import json + +analytics_path = Path("otc_metadata/analytics/public") + +cloud_environments = [ + 'eu_de', + 'swiss' +] +analytics_data = {k: [] for k in cloud_environments} + +# Open and read the json data files +for env in cloud_environments: + file_path = analytics_path.joinpath(f"{env}.json") + with open(file_path, 'r') as file: + analytics_data[env] = json.load(file) + + +class AnalyticsData(object): + """Encapsulate OTC Analystics data""" + + def __init__(self): + self._analytics_data = analytics_data + + def all_analytics_data(self): + """returns all analytics data""" + return self._analytics_data + + def analytics_data_by_cloud_environment(self, cloud_environment): + """returns all analytics data""" + if cloud_environment and cloud_environment in self._analytics_data: + return self._analytics_data[cloud_environment] + else: + raise ValueError(f"cloud_environment '{cloud_environment}' does not exist.") diff --git a/analytics/public/eu_de.json b/otc_metadata/analytics/public/eu_de.json similarity index 100% rename from analytics/public/eu_de.json rename to otc_metadata/analytics/public/eu_de.json diff --git a/analytics/public/swiss.json b/otc_metadata/analytics/public/swiss.json similarity index 100% rename from analytics/public/swiss.json rename to otc_metadata/analytics/public/swiss.json diff --git a/tools/collect_statistics.py b/tools/collect_statistics.py index 069003a..4b1405d 100755 --- a/tools/collect_statistics.py +++ b/tools/collect_statistics.py @@ -150,7 +150,7 @@ def save_to_file(data, environment, cloud_environment): """ Saves data in the folder ./analytics//.json """ - folder = os.path.join("analytics", environment) + folder = os.path.join("otc_metadata", "analytics", environment) os.makedirs(folder, exist_ok=True) filename = os.path.join(folder, f"{cloud_environment}.json")