pkgr 0.3.4 → 1.0.1.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. data/README.md +68 -463
  2. data/bin/pkgr +4 -52
  3. data/lib/pkgr.rb +13 -29
  4. data/lib/pkgr/app.rb +19 -4
  5. data/lib/pkgr/builder.rb +207 -0
  6. data/lib/pkgr/buildpack.rb +80 -0
  7. data/lib/pkgr/cli.rb +34 -158
  8. data/lib/pkgr/config.rb +65 -0
  9. data/lib/pkgr/data/distributions/debian/build_dependencies.yml +14 -0
  10. data/lib/pkgr/data/{debian → distributions/debian}/cron.d +0 -0
  11. data/lib/pkgr/data/distributions/debian/default.erb +12 -0
  12. data/lib/pkgr/data/distributions/debian/dependencies.yml +17 -0
  13. data/lib/pkgr/data/distributions/debian/hooks/postinstall.sh +27 -0
  14. data/lib/pkgr/data/distributions/debian/hooks/preinstall.sh +9 -0
  15. data/lib/pkgr/data/{debian → distributions/debian}/logrotate.erb +0 -0
  16. data/lib/pkgr/data/distributions/debian/runner.erb +122 -0
  17. data/lib/pkgr/data/distributions/debian/upstart/master.conf.erb +7 -0
  18. data/lib/pkgr/data/distributions/debian/upstart/process.conf.erb +7 -0
  19. data/lib/pkgr/data/distributions/debian/upstart/process_master.conf.erb +2 -0
  20. data/lib/pkgr/dispatcher.rb +51 -0
  21. data/lib/pkgr/distributions.rb +18 -0
  22. data/lib/pkgr/distributions/debian.rb +157 -0
  23. data/lib/pkgr/git.rb +24 -0
  24. data/lib/pkgr/process.rb +18 -0
  25. data/lib/pkgr/templates/dir_template.rb +14 -0
  26. data/lib/pkgr/templates/file_template.rb +38 -0
  27. data/lib/pkgr/version.rb +1 -1
  28. metadata +93 -26
  29. data/lib/pkgr/data/debian/changelog +0 -0
  30. data/lib/pkgr/data/debian/compat.erb +0 -1
  31. data/lib/pkgr/data/debian/control.erb +0 -12
  32. data/lib/pkgr/data/debian/copyright.erb +0 -17
  33. data/lib/pkgr/data/debian/default.erb +0 -11
  34. data/lib/pkgr/data/debian/dirs.erb +0 -2
  35. data/lib/pkgr/data/debian/docs.erb +0 -0
  36. data/lib/pkgr/data/debian/init.d.erb +0 -155
  37. data/lib/pkgr/data/debian/install.erb +0 -16
  38. data/lib/pkgr/data/debian/links.erb +0 -5
  39. data/lib/pkgr/data/debian/postinst.erb +0 -59
  40. data/lib/pkgr/data/debian/prerm.erb +0 -57
  41. data/lib/pkgr/data/debian/rules.erb +0 -7
  42. data/lib/pkgr/pkgr.rake +0 -50
  43. data/lib/pkgr/railtie.rb +0 -7
@@ -1,16 +0,0 @@
1
- <% config_files.each do |file| %>
2
- config/<%= file %> etc/<%= name %>
3
- <% end %>
4
- config <%= pkg_prefix %>/<%= name %>
5
- .bundle <%= pkg_prefix %>/<%= name %>
6
- Gemfile <%= pkg_prefix %>/<%= name %>
7
- Gemfile.lock <%= pkg_prefix %>/<%= name %>
8
- config.ru <%= pkg_prefix %>/<%= name %>
9
- Rakefile <%= pkg_prefix %>/<%= name %>
10
- app <%= pkg_prefix %>/<%= name %>
11
- bin <%= pkg_prefix %>/<%= name %>
12
- db/* var/db/<%= name %>
13
- lib <%= pkg_prefix %>/<%= name %>
14
- public <%= pkg_prefix %>/<%= name %>
15
- script <%= pkg_prefix %>/<%= name %>
16
- vendor <%= pkg_prefix %>/<%= name %>
@@ -1,5 +0,0 @@
1
- <% config_files.each do |file| %>
2
- etc/<%= name %>/<%= file %> <%= pkg_prefix %>/<%= name %>/config/<%= file %>
3
- <% end %>
4
- var/log/<%= name %> <%= pkg_prefix %>/<%= name %>/log
5
- var/db/<%= name %> <%= pkg_prefix %>/<%= name %>/db
@@ -1,59 +0,0 @@
1
- #!/bin/sh
2
- # postinst script for $NAME
3
- #
4
- # see: dh_installdeb(1)
5
-
6
- set -e
7
-
8
- # summary of how this script can be called:
9
- # * <postinst> `configure' <most-recently-configured-version>
10
- # * <old-postinst> `abort-upgrade' <new version>
11
- # * <conflictor's-postinst> `abort-remove' `in-favour' <package>
12
- # <new-version>
13
- # * <postinst> `abort-remove'
14
- # * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
15
- # <failed-install-package> <version> `removing'
16
- # <conflicting-package> <version>
17
- # for details, see http://www.debian.org/doc/debian-policy/ or
18
- # the debian-policy package
19
-
20
- NAME="<%= name %>"
21
- PREFIX="<%= prefix %>"
22
- USER="<%= user %>"
23
- GROUP="<%= group %>"
24
-
25
- case "$1" in
26
- configure)
27
-
28
- if [ ! -f $PREFIX/$NAME/bin/$NAME.rb ]; then
29
- mv $PREFIX/$NAME/bin/$NAME $PREFIX/$NAME/bin/$NAME.rb
30
- fi
31
- echo "#!/usr/bin/ruby1.9.1
32
- require '$PREFIX/$NAME/bin/$NAME'
33
- " > /usr/bin/$NAME && chmod a+x /usr/bin/$NAME
34
- # Creating the user if it does not exist
35
- if ! getent passwd $USER > /dev/null; then
36
- adduser --no-create-home --system --group $GROUP
37
- fi
38
- chown -R $USER.$GROUP /etc/$NAME/
39
- chown -R $USER.$GROUP /var/db/$NAME/
40
- chown -R $USER.$GROUP /var/log/$NAME/
41
- ;;
42
-
43
- abort-upgrade|abort-remove|abort-deconfigure)
44
- ;;
45
-
46
- *)
47
- echo "postinst called with unknown argument \`$1'" >&2
48
- exit 1
49
- ;;
50
- esac
51
-
52
- # dh_installdeb will replace this with shell code automatically
53
- # generated by other debhelper scripts.
54
-
55
- #DEBHELPER#
56
-
57
- exit 0
58
-
59
-
@@ -1,57 +0,0 @@
1
- #!/bin/sh
2
- # prerm script for $NAME
3
- #
4
- # see: dh_installdeb(1)
5
-
6
- set -e
7
-
8
- # summary of how this script can be called:
9
- # * <prerm> `remove'
10
- # * <old-prerm> `upgrade' <new-version>
11
- # * <new-prerm> `failed-upgrade' <old-version>
12
- # * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
13
- # * <deconfigured's-prerm> `deconfigure' `in-favour'
14
- # <package-being-installed> <version> `removing'
15
- # <conflicting-package> <version>
16
- # for details, see http://www.debian.org/doc/debian-policy/ or
17
- # the debian-policy package
18
-
19
- NAME="<%= name %>"
20
- PREFIX="<%= prefix %>"
21
- USER="<%= user %>"
22
- GROUP="<%= group %>"
23
-
24
- cleanup()
25
- {
26
- /etc/init.d/$NAME stop || true
27
- rm /usr/bin/$NAME
28
- mv $PREFIX/$NAME/bin/$NAME.rb $PREFIX/$NAME/bin/$NAME
29
- return 0;
30
- }
31
-
32
- case "$1" in
33
- remove)
34
- cleanup
35
- deluser $USER || true
36
- ;;
37
- upgrade|deconfigure)
38
- cleanup
39
- ;;
40
-
41
- failed-upgrade)
42
- ;;
43
-
44
- *)
45
- echo "prerm called with unknown argument \`$1'" >&2
46
- exit 1
47
- ;;
48
- esac
49
-
50
- # dh_installdeb will replace this with shell code automatically
51
- # generated by other debhelper scripts.
52
-
53
- #DEBHELPER#
54
-
55
- exit 0
56
-
57
-
@@ -1,7 +0,0 @@
1
- #!/usr/bin/make -f
2
-
3
- export DH_VERBOSE=1
4
-
5
-
6
- %:
7
- dh $@
data/lib/pkgr/pkgr.rake DELETED
@@ -1,50 +0,0 @@
1
- # ROOT=. rake -I lib -f lib/pkgr/pkgr.rake pkgr:setup
2
-
3
- require 'pkgr'
4
- require 'fileutils'
5
-
6
- ROOT = ENV.fetch('ROOT') { Rails.root }
7
- CONFIG = ENV.fetch('CONFIG') { File.join(ROOT, "config/pkgr.yml") }
8
- if File.exist?(CONFIG)
9
- APP = Pkgr::App.new ROOT, CONFIG
10
- APP.valid? || fail("There is an issue with the app you're trying to package: #{APP.errors.join(", ")}")
11
- end
12
-
13
- namespace :pkgr do
14
-
15
- desc "Setup the required files for pkgr"
16
- task :setup do
17
- Pkgr.setup(ROOT)
18
- end
19
-
20
- if defined?(APP)
21
- task :generate do
22
- APP.generate_required_files
23
- end
24
-
25
- namespace :bump do
26
- %w{patch minor major custom}.each do |version|
27
- desc "Increments the #{version} version. If using :custom, then you can pass a specific VERSION environment variable."
28
- task version.to_sym do
29
- APP.bump!(version.to_sym, ENV['VERSION'])
30
- end
31
- end
32
- end
33
-
34
- namespace :build do
35
- desc "Builds the debian package"
36
- task :deb do
37
- build_host = ENV.fetch('HOST') { 'localhost' }
38
- APP.build_debian_package(build_host)
39
- end
40
- end
41
-
42
- namespace :release do
43
- desc "Release the latest package on a custom APT repository"
44
- task :deb do
45
- apt_host = ENV.fetch('HOST') { 'localhost' }
46
- APP.release_debian_package(apt_host)
47
- end
48
- end
49
- end
50
- end
data/lib/pkgr/railtie.rb DELETED
@@ -1,7 +0,0 @@
1
- module Pkgr
2
- class Railtie < Rails::Railtie
3
- rake_tasks do
4
- load File.expand_path("../pkgr.rake", __FILE__)
5
- end
6
- end
7
- end