Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '_support/s3-publish')
-rwxr-xr-x_support/s3-publish43
1 files changed, 43 insertions, 0 deletions
diff --git a/_support/s3-publish b/_support/s3-publish
new file mode 100755
index 000000000..358de8fef
--- /dev/null
+++ b/_support/s3-publish
@@ -0,0 +1,43 @@
+#!/usr/bin/env ruby
+require 'digest'
+require 'fileutils'
+require_relative 'run.rb'
+
+BUILD_DIR = '_support/release'
+BUILD_ID = capture!(%w[git log -1 --format=%H]).chomp
+TARBALL = "gitaly-#{BUILD_ID}.tar.gz"
+S3_BUCKET = ENV.fetch('S3_BUCKET')
+
+def main
+ FileUtils.rm_rf(BUILD_DIR)
+ [
+ %w[linux amd64],
+ %w[darwin amd64],
+ ].each do |platform|
+ build_platform(*platform)
+ end
+ print_sha256
+ FileUtils.mkdir_p(BUILD_DIR)
+ run!(%W[tar -zcf #{File.join(Dir.pwd, TARBALL)} .], BUILD_DIR)
+ run!(%W[aws s3 cp --acl public-read #{TARBALL} s3://#{File.join(S3_BUCKET, BUILD_ID[0, 2], TARBALL)}])
+end
+
+def build_platform(os, arch)
+ destdir = File.join(BUILD_DIR, os, arch)
+ FileUtils.mkdir_p(destdir)
+ run!(%W[make GOOS=#{os} GOARCH=#{arch} DESTDIR=#{destdir}])
+end
+
+def print_sha256
+ puts
+ Dir.chdir(BUILD_DIR) do
+ Dir["**/*"].each do |entry|
+ next if File.directory?(entry)
+ sha = Digest::SHA256.file(entry)
+ puts "#{sha} #{entry}"
+ end
+ end
+ puts
+end
+
+main