collect output statistics (#44)
Reviewed-on: #44 Reviewed-by: Gode, Sebastian <sebastian.gode@t-systems.com> Co-authored-by: tischrei <tino.schreiber@t-systems.com> Co-committed-by: tischrei <tino.schreiber@t-systems.com>
This commit is contained in:
		@ -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
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										0
									
								
								otc_metadata/analytics/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								otc_metadata/analytics/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										47
									
								
								otc_metadata/analytics/data.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								otc_metadata/analytics/data.py
									
									
									
									
									
										Normal file
									
								
							@ -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.")
 | 
			
		||||
@ -150,7 +150,7 @@ def save_to_file(data, environment, cloud_environment):
 | 
			
		||||
    """
 | 
			
		||||
    Saves data in the folder ./analytics/<environment>/<cloud_environment>.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")
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user