Sha256: 50a2bbe41175d40e0b04b60ba7ec366d56e55c5f16404299a927bbddadf4b1b9

Contents?: true

Size: 1.14 KB

Versions: 1

Compression:

Stored size: 1.14 KB

Contents

#!/usr/bin/env ruby

require 'upload-ios-snapshot-test-case'

bucket_name = ENV['UPLOAD_IOS_SNAPSHOT_BUCKET_NAME']

if bucket_name == nil
	abort "error: bucket name must be specified in environment UPLOAD_IOS_SNAPSHOT_BUCKET_NAME variable"
end

aws_key = ENV['AWS_ACCESS_KEY_ID']
aws_secret = ENV['AWS_SECRET_ACCESS_KEY']
if aws_key == nil || aws_secret == nil
	abort "error: AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY must be defined as environment variables"
end

path_prefix = ENV['UPLOAD_IOS_SNAPSHOT_BUCKET_PREFIX'] || '/'
if !path_prefix.end_with?('/')
	path_prefix += '/'
end

s3 = AWS::S3.new
bucket = s3.buckets[bucket_name]
manager = UploadManager.new(bucket, path_prefix)

ARGF.each_line do |line|
	if line.start_with?('ksdiff')
		parts = line.split(/"/)
		if (parts.count >= 4)
			expected_path = parts[1]
			actual_path = parts[3]
			manager.enqueue_upload(expected_path, actual_path)
		end
	end

	# Print the line normally, saving output for the end
	print line
end

now = DateTime.now()
folder_name = now.strftime('%Y-%m-%d--%H-%M')

failures_address = manager.upload(folder_name)
if failures_address
	$stderr.puts "Failures: " + failures_address
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
upload-ios-snapshot-test-case-0.0.1 bin/upload-ios-snapshot-test-case