@@ -13,16 +13,29 @@ task 'benchmark:archive' do
1313 require 'aws-sdk-s3'
1414 require 'securerandom'
1515
16+ puts 'Archiving benchmark report from GH with ' \
17+ "repo: #{ ENV [ 'GH_REPO' ] } , ref: #{ ENV [ 'GH_REF' ] } , event: #{ ENV [ 'GH_EVENT' ] } "
18+ folder =
19+ if ENV [ 'GH_EVENT' ] == 'pull_request'
20+ ref = ENV [ 'GH_REF' ]
21+ if ENV [ 'GH_REPO' ] == 'aws/aws-sdk-ruby-staging'
22+ "staging-pr/#{ ref } "
23+ else
24+ "pr/#{ ref } "
25+ end
26+ else
27+ 'release'
28+ end
29+ key = "#{ folder } /#{ Time . now . strftime ( '%Y-%m-%d' ) } /benchmark_#{ SecureRandom . uuid } .json"
1630
17- puts "Archiving benchmark report from GH with: #{ ENV [ 'GH_REF' ] } , #{ ENV [ 'GH_EVENT' ] } "
18- ref = ENV [ 'GH_REF' ] || "version-3"
19- event = ENV [ 'GH_EVENT' ] || 'push'
20- client = Aws ::S3 ::Client . new
21-
22- key = "#{ event == 'pull_request' ? 'pr/' + ref : 'release' } /#{ Time . now . strftime ( '%Y-%m-%d' ) } /benchmark_#{ SecureRandom . uuid } .json"
2331 puts "Uploading report to: #{ key } "
24- client . put_object ( bucket : 'aws-sdk-ruby-performance-benchmark-archive' , key : key , body : File . read ( 'benchmark_report.json' ) )
25- puts "Upload complete"
32+ client = Aws ::S3 ::Client . new
33+ client . put_object (
34+ bucket : 'aws-sdk-ruby-performance-benchmark-archive' ,
35+ key : key ,
36+ body : File . read ( 'benchmark_report.json' )
37+ )
38+ puts 'Upload complete'
2639end
2740
2841desc 'Upload benchmarking data to cloudwatch'
@@ -31,7 +44,16 @@ task 'benchmark:put-metrics' do
3144 require 'aws-sdk-cloudwatch'
3245 require_relative '../benchmark/metrics'
3346
34- event = ENV [ 'GH_EVENT' ] == 'pull_request' ? 'pr' : 'release'
47+ event =
48+ if ENV [ 'GH_EVENT' ] == 'pull_request'
49+ if ENV [ 'GH_REPO' ] == 'aws/aws-sdk-ruby-staging'
50+ 'staging-pr'
51+ else
52+ 'pr'
53+ end
54+ else
55+ 'release'
56+ end
3557 report = JSON . parse ( File . read ( 'benchmark_report.json' ) )
3658 target = report [ 'ruby_engine' ] + "-" + report [ 'ruby_version' ] . split ( '.' ) . first ( 2 ) . join ( '.' )
3759
@@ -44,14 +66,12 @@ task 'benchmark:put-metrics' do
4466 env : report [ 'execution_env' ]
4567 }
4668
47- puts "Uploading benchmarking metrics"
48-
69+ puts 'Uploading benchmarking metrics'
4970 client = Aws ::CloudWatch ::Client . new
50-
51- benchmark_data = report [ "benchmark" ]
71+ benchmark_data = report [ 'benchmark' ]
5272 benchmark_data . each do |gem_name , gem_data |
5373 dims = report_dims . merge ( gem : gem_name )
54- gem_data . each do |k , v |
74+ gem_data . each do |k , v |
5575 Benchmark ::Metrics . put_metric ( client , dims , report [ 'timestamp' ] || Time . now , k , v )
5676 end
5777 end
0 commit comments