55
66from slack_sdk import WebClient
77
8+ from sdgym .s3 import parse_s3_path
9+
810OUTPUT_DESTINATION_AWS = 's3://sdgym-benchmark/Debug/Issue_425/'
911UPLOAD_DESTINATION_AWS = 's3://sdgym-benchmark/Debug/Issue_425/'
1012DEBUG_SLACK_CHANNEL = 'sdv-alerts-debug'
@@ -34,6 +36,13 @@ def get_result_folder_name(date_str):
3436 return f'SDGym_results_{ date .month :02d} _{ date .day :02d} _{ date .year } '
3537
3638
39+ def get_s3_console_link (bucket , prefix ):
40+ """Get the S3 console link for the specified bucket and prefix."""
41+ return (
42+ f'https://s3.console.aws.amazon.com/s3/buckets/{ bucket } ?prefix={ prefix } &showversions=false'
43+ )
44+
45+
3746def _get_slack_client ():
3847 """Create an authenticated Slack client.
3948
@@ -55,20 +64,21 @@ def post_slack_message(channel, text):
5564def post_benchmark_launch_message (date_str ):
5665 """Post a message to the SDV Alerts Slack channel when the benchmark is launched."""
5766 channel = DEBUG_SLACK_CHANNEL
67+ folder_name = get_result_folder_name (date_str )
68+ bucket , prefix = parse_s3_path (OUTPUT_DESTINATION_AWS )
69+ url_link = get_s3_console_link (bucket , f'{ prefix } { folder_name } /' )
5870 body = '🏃 SDGym benchmark has been launched! EC2 Instances are running. '
59- body += 'Intermediate results can be found '
60- body += f'<{ OUTPUT_DESTINATION_AWS } { get_result_folder_name (date_str )} |here>.\n '
71+ body += f'Intermediate results can be found <<{ url_link } |here>.\n '
6172 post_slack_message (channel , body )
6273
6374
6475def post_run_summary (folder_name ):
6576 """Post run summary to sdv-alerts slack channel."""
6677 channel = DEBUG_SLACK_CHANNEL
78+ bucket , prefix = parse_s3_path (OUTPUT_DESTINATION_AWS )
79+ url_link = get_s3_console_link (bucket , f'{ prefix } { folder_name } /{ folder_name } _summary.csv' )
6780 body = ''
6881 body += f'🤸🏻♀️ SDGym benchmark results for { folder_name } are available!🏋️♀️ \n '
69- body += (
70- f'Check the results <{ OUTPUT_DESTINATION_AWS } { folder_name } /{ folder_name } _summary'
71- '.csv|here>.\n '
72- )
82+ body += f'Check the results <<{ url_link } |here>.\n '
7383
7484 post_slack_message (channel , body )
0 commit comments