pkgforge 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 67dc016e53b3556308397f93194e95f179f0ed8f
4
- data.tar.gz: 851949abac8aa1936ca20ce45752e70452a2754b
3
+ metadata.gz: ad08a0c9917d1103ab0bd1979adf503ba8392f24
4
+ data.tar.gz: e0fd57232afdc1db7602a64859563c8950dd0dc6
5
5
  SHA512:
6
- metadata.gz: 7c4c56b5d33914a22e1b672bfbef3ee6164719fd908ec969961ac7809e93188a75cace094bb29282c9c0981028b62e736b5a5c50af2adb2f32530761fb0e847d
7
- data.tar.gz: a927c71b2ba703d469fb5a7419e35576e2b0483302f403885c79035a238a50e845e15fd630a85f8cfe11998a4c13e09deaae0bb1fcfcb1478df754a53f0f91af
6
+ metadata.gz: e7e4c3dce6b32b08f65a0394bfe32de81e7396164ba9a8bfe14d82d7edffe3daa7a3836135e0ace8af4d9643bec15c501d7851c4174dca9c441084d6e4daaac4
7
+ data.tar.gz: e2a30bb5f9bea0d218eee30c9fd04dc3de21c831698915d22167afacd63f2c18d3021e1c35ac3ce0d5cf26f5c49c7b0e6c59269e8e14b8c8d14b7dce2d3f9341
data/lib/pkgforge.rb CHANGED
@@ -8,12 +8,12 @@ require 'pkgforge/components/configure'
8
8
  require 'pkgforge/components/deps'
9
9
  require 'pkgforge/components/dirs'
10
10
  require 'pkgforge/components/metadata'
11
+ require 'pkgforge/components/package'
11
12
  require 'pkgforge/components/patch'
12
13
  require 'pkgforge/components/run'
13
14
  require 'pkgforge/components/source'
14
15
  require 'pkgforge/components/test'
15
16
  require 'pkgforge/components/upload'
16
- require 'pkgforge/components/version'
17
17
 
18
18
  ##
19
19
  # DSL engine for compiling Arch packages
data/lib/pkgforge/base.rb CHANGED
@@ -36,8 +36,5 @@ module PkgForge
36
36
 
37
37
  class Test < PkgForge::Base
38
38
  end
39
-
40
- class Version < PkgForge::Base
41
- end
42
39
  end
43
40
  end
@@ -0,0 +1,36 @@
1
+ require 'fileutils'
2
+
3
+ module PkgForge
4
+ ##
5
+ # Add upload methods to Forge
6
+ class Forge
7
+ Contract None => nil
8
+ def package!
9
+ add_license!
10
+ make_tarball!
11
+ copy_tarball!
12
+ end
13
+
14
+ private
15
+
16
+ Contract None => nil
17
+ def make_tarball!
18
+ Dir.chdir(tmpdir(:release)) do
19
+ run_local "tar -czvf #{tmpfile(:tarball)} *"
20
+ end
21
+ nil
22
+ end
23
+
24
+ Contract None => String
25
+ def git_hash
26
+ `git rev-parse --short HEAD`.rstrip
27
+ end
28
+
29
+ Contract None => nil
30
+ def copy_tarball!
31
+ FileUtils.mkdir_p 'pkg'
32
+ FileUtils.cp tmpfile(:tarball), "pkg/#{name}-#{git_hash}.tar.gz"
33
+ nil
34
+ end
35
+ end
36
+ end
@@ -4,38 +4,24 @@ module PkgForge
4
4
  class Forge
5
5
  Contract None => nil
6
6
  def push!
7
- add_license!
8
- make_tarball!
9
- update_repo!
10
7
  upload_artifact!
11
8
  end
12
9
 
13
10
  private
14
11
 
15
- Contract None => nil
16
- def make_tarball!
17
- Dir.chdir(tmpdir(:release)) do
18
- run_local "tar -czvf #{tmpfile(:tarball)} *"
19
- end
20
- nil
21
- end
22
-
23
- Contract None => nil
24
- def update_repo!
25
- run_local "git tag -f '#{full_version}'"
26
- run_local 'git push --tags origin master'
27
- sleep 2
28
- nil
12
+ Contract None => String
13
+ def version
14
+ @version ||= `git describe --abbrev=0 --tags`.rstrip
29
15
  end
30
16
 
31
17
  Contract None => nil
32
18
  def upload_artifact!
33
19
  run_local [
34
20
  'targit',
35
- '--authfile', '.targit',
21
+ '--authfile', '.github',
36
22
  '--create',
37
23
  '--name', "#{name}.tar.gz",
38
- "#{org}/#{name}", full_version, tmpfile(:tarball)
24
+ "#{org}/#{name}", version, tmpfile(:tarball)
39
25
  ]
40
26
  nil
41
27
  end
@@ -1,5 +1,5 @@
1
1
  ##
2
2
  # Declare version number
3
3
  module PkgForge
4
- VERSION = '0.4.0'.freeze
4
+ VERSION = '0.4.1'.freeze
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pkgforge
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Aker
@@ -134,12 +134,12 @@ files:
134
134
  - lib/pkgforge/components/deps.rb
135
135
  - lib/pkgforge/components/dirs.rb
136
136
  - lib/pkgforge/components/metadata.rb
137
+ - lib/pkgforge/components/package.rb
137
138
  - lib/pkgforge/components/patch.rb
138
139
  - lib/pkgforge/components/run.rb
139
140
  - lib/pkgforge/components/source.rb
140
141
  - lib/pkgforge/components/test.rb
141
142
  - lib/pkgforge/components/upload.rb
142
- - lib/pkgforge/components/version.rb
143
143
  - lib/pkgforge/version.rb
144
144
  - pkgforge.gemspec
145
145
  - spec/pkgforge_spec.rb
@@ -1,52 +0,0 @@
1
- module PkgForge
2
- ##
3
- # Add version methods to Forge
4
- class Forge
5
- attr_writer :version_block
6
-
7
- Contract None => Proc
8
- def version_block
9
- @version_block ||= proc { raise 'No version block provided' }
10
- end
11
-
12
- Contract None => String
13
- def version
14
- @version ||= Dir.chdir(tmpdir(:build)) do
15
- PkgForge::DSL::Version.new(self).instance_eval(&version_block)
16
- end
17
- end
18
-
19
- Contract None => Num
20
- def revision
21
- @revision ||= `git describe --abbrev=0 --tags`.split('-').last.to_i + 1
22
- end
23
-
24
- Contract None => String
25
- def full_version
26
- "#{version}-#{revision}"
27
- end
28
- end
29
-
30
- module DSL
31
- ##
32
- # Add version methods to Forge DSL
33
- class Forge
34
- Contract Func[None => Maybe[String]] => nil
35
- def version(&block)
36
- @forge.version_block = block
37
- nil
38
- end
39
- end
40
-
41
- ##
42
- # Add version methods to Version DSL
43
- class Version
44
- Contract Maybe[Regexp], Maybe[String] => String
45
- def git_tag(regex = nil, replace = '\1')
46
- tag = `git describe --tags`.rstrip
47
- tag.gsub!(regex, replace) if regex
48
- tag
49
- end
50
- end
51
- end
52
- end