vcpkg_pipeline 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/vcpkg_pipeline/command/publish.rb +11 -3
- data/lib/vcpkg_pipeline/command/scan/all.rb +1 -1
- data/lib/vcpkg_pipeline/command/update/all.rb +1 -1
- data/lib/vcpkg_pipeline/command/update/spec.rb +3 -1
- data/lib/vcpkg_pipeline/command/update/vcport.rb +3 -1
- data/lib/vcpkg_pipeline/command/update.rb +1 -1
- data/lib/vcpkg_pipeline/extension/git_vpl.rb +13 -7
- data/lib/vcpkg_pipeline/extension/vcpkg_vpl.rb +29 -15
- metadata +2 -3
- data/lib/vcpkg_pipeline/command/scan/release.rb +0 -38
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bec9347d6f9cbeb02afb322a7011cc50859d3b489e33a244f4d809ed90594dc3
|
4
|
+
data.tar.gz: 2e8411883dcc7a7cf7f502ea58dee01490f2711bfca8a182a8bd6c281f8fd1a3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6199e01e27504350f80a1609973e97e21c2d9d8f8c4c93216750d3f940e5c030768db0e1c50f94033e1087f0e6c9d90a38db1363b81b7411550f52c86ab3c2c1
|
7
|
+
data.tar.gz: 8cc55c454cdbf12463213a033af6725530560ca7f275e856e302915bb9d581309f17b65a41f86dcefabc150b2d62358e1c214e813805e48ec58798404cc1ab55
|
@@ -2,9 +2,11 @@
|
|
2
2
|
|
3
3
|
require 'vcpkg_pipeline/extension/vcpkg_vpl'
|
4
4
|
|
5
|
+
require 'vcpkg_pipeline/core/log'
|
5
6
|
require 'vcpkg_pipeline/core/scanner'
|
6
7
|
|
7
8
|
require 'vcpkg_pipeline/command/update'
|
9
|
+
require 'vcpkg_pipeline/command/update/all'
|
8
10
|
|
9
11
|
module VPL
|
10
12
|
class Command
|
@@ -18,27 +20,33 @@ module VPL
|
|
18
20
|
CLAide::Argument.new('项目根目录(默认使用当前目录)', false)
|
19
21
|
]
|
20
22
|
def self.options
|
21
|
-
[
|
23
|
+
[
|
24
|
+
['--registry=.', '指定vcpkg的registry目录, 不可为空']
|
25
|
+
].concat(super).concat(options_extension)
|
22
26
|
end
|
23
27
|
|
24
28
|
def self.options_extension_hash
|
25
29
|
Hash[
|
26
|
-
'update' => Update.options,
|
30
|
+
'update' => Update::All.options,
|
27
31
|
]
|
28
32
|
end
|
29
33
|
|
30
34
|
def initialize(argv)
|
31
35
|
@path = argv.shift_argument || Dir.pwd
|
32
36
|
|
37
|
+
@registry = argv.option('registry', '').split(',').first
|
33
38
|
super
|
34
39
|
end
|
35
40
|
|
36
41
|
def run
|
42
|
+
VPL.error("registry目录异常: #{@registry}") unless File.directory? @registry
|
43
|
+
|
37
44
|
Update::All.run([@path] + argv_extension['update'])
|
38
45
|
|
39
46
|
scanner = Scanner.new(@path)
|
40
47
|
|
41
|
-
VCPkg.
|
48
|
+
vcpkg = VCPkg.open(@registry)
|
49
|
+
vcpkg.publish(scanner.vcport)
|
42
50
|
end
|
43
51
|
end
|
44
52
|
end
|
@@ -30,7 +30,7 @@ module VPL
|
|
30
30
|
def run
|
31
31
|
scanner = Scanner.new(@path)
|
32
32
|
|
33
|
-
VPL.info("
|
33
|
+
VPL.info("Debug: #{ENV['Debug'] ? true : false}")
|
34
34
|
VPL.info("Git: #{scanner.git}")
|
35
35
|
VPL.info("CMake: #{scanner.cmake}")
|
36
36
|
VPL.info("VCPort: #{scanner.vcport}")
|
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
require 'vcpkg_pipeline/core/updater'
|
4
4
|
|
5
|
-
require 'vcpkg_pipeline/command/update/all'
|
6
5
|
require 'vcpkg_pipeline/command/update/spec'
|
7
6
|
require 'vcpkg_pipeline/command/update/cmake'
|
8
7
|
require 'vcpkg_pipeline/command/update/vcport'
|
9
8
|
require 'vcpkg_pipeline/command/update/git'
|
9
|
+
require 'vcpkg_pipeline/command/update/all'
|
10
10
|
|
11
11
|
module VPL
|
12
12
|
class Command
|
@@ -11,22 +11,28 @@ module Git
|
|
11
11
|
branches.current.first
|
12
12
|
end
|
13
13
|
|
14
|
-
def quick_push_tag(
|
15
|
-
|
16
|
-
|
14
|
+
def quick_push_tag(new_tag = nil)
|
15
|
+
unless ENV['Debug']
|
16
|
+
has_tag = !new_tag.nil?
|
17
|
+
push(remote, current_branch, has_tag)
|
18
|
+
end
|
19
|
+
VPL.info("Git上传 #{remote} #{current_branch} #{new_tag}")
|
17
20
|
end
|
18
21
|
|
19
22
|
def quick_push(new_tag = nil)
|
20
|
-
|
21
|
-
|
22
|
-
has_tag = !new_tag.empty?
|
23
|
+
has_tag = !new_tag.nil?
|
23
24
|
if has_tag
|
24
25
|
tags.each { |tag| VPL.error("当前版本 #{new_tag} 已发布, 请尝试其他版本号") if tag.name.eql? new_tag }
|
25
26
|
|
26
27
|
add_tag(new_tag)
|
27
28
|
VPL.info("Git提交Tag: #{new_tag}")
|
28
29
|
end
|
29
|
-
quick_push_tag(
|
30
|
+
quick_push_tag(new_tag)
|
31
|
+
end
|
32
|
+
|
33
|
+
def quick_stash(msg)
|
34
|
+
add('.')
|
35
|
+
branch.stashes.save(msg)
|
30
36
|
end
|
31
37
|
|
32
38
|
def to_s
|
@@ -6,12 +6,12 @@ require 'vcpkg_pipeline/core/log'
|
|
6
6
|
|
7
7
|
# VCPkg
|
8
8
|
module VCPkg
|
9
|
-
def self.
|
10
|
-
|
9
|
+
def self.open(path = nil)
|
10
|
+
VCPkg::Base.new(path || root)
|
11
11
|
end
|
12
12
|
|
13
|
-
def self.
|
14
|
-
|
13
|
+
def self.root
|
14
|
+
`echo $VCPKG_ROOT`.sub(/\n/, '')
|
15
15
|
end
|
16
16
|
|
17
17
|
def self.hash(zip_path)
|
@@ -22,20 +22,34 @@ module VCPkg
|
|
22
22
|
`vcpkg format-manifest #{vcpkg_json_path}`
|
23
23
|
end
|
24
24
|
|
25
|
-
|
26
|
-
|
27
|
-
|
25
|
+
# VCPkg::Base
|
26
|
+
class Base
|
27
|
+
attr_accessor :path
|
28
|
+
|
29
|
+
def initialize(path)
|
30
|
+
@path = path
|
31
|
+
end
|
32
|
+
|
33
|
+
def ports
|
34
|
+
"#{@path}/ports"
|
35
|
+
end
|
36
|
+
|
37
|
+
def publish(vcport)
|
38
|
+
name = vcport.vcpkg.name
|
39
|
+
version = vcport.vcpkg.version
|
40
|
+
|
41
|
+
git_vcpkg = Git.open(@path)
|
28
42
|
|
29
|
-
|
30
|
-
git_vcpkg.stashes.all
|
43
|
+
git_vcpkg.quick_stash('保存之前的修改')
|
31
44
|
|
32
|
-
|
45
|
+
port_exist = File.directory? "#{VCPkg.root}/ports/#{name}"
|
33
46
|
|
34
|
-
|
35
|
-
|
47
|
+
`cp -fr #{vcport.port_path} #{ports}/#{name}`
|
48
|
+
`vcpkg x-add-version #{name} --vcpkg-root=#{@path}`
|
36
49
|
|
37
|
-
|
38
|
-
|
39
|
-
|
50
|
+
git_vcpkg.add('.')
|
51
|
+
git_vcpkg.commit("[#{name}] #{port_exist ? 'Update' : 'Add'} #{version}")
|
52
|
+
git_vcpkg.quick_push
|
53
|
+
end
|
40
54
|
end
|
41
55
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vcpkg_pipeline
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 郑贤达
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: claide
|
@@ -86,7 +86,6 @@ files:
|
|
86
86
|
- lib/vcpkg_pipeline/command/scan/all.rb
|
87
87
|
- lib/vcpkg_pipeline/command/scan/branch.rb
|
88
88
|
- lib/vcpkg_pipeline/command/scan/name.rb
|
89
|
-
- lib/vcpkg_pipeline/command/scan/release.rb
|
90
89
|
- lib/vcpkg_pipeline/command/scan/remote.rb
|
91
90
|
- lib/vcpkg_pipeline/command/scan/version.rb
|
92
91
|
- lib/vcpkg_pipeline/command/update.rb
|
@@ -1,38 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'vcpkg_pipeline/core/scanner'
|
4
|
-
|
5
|
-
module VPL
|
6
|
-
class Command
|
7
|
-
class Scan < Command
|
8
|
-
# VPL::Command::Scan::Release
|
9
|
-
class Release < Scan
|
10
|
-
self.summary = '输出 Github Release URL'
|
11
|
-
|
12
|
-
self.description = <<-DESC
|
13
|
-
输出 Github Release URL。
|
14
|
-
DESC
|
15
|
-
|
16
|
-
self.arguments = [
|
17
|
-
CLAide::Argument.new('项目根目录(默认使用当前目录)', false)
|
18
|
-
]
|
19
|
-
|
20
|
-
def self.options
|
21
|
-
[].concat(super)
|
22
|
-
end
|
23
|
-
|
24
|
-
def initialize(argv)
|
25
|
-
@path = argv.shift_argument || Dir.pwd
|
26
|
-
|
27
|
-
super
|
28
|
-
end
|
29
|
-
|
30
|
-
def run
|
31
|
-
scanner = Scanner.new(@path)
|
32
|
-
|
33
|
-
puts scanner.disturl
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|