Edited at

Sonatypeにsbt-aws-serverlessを公開しました

More than 3 years have passed since last update.

Publish a release to Bintray · Issue #2 · yoshiyoshifujii/sbt-aws-serverless というIssuesをいただきましたので、やってみようと思ってトライしました。

さぐりさぐりでやりましたので、この手順が正しいのか、あんまりよく分かってませんが、自分用のメモの変わりに残しておきます。

が、タイトルとIssuesの不一致で想定いただけるとかと思いますが、最終的には、Sonatypeにpublishしております。

Bintrayは有償?、OSSならどうなの?とかよう分からんかったというかあんまり調べてないです。

というか、そもそも今回のTryはあんまり下調べとかしていないのです…。

ので、マズいところとか無いかちょっと心配…。

主に、 http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html を参照しながら手探りで進めました。


PGP Signatures

http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html#First+-+PGP+Signatures

に記載の手順を実施しました。

が、

pgp-cmd send-key keyname hkp://pool.sks-keyservers.net

でひっかかりました。

http://www.scala-sbt.org/sbt-pgp/usage.html#creating-a-key-pair

を読んで、まずはkey pairを作るんだなって思って、それを実施しました。

> pgp-cmd gen-key

java.lang.RuntimeException: Cannot modify keyrings when in read-only mode. Run `set pgpReadOnly := false` before running this command.

ふぁ?

ああ。なんか外さんといかんのね。

> set pgpReadOnly := false

[info] Defining */*:pgpReadOnly
[info] The new value will be used by no settings or tasks.
[info] Reapplying settings...
...
> pgp-cmd gen-key
Please enter the name associated with the key: <your key>
Please enter the email associated with the key: <your email address>
Please enter the passphrase for the key: ********
Please re-enter the passphrase for the key: ********
[info] Creating a new PGP key, this could take a long time.
[info] Public key := ~/.sbt/gpg/pubring.asc
[info] Secret key := ~/.sbt/gpg/secring.asc
[info] Please do not share your secret key. Your public key is free to share.

よし。うまいこといったっぽい。

> pgp-cmd send-key <your key> hkp://keyserver.ubuntu.com

[info] Sending PublicKeyRing(PublicKey(xxx, your key <your email address>, RSA@2048)) to HkpServer(http://keyserver.ubuntu.com:11371)
...

しゃーうまいこといったー。

ねーくすと!!


Maven Publishing Settings

http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html#Second+-+Maven+Publishing+Settings

に記載の手順ですね。

ここは特に疑うことなくsbtに追記しました。

ただ、既存の build.sbt に混ざるとあれやし、 publish.sbt って作ってそっちに設定を書いた。

https://github.com/yoshiyoshifujii/sbt-aws-serverless/blob/2385b40c78fda368d861b90bbda83891fd276cb9/publish.sbt

ねーくすと!!


POM Metadata

http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html#Third+-+POM+Metadata

に記載の手順です。

これも一緒やね。

publish.sbt に書いた。


Adding credentials

http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html#Fourth+-+Adding+credentials

ですね。

はい。ここで、Sonatypeのアカウントないよーってやつですね。

JIRAに登録してIssuesにあれしてアカウントを作ってもらう必要あるってやつですね。

https://issues.sonatype.org/browse/OSSRH-25477 こんな感じで登録したら、けっこー即レスポンスいただけました。

英語苦手やし大丈夫かなーとドキドキしましたが、なんとかなりました。


Publish

http://www.scala-sbt.org/0.13/docs/Using-Sonatype.html#Finally+-+Publish

いよいよpublish!!

> publishSigned

...
[info] Resolving org.scala-sbt#sbt-launch;0.13.9 ...
[info] Done updating.
...
[info] Done packaging.
Please enter PGP passphrase (or ENTER to abort): ********
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0-javadoc.jar
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0-javadoc.jar.asc
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0.pom
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0-sources.jar
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0.jar
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0-sources.jar.asc
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0.pom.asc
[info] published sbt-aws-serverless to https://oss.sonatype.org/content/repositories/snapshots/com/github/yoshiyoshifujii/sbt-aws-serverless_2.10_0.13/1.5.0/sbt-aws-serverless-1.5.0.jar.asc
[success]...

さいごに、sonatypeにリリースするんやー。

> sonatypeRelease

...

よっしゃー!!


update Giter8 template

Giter8 テンプレートを作成していたので、更新しておきました。

https://github.com/yoshiyoshifujii/sbt-aws-serverless.g8


まとめ

けっこー手探りでやりましたが、SonatypeのJIRAに登録してアカウントを発行いただけると、あとは何とかなる気がします。

Group IDを com.github.yoshiyoshifujii で払い出していただきましたので、今後、このGroup IDを使うpluginとかlibは、さくさくと公開できるのかな?

なるたけ積極的に公開していこうと思います。

以上です。