@@ -3,42 +3,58 @@ require 'bundler/setup'
3
3
4
4
PACKAGE_NAME = "pact"
5
5
VERSION = File . read ( 'VERSION' ) . strip
6
- TRAVELING_RUBY_VERSION = "20210206-2.4.10 "
7
- PLUGIN_CLI_VERSION = "0.0.1 "
6
+ TRAVELING_RUBY_VERSION = "20230508-3.2.2 "
7
+ PLUGIN_CLI_VERSION = "0.1.0 "
8
8
9
- desc "Package pact-ruby-standalone for OSX, Linux x86_64 and Win32 x86_64"
10
- task :package => [ 'package:linux:x86_64' , 'package:osx' , 'package:win32 ' ]
9
+ desc "Package pact-ruby-standalone for OSX, Linux x86_64 and windows x86_64"
10
+ task :package => [ 'package:linux:x86_64' , 'package:linux:arm64' , 'package:osx:x86_64 ' , 'package:osx:arm64' , 'package:windows:x86_64' , 'package:windows:x86 ']
11
11
12
12
namespace :package do
13
13
namespace :linux do
14
14
desc "Package pact-ruby-standalone for Linux x86_64"
15
15
task :x86_64 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -linux-x86_64.tar.gz" ] do
16
16
create_package ( TRAVELING_RUBY_VERSION , "linux-x86_64" , "linux-x86_64" , :unix )
17
17
end
18
- end
19
18
20
- desc "Package pact-ruby-standalone for OS X"
21
- task :osx => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx.tar.gz" ] do
22
- create_package ( TRAVELING_RUBY_VERSION , "osx" , "osx" , :unix )
19
+ desc "Package pact-ruby-standalone for Linux arm64"
20
+ task :arm64 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -linux-arm64.tar.gz" ] do
21
+ create_package ( TRAVELING_RUBY_VERSION , "linux-arm64" , "linux-arm64" , :unix )
22
+ end
23
23
end
24
24
25
- desc "Package pact-ruby-standalone for Win32 x86_64"
26
- task :win32 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -win32-86_64.tar.gz" ] do
27
- create_package ( TRAVELING_RUBY_VERSION , "x86_64-win32" , "win32" , :windows )
25
+ namespace :osx do
26
+ desc "Package pact-ruby-standalone for OS X x86_64"
27
+ task :x86_64 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx-x86_64.tar.gz" ] do
28
+ create_package ( TRAVELING_RUBY_VERSION , "osx-x86_64" , "osx-x86_64" , :unix )
28
29
end
29
30
31
+ desc "Package pact-ruby-standalone for OS X arm64"
32
+ task :arm64 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx-arm64.tar.gz" ] do
33
+ create_package ( TRAVELING_RUBY_VERSION , "osx-arm64" , "osx-arm64" , :unix )
34
+ end
35
+ end
36
+ namespace :windows do
37
+ desc "Package pact-ruby-standalone for windows x86_64"
38
+ task :x86_64 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -windows-x86_64.tar.gz" ] do
39
+ create_package ( TRAVELING_RUBY_VERSION , "windows-x86_64" , "windows-x86_64" , :windows )
40
+ end
41
+ desc "Package pact-ruby-standalone for windows x86"
42
+ task :x86 => [ :bundle_install , "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -windows-x86.tar.gz" ] do
43
+ create_package ( TRAVELING_RUBY_VERSION , "windows-x86" , "windows-x86" , :windows )
44
+ end
45
+ end
30
46
desc "Install gems to local directory"
31
47
task :bundle_install do
32
- if RUBY_VERSION !~ /^2 \. 4 \. /
33
- abort "You can only 'bundle install' using Ruby 2.4 , because that's what Traveling Ruby uses."
48
+ if RUBY_VERSION !~ /^3 \. 2 \. /
49
+ abort "You can only 'bundle install' using Ruby 3.2.2 , because that's what Traveling Ruby uses."
34
50
end
35
51
sh "rm -rf build/tmp"
36
52
sh "mkdir -p build/tmp"
37
53
sh "cp packaging/Gemfile packaging/Gemfile.lock build/tmp/"
38
54
sh "mkdir -p build/tmp/lib/pact/mock_service"
39
55
# sh "cp lib/pact/mock_service/version.rb build/tmp/lib/pact/mock_service/version.rb"
40
56
Bundler . with_clean_env do
41
- sh "cd build/tmp && env BUNDLE_IGNORE_CONFIG=1 bundle lock --add-platform x64-mingw32 && env BUNDLE_IGNORE_CONFIG=1 bundle install --path ../vendor --without development "
57
+ sh "cd build/tmp && env BUNDLE_IGNORE_CONFIG=1 bundle lock --add-platform x64-mingw32 && env BUNDLE_IGNORE_CONFIG=1 BUNDLE_DEPLOYMENT=true bundle install --path ../vendor"
42
58
generate_readme
43
59
end
44
60
sh "rm -rf build/tmp"
@@ -59,12 +75,23 @@ file "build/traveling-ruby-#{TRAVELING_RUBY_VERSION}-linux-x86_64.tar.gz" do
59
75
download_runtime ( TRAVELING_RUBY_VERSION , "linux-x86_64" )
60
76
end
61
77
62
- file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx.tar.gz" do
63
- download_runtime ( TRAVELING_RUBY_VERSION , "osx" )
78
+ file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -linux-arm64.tar.gz" do
79
+ download_runtime ( TRAVELING_RUBY_VERSION , "linux-arm64" )
80
+ end
81
+
82
+ file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx-x86_64.tar.gz" do
83
+ download_runtime ( TRAVELING_RUBY_VERSION , "osx-x86_64" )
84
+ end
85
+
86
+ file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -osx-arm64.tar.gz" do
87
+ download_runtime ( TRAVELING_RUBY_VERSION , "osx-arm64" )
64
88
end
65
89
66
- file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -win32-86_64.tar.gz" do
67
- download_runtime ( TRAVELING_RUBY_VERSION , "x86_64-win32" )
90
+ file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -windows-x86_64.tar.gz" do
91
+ download_runtime ( TRAVELING_RUBY_VERSION , "windows-x86_64" )
92
+ end
93
+ file "build/traveling-ruby-#{ TRAVELING_RUBY_VERSION } -windows-x86.tar.gz" do
94
+ download_runtime ( TRAVELING_RUBY_VERSION , "windows-x86" )
68
95
end
69
96
70
97
def create_package ( version , source_target , package_target , os_type )
195
222
196
223
def download_runtime ( version , target )
197
224
sh "cd build && curl -L -O --fail " +
198
- "http ://d6r77u77i8pq3.cloudfront.net/ releases/traveling-ruby-#{ version } -#{ target } .tar.gz"
225
+ "https ://github.com/YOU54F/traveling-ruby/ releases/download/rel-20230508 /traveling-ruby-#{ version } -#{ target } .tar.gz"
199
226
end
200
227
201
228
def install_plugin_cli ( package_dir , package_target )
@@ -204,11 +231,19 @@ def install_plugin_cli(package_dir, package_target)
204
231
sh "curl -L -o #{ package_dir } /bin/pact-plugin-cli.gz https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v#{ PLUGIN_CLI_VERSION } /pact-plugin-cli-linux-x86_64.gz"
205
232
sh "gunzip -N -f #{ package_dir } /bin/pact-plugin-cli.gz"
206
233
sh "chmod +x #{ package_dir } /bin/pact-plugin-cli"
207
- when "osx"
234
+ when "linux-arm64"
235
+ sh "curl -L -o #{ package_dir } /bin/pact-plugin-cli.gz https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v#{ PLUGIN_CLI_VERSION } /pact-plugin-cli-linux-aarch64.gz"
236
+ sh "gunzip -N -f #{ package_dir } /bin/pact-plugin-cli.gz"
237
+ sh "chmod +x #{ package_dir } /bin/pact-plugin-cli"
238
+ when "osx-x86_64"
208
239
sh "curl -L -o #{ package_dir } /bin/pact-plugin-cli.gz https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v#{ PLUGIN_CLI_VERSION } /pact-plugin-cli-osx-x86_64.gz"
209
240
sh "gunzip -N -f #{ package_dir } /bin/pact-plugin-cli.gz"
210
241
sh "chmod +x #{ package_dir } /bin/pact-plugin-cli"
211
- when "win32"
242
+ when "osx-arm64"
243
+ sh "curl -L -o #{ package_dir } /bin/pact-plugin-cli.gz https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v#{ PLUGIN_CLI_VERSION } /pact-plugin-cli-osx-aarch64.gz"
244
+ sh "gunzip -N -f #{ package_dir } /bin/pact-plugin-cli.gz"
245
+ sh "chmod +x #{ package_dir } /bin/pact-plugin-cli"
246
+ when "windows-x86_64"
212
247
sh "curl -L -o #{ package_dir } /bin/pact-plugin-cli.exe.gz https://github.com/pact-foundation/pact-plugins/releases/download/pact-plugin-cli-v#{ PLUGIN_CLI_VERSION } /pact-plugin-cli-windows-x86_64.exe.gz"
213
248
sh "gunzip -N -f #{ package_dir } /bin/pact-plugin-cli.exe.gz"
214
249
sh "chmod +x #{ package_dir } /bin/pact-plugin-cli.exe"
0 commit comments