@@ -10,15 +10,19 @@ If you're coming from a Ruby world and do not have Maven setup, you can alternat
10
10
11
11
### Building
12
12
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
14
14
15
+ There's a rake target as well that shells out: ` jruby -S rake jar `
15
16
16
17
### Testing
17
18
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 ` )
21
20
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.
22
26
23
27
### Releasing
24
28
@@ -28,39 +32,13 @@ one can run a tests Ruby-style e.g. `jruby -Ilib:. src/test/ruby/test_bn.rb`
28
32
make sure [ pom.xml] ( pom.xml ) is regenerated e.g. using ` rmvn validate `
29
33
and ` git commit ` the changes
30
34
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 `
44
36
45
37
* gem push the build gem from pkg/ e.g. ` gem push pkg/jruby-openssl-0.9.15.gem `
46
38
47
39
* tag the release e.g. ` git tag v0.9.15 `
48
40
49
41
* 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` )
51
43
52
44
* ` 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