GeekFactory

int128.hatenablog.com

Gradle

Gradle SSH Plugin 1.1.5をリリースした

Gradle SSH Plugin 1.1.5、Groovy SSH 1.1.9をリリースしました。 github.com サーバでSFTPが無効に設定されている場合にスクリプトがハングアップしてしまうバグを修正しました。約3ヶ月ぶりにリリースしようとしたらテストが通らなくて焦りました。Travis …

Gradle SSH PluginやGroovy SSHはどのようにテストしているか

G*Advent Calendar 2015の18日目です。 qiita.com 昨日は某社の方をゲストに迎えて闇の話をしていたためAdvent Calendarの公開が遅れました。大変申し訳ございません。 本記事では、Gradle SSH PluginやGroovy SSHをどのようにテストしているか説明します。G…

Gradle SSH Plugin 1.1.4, Groovy SSH 1.1.8をリリースした

Gradle SSH Plugin 1.1.4とGroovy SSH 1.1.8をリリースしました。リトライ機構にバグがあったので修正しました(Packet corrupt errors after upgrading from 1.1.5 to 1.1.7 · Issue #77 · int128/groovy-ssh · GitHub)。バグレポートをいただけるのは嬉し…

Gradle Updateをカイゼンした

Gradle Updateを公開します - GeekFactoryint128.hatenablog.com Gradle Wrapperを自動更新してくれるサービス Gradle Update を公開してから積み残しがいくつかあったので改善しました。 Done README 英語圏の人にも使ってもらうため、使い方やスクリーンシ…

Gradle Updateを公開します

Gradle Wrapperを自動更新してくれるサービス Gradle Update を公開します。Gradle Wrapperのようなビルドシステムは一度設定するとバージョンを上げるタイミングがあまりないのですが、新しいバージョンを使うとパフォーマンスが改善されたりバグを踏まずに…

Gradle Wrapperを自動アップデートするサービスを作ってる

Gradleはおよそ2〜3ヶ月ごとに新しいバージョンがリリースされています。それに合わせてGradle Wrapperもアップデートするとバグフィックスや新機能の恩恵を受けられるのですが、後回しにして放置してしまうことが多いと思います。 ビルドを自動化したのなら…

Gradle SSH Plugin 1.1.1をリリースした

Gradle SSH Plugin 1.1.1をリリースしました. GradleからリモートサーバにSSHしてコマンド実行やファイル転送を行うことができるプラグインです.Groovy DSLを活用しているので,簡単にSSH処理を記述できます. int128/gradle-ssh-plugin New Features 1.1…

Gradle SSH Plugin 1.0.5をリリースした

Gradle SSH Plugin 1.0.4と1.0.5をリリースしました。 New Feature in v1.0.4 コマンドやシェルの終了ステータスを無視する設定を追加しました。下記のように引数に ignoreError: true を加えると、コマンドやシェルが0以外のステータスコードを返しても例外…

Gradle SSH Plugin 1.0.3をリリースした

Gradle SSH Plugin 1.0.3をリリースしました.ビルドツール Gradle からSSHを使ってデプロイなどを行うためのプラグインです. New Features Gradleの標準APIに合わせて,ファイル転送のメソッドシグネチャを見直しました.具体的には,get() と put() の記…

Gradle SSH Plugin 1.0.2をリリースした

Gradle SSH Plugin 1.0.2をリリースしました. SSH Pluginを使うと,下記のようにGradleからSSHでコマンドを実行したりファイルを送受信したりできます. // build.gradle plugins { id 'org.hidetake.ssh' version '1.0.2' } remotes { webServer { host = …

Gradle SSH Plugin 1.0.1をリリースした

Gradle SSH Pluginのバージョン1.0.1をリリースしました。開発を始めてから2年が経ち、仕様も安定してきたので、バージョンを1.0に上げることにしました。正直にいうとNew Yearでキリがいいからバージョンを上げました。本当は2014年に上げたかったんだけど…

GradleでビルドしてDockerで配布する

JGGUG LTにて、GradleでビルドしてDockerで配布するという内容を発表しました。ビールを片手にピザをつまみながら発表を聴くというゆるいスタイルで楽しかったです。 speakerdeck.com DockerがあればJVMをインストールする必要がなくなるので、GroovyやScala…

今日から始めるGradleプラグイン開発 #gadvent

G*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの17日目です。 本記事では、9日目の記事で紹介したGradleプラグインのテンプレートプロジェクトを使って、新しいGradleプラグインを作る方法を説明します。14日目の記事で紹…

Gradle Slashプラグインをリリースしました #gadvent

G*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの14日目です。 Gradle Slashというプラグインをリリースしました。このプラグインを使うと、Fileオブジェクトと文字列をスラッシュ(除算演算子)で連結して書けるようにな…

GradleによるJVMアプリケーションのパッケージングと配布 #gadvent

G*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの10日目です。 アプリケーションを公開する際、ユーザが使いやすい形でアプリケーションを配布することで、より多くのユーザに使ってもらえることが期待できます。また、ア…

Gradleプラグインのテンプレートプロジェクトを公開します #gadvent

G*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの9日目です。 GradleはビルドスクリプトをGroovy DSLで書くため、現実のプロジェクトで複雑な問題が発生した場合に柔軟に対処できる特徴を持っています。現実のプロジェクト…

GradleでBintrayを経由してMaven Centralに成果物を公開する

Maven Centralに成果物を公開するには、OSS Sonatype Nexusに成果物をアップロードする方法が広く知られていますが、Bintrayを経由してリリースする方法もあります。この方法には以下のメリットとデメリットがあります。 メリット Bintrayには成果物に署名を…

Gradle SSH Plugin 0.4.5 released

GradleからSSHアクセスするためのプラグインGradle SSH Pluginのバージョン0.4.5をリリースしました。 本バージョンではJava 6で動作するように改善しました。まだまだJava 6は需要があるんですね。レガシー環境のデプロイ自動化に役に立てばうれしいです。 …

Gradle SSH Plugin 0.4.4 released

デプロイなどでGradleからSSHアクセスするためのプラグインGradle SSH Pluginのバージョン0.4.4をリリースしました。 build.gradleでプラグインを読み込めばすぐに使えます。以下はreloading Tomcatのサンプルです。 plugins { id 'org.hidetake.ssh' versio…

Gradle SSH Plugin 0.4.3をリリースした

GradleでSSHを使うためのプラグイン Gradle SSH Plugin の新バージョンをリリースしました。このプラグインを使うと、Gradleでビルドした成果物をシームレスにデプロイできます。 plugins { id 'org.hidetake.ssh' version '0.4.3' } remotes { webServer { …

Bintray PGP Signingを試す

BintrayではJCenterからMaven Centralにパッケージを同期する機能がありますが、これを使うにはあらかじめパッケージのファイル(JAR, POM)にPGP署名を付与しておく必要があります。 BintrayではアップロードしたパッケージにPGP署名を付与する仕組みがある…

Gradle SSH Plugin 0.3.3 released

GradleからSSHを使うためのプラグインの新バージョンをリリースしました。 今回のリリースからグローバル設定 (global settings) で指定できる設定項目が大幅に増えました。 例えば、コマンド実行時にPTY allocationを指定するフラグはこれまでメソッドごと…

Gradleプラグインの作り方

G* Advent Calendar 2013の19日目です。Gradleでビルドスクリプトを書いていると、他でも再利用できるタスクや関数が出てくることがあります。ビルドスクリプトの一部をプラグインに切り出すことで、他のGradleプロジェクトで再利用できます。bluepapa32さん…

Gradleを開発プロジェクトで使うときのこと

G* Advent Calendar 2013の5日目です。今日はGradleを開発プロジェクトで使う時に考えることを書いてみます。いわゆるビルド職人の仕事をゆるふわに考えてみたいと思います。対象はJVMベースのWebアプリとバッチアプリとします。記述言語はJavaを想定してい…

Gradle SSH Plugin 0.1.9をリリースしました

ビルドツールのGradleでSSHを使うためのプラグインを作っています。ちょっと前にバージョン0.1.9をリリースしたので、宣伝のエントリを残しておきます。https://github.com/int128/gradle-ssh-pluginこのプラグインの主な用途はやはりデプロイでしょう。アプ…

GradleでMaven Central Repositoryに成果物をリリースする

Gradleでビルドした成果物をMaven Central Repositoryにリリースする方法を説明します。成果物の公開にあたってはSonatype OSSRHで申請が必要です。こちらのイケメンな記事が大変参考になります。こちらの記事ではMavenを使っていますが、本稿ではGradleを使…

Webアプリのデプロイ後に初期化を待つスクリプト

Gradleスクリプトの小ネタです。Webアプリのインテグレーションテストやスモークテストを行う場合、デプロイ後にアプリが完全に初期化されるまで待機してからテストを行いたい場合があります。そんな時は、アプリがHTTP 200を返すまでリトライする処理を直前…

Gradle SSH Plugin 0.1.3をリリースしました

GradleでSSH経由でコマンド実行やファイル転送を行うためのプラグイン gradle-ssh-plugin のバージョン 0.1.3 をリリースしました。 https://github.com/int128/gradle-ssh-plugin 今回のバージョンからは Maven Central Repository から取得できるようにな…

gradle-ssh-plugin-0.1.0を公開します

GradleでSSHを使う際に便利なプラグインを作ったので公開します。複数のサーバでコマンドを実行したりファイルを転送したりするのを簡潔に記述できます。 https://github.com/int128/gradle-ssh-plugin 現在のバージョンは最小限の機能しか実装していません…

Gradle タスクの直列実行を Collection.inject() で書いてみる

非同期処理の直列実行を Array.reduce() で書いてみる - GeekFactory と同じことを Gradle (Groovy) でやってみます。Gradle で複数のタスクの依存関係を定義するケースを考えます。Task.dependsOn を使って複数のタスクを指定した場合、タスクの順序は保証…