@@ -12,8 +12,10 @@ package = Rake::PackageTask.new("jquery.flexselect", :noversion) do |p|
12
12
p . package_files . include ( "*.js" , "*.css" , "*.html" , "README.*" )
13
13
end
14
14
15
+ jquery_package = JSON . parse ( File . read ( "flexselect.jquery.json" ) )
16
+
15
17
task :version do
16
- package . version = JSON . parse ( File . read ( "flexselect.jquery.json" ) ) [ "version" ]
18
+ package . version = jquery_package [ "version" ]
17
19
end
18
20
19
21
file package . package_dir_path do
@@ -34,7 +36,7 @@ task :publish do
34
36
end
35
37
36
38
desc "Construct a new release package, and optionally tag the repository"
37
- task :release => [ :rewrite_docs , :repackage ] do
39
+ task :release => [ :rewrite_docs , :rewrite_bower , :commit , : repackage] do
38
40
sh ( "git tag 'v#{ package . version } '" )
39
41
puts ( "\n *** Don't forget to push the zip file to S3 ***" )
40
42
puts ( "\n *** Don't forget to `rake publish` ***" )
@@ -44,10 +46,25 @@ desc "Rewrite the downlaod location in the docs"
44
46
task :rewrite_docs => :version do
45
47
docs = IO . read ( "index.html" )
46
48
docs . sub! ( /(download_url = .+)-\d +\. \d +\. \d +.zip/ , "\\ 1-#{ package . version } .zip" )
47
- File . open ( "index.html" , 'w' ) do |f |
48
- f . write docs
49
- end
49
+ File . open ( "index.html" , "w" ) { |f | f . write docs }
50
+ end
51
+
52
+ desc "Rewrite the bower package manifest"
53
+ task :rewrite_bower => :version do
54
+ bower = {
55
+ "name" => "jquery-flexselect" ,
56
+ "version" => package . version ,
57
+ "main" => "jquery.flexselect.js" ,
58
+ "ignore" => [ "test" , "vendor" ] ,
59
+ "dependencies" => { "jquery" => ">=1.4" }
60
+ }
61
+ File . open ( "bower.json" , "w" ) { |f | f . write ( JSON . pretty_generate ( bower ) ) }
62
+ end
63
+
64
+ desc "Stage and commit versioning changes"
65
+ task :commit => :version do
50
66
sh "git add index.html"
51
67
sh "git add flexselect.jquery.json"
68
+ sh "git add bower.json"
52
69
sh "git commit -m 'Bumped to v#{ package . version } '"
53
70
end
0 commit comments