runfile-tasks 1.0.2 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/docker.runfile +17 -2
  3. data/gem.runfile +12 -10
  4. data/yard.runfile +3 -3
  5. metadata +10 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d92aedb996f39b43aac546e5965d370fa52fd047cea58d7bab29f8018217fc3
4
- data.tar.gz: 20cea24b2910446df432366a8c9ab89b02c1b2179382f28e53beb765b4b3a665
3
+ metadata.gz: 460c71754f82e1cf33b023b45ec97225d115404837c06542d2a32dc175de9236
4
+ data.tar.gz: d1901fec6a5bb8104e54874b1d7cb4c1cc36194a62f4a44974be5e603e34baf5
5
5
  SHA512:
6
- metadata.gz: fe42ad814a78022b49b6428e4a7f5a8d402a0928bc9c4f71afd1272431196d53d24a884d0c28effa0a5ac3be272d2b177424f13f5ca42eef9ebf1d67224900de
7
- data.tar.gz: ced49d5275af7f273a337e187e1fa1de68596bc816591cbb126d2c216e9d1525113735534d2176b6b174265e123f508f268ae7a687253b86cf7cd830e351e774
6
+ metadata.gz: b6ed197b4601ae82b3da4f6258c00b23de28ac3211f2b70268716bd06959d640f4386bb99d96db9c1f0bc1949942f2d6732b9876d503a5fa2cbf6ba3e0f8851c
7
+ data.tar.gz: c0b855393735047e70b0f078425d3b20aef4c23487857b7218c310517b3e6774313b7ba0fc4e63c1eecaf29dd662439cc331368064804edf33f2ea95986693f5
data/docker.runfile CHANGED
@@ -8,11 +8,11 @@ action :build, :b do
8
8
  say "g`Building docker image #{image}`"
9
9
  run "docker build -t #{image} ."
10
10
  run "docker tag #{image} #{image}:#{version}"
11
- run "docker images | grep #{image}"
11
+ run "docker images |grep #{image}"
12
12
  end
13
13
 
14
14
  help 'Run the image with --version and compare it with the provided version'
15
- action :test, :t do |_args|
15
+ action :test, :t do
16
16
  docker_version = `docker run --rm #{image} --version`.chomp
17
17
  if docker_version == version
18
18
  say "g`PASS: docker version is #{docker_version}`"
@@ -31,6 +31,21 @@ action :push, :p do
31
31
  run "docker push #{image}:#{version}"
32
32
  end
33
33
 
34
+ help 'Build the image for multiple platforms and push'
35
+ usage '(multi | m) [PLATFORMS...]'
36
+ param 'PLATFORMS', 'List of platforms [default: linux/amd64 linux/arm64v8]'
37
+ action :multi, :m do |args|
38
+ platforms = args['PLATFORMS']
39
+ platforms = %w[linux/amd64 linux/arm64v8] if platforms.empty?
40
+
41
+ say "g`Building and pushing docker image #{image}`"
42
+ say "g`Platforms: #{platforms}`"
43
+ run "docker buildx build --push --platform #{platforms.join ','} -t #{image} -t #{image}:#{version} ."
44
+
45
+ say "g`Inspecting platforms for #{image}`"
46
+ run "docker buildx imagetools inspect #{image}:#{version} |grep Platform"
47
+ end
48
+
34
49
  helpers do
35
50
  def image
36
51
  context[:image]
data/gem.runfile CHANGED
@@ -4,18 +4,15 @@ summary 'Gem management commands'
4
4
 
5
5
  require_context :private, default: false
6
6
 
7
- help 'Build and optionally install the gem'
8
- usage '(build | b) [--install]'
9
- option '--install, -i', 'Install after building'
10
- action :build, :b do |args|
11
- say "g`Building #{gemname}`"
12
- run "gem build #{gemname}.gemspec --output #{gemfile}"
13
- install_gem if args['--install']
7
+ help 'Build the gem'
8
+ usage '(build | b)'
9
+ action :build, :b do |_args|
10
+ build_gem
14
11
  end
15
12
 
16
- help 'Install the last built gem'
13
+ help 'Build and install the gem'
17
14
  action :install, :i do
18
- need_gemfile
15
+ build_gem
19
16
  install_gem
20
17
  end
21
18
 
@@ -47,7 +44,7 @@ helpers do
47
44
  gemspec = Dir['*.gemspec'].first
48
45
  raise UserError, 'Cannot find any *.gemspec' unless gemspec
49
46
 
50
- Gem::Specification::load(gemspec).name
47
+ Gem::Specification.load(gemspec).name
51
48
  end
52
49
  end
53
50
 
@@ -65,6 +62,11 @@ helpers do
65
62
  run "gem install --local #{gemfile}"
66
63
  end
67
64
 
65
+ def build_gem
66
+ say "g`Building #{gemname}`"
67
+ run "gem build #{gemname}.gemspec --output #{gemfile}"
68
+ end
69
+
68
70
  def need_gemfile
69
71
  raise UserError, "File not found #{gemfile}" unless File.exist? gemfile
70
72
  end
data/yard.runfile CHANGED
@@ -1,8 +1,8 @@
1
1
  summary 'YARD documentation commands'
2
2
 
3
- help "Run YARD server"
4
- usage "server [--port PORT]"
5
- option "--port, -p PORT", "Set server port [default: 3000]"
3
+ help 'Run YARD server'
4
+ usage 'server [--port PORT]'
5
+ option '--port, -p PORT', 'Set server port [default: 3000]'
6
6
  action :server do |args|
7
7
  system "yard server --server puma --port #{args['--port']} --bind 0.0.0.0 --reload"
8
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runfile-tasks
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Danny Ben Shitrit
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-27 00:00:00.000000000 Z
11
+ date: 2024-11-15 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A collection of tasks for Runfile
14
14
  email: db@dannyben.com
@@ -24,8 +24,11 @@ homepage: https://github.com/DannyBen/runfile-tasks
24
24
  licenses:
25
25
  - MIT
26
26
  metadata:
27
+ bug_tracker_uri: https://github.com/DannyBen/runfile-tasks/issues
28
+ changelog_uri: https://github.com/DannyBen/runfile-tasks/blob/master/CHANGELOG.md
29
+ source_code_uri: https://github.com/DannyBen/runfile-tasks
27
30
  rubygems_mfa_required: 'true'
28
- post_install_message:
31
+ post_install_message:
29
32
  rdoc_options: []
30
33
  require_paths:
31
34
  - lib
@@ -33,15 +36,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
33
36
  requirements:
34
37
  - - ">="
35
38
  - !ruby/object:Gem::Version
36
- version: '2.7'
39
+ version: '3.1'
37
40
  required_rubygems_version: !ruby/object:Gem::Requirement
38
41
  requirements:
39
42
  - - ">="
40
43
  - !ruby/object:Gem::Version
41
44
  version: '0'
42
45
  requirements: []
43
- rubygems_version: 3.4.9
44
- signing_key:
46
+ rubygems_version: 3.5.23
47
+ signing_key:
45
48
  specification_version: 4
46
49
  summary: Runfile tasks collection
47
50
  test_files: []