@@ -10,15 +10,19 @@ If you're coming from a Ruby world and do not have Maven setup, you can alternat
1010
1111### Building
1212
13- The usual ` mvn package` builds a .gem that includes the JRuby extension .jar
13+ The usual ` ./mvnw package -Dmaven.test.skip=true ` builds a .gem that includes the JRuby extension .jar
1414
15+ There's a rake target as well that shells out: ` jruby -S rake jar `
1516
1617### Testing
1718
18- Tests ` mvn test ` are run by default with Maven using JRuby plugins.
19- When the ext .jar is build (` rake jar ` or ` mvn package -Dmaven.test.skip=true ` )
20- one can run a tests Ruby-style e.g. ` jruby -Ilib:. src/test/ruby/test_bn.rb `
19+ NOTE: the ext .jar needs to be build (see the Building section above on ` rake jar ` )
2120
21+ The full unit test suite can be boostraped using Rake: ` jruby -S rake test `
22+
23+ Tests can also be run individually e.g. ` jruby -Ilib:src/test/ruby src/test/ruby/test_bn.rb `
24+
25+ NOTE: make sure to ** -Ilib** otherwise you end up using the OpenSSL default gem shipped with JRuby.
2226
2327### Releasing
2428
@@ -28,39 +32,13 @@ one can run a tests Ruby-style e.g. `jruby -Ilib:. src/test/ruby/test_bn.rb`
2832 make sure [ pom.xml] ( pom.xml ) is regenerated e.g. using ` rmvn validate `
2933 and ` git commit ` the changes
3034
31- * (optional) signing artifacts is preferred thus find your GPG key
32-
33- * ` mvn -Prelease -DupdateReleaseInfo=true -Dgpg.keyname=A7A374B9 clean deploy `
34-
35- * (advised) examine and close the repository to push it to Sonatype's staging
36-
37- * (advised) run JRuby's full suite using the staged new jruby-openssl gem
38- e.g. https://github.com/jruby/jruby/commit/1df6315e9145195f19ad862be5e3a5
39-
40- * (advised) release the staging repository at Sonatype's if all is well
41-
42- * (optional) update JRuby to bundle new jruby-openssl gem (remove staging)
43- e.g. https://github.com/jruby/jruby/commit/8750e736491825eec1d1954a07d492
35+ * ` mvn -Prelease -DupdateReleaseInfo=true clean package `
4436
4537* gem push the build gem from pkg/ e.g. ` gem push pkg/jruby-openssl-0.9.15.gem `
4638
4739* tag the release e.g. ` git tag v0.9.15 `
4840
4941* update ` VERSION ` to next SNAPSHOT (e.g. ` "0.9.16.dev" ` ) and commit
50- make sure [ pom.xml] ( pom.xml ) is regenerated (` rmvn validate` )
42+ make sure [ pom.xml] ( pom.xml ) is regenerated (` ./mvnw validate` )
5143
5244* ` git push origin master --tags `
53-
54- * (advised) ... take the rest of the day off!
55-
56-
57- #### Manually Deploying
58-
59- When a release went by only pushing to http://rubygems.org/ one can still push
60- to Sonatype's Maven repos, rename * jruby-openssl-x.x.x-java.gem* (when it is
61- downloaded from https://rubygems.org/gems/jruby-openssl ) to follow Maven's
62- naming conventions (stripping the * -java* suffix) and "mvn deploy" by hand :
63-
64- ```
65- mvn deploy:deploy-file -Dfile=jruby-openssl-0.9.15.gem -DpomFile=pom.xml -DrepositoryId=ossrh -Durl=https://oss.sonatype.org/service/local/staging/deploy/maven2/
66- ```
0 commit comments