JenkinsでStatSVNを使う

「シェルの実行」欄に直接スクリプトを書いてやりました。

svn log --username xxxx --password xxx -v --xml > logfile.log
java -jar /var/lib/statsvn/statsvn.jar ${WORKSPACE}/logfile.log ${WORKSPACE} -output-dir ${WORKSPACE}/statsvn

「Publish HTML reports」欄を追加
HTML directory to archive

${WORKSPACE}/statsvn

index page

index.html

Report title

お好きなタイトル。デフォルトは HTML Report

認証エラーが出まくっていますが、ひとまず成功はする。

Salesforce World Tour Tokyo に参加した話

Salesforce World Tour Tokyo に行ってきました。
日時:2014年12月4日
場所:ザ・プリンスパークタワー東京と虎ノ門ヒルズフォーラムの二カ所


メイン会場がプリンスパークタワーで、開発者ゾーンは虎ノ門ヒルズでした。
一度はメイン会場に移動しようと思っていましたが、結局ずっと虎ノ門ヒルズにいました。
荷物が増えて移動が面倒になったり、聞きたいセッションはこちらに集中していたためです。

参加への道のり

現在の私は、salesforceでの開発ということは今はやっておらず
試験もかろうじて受けているという状況なので、ギリギリまで参加するか迷いましたが
思い切って申し込みしました。
今は仕事で東京に住んでいるので、この機会を逃すのはもったいないと考えたからです。

午前の部

電車の遅延から始まって遅れて会場入り。
既に基調講演は始まっていました。
同時通訳つきのマーク・ベニオフ氏とその他様々な方が登場する講演でした。
salesforce の今までの歩み、今後のビジョン、salesforce ユーザーの成功事例が主な内容でした。
私に響いたキーワードは「スピード」です。
いかに はやくお客様にバリューを提供するか。という点は今の仕事を振り返ってかなり痛烈に響きました。
意思決定の素早さと開発のスピード、イテレーションを短くまわす とか短時間でいろいろ思いましたが
どれもこれも今できていないし、うちのスタイルでは夢のまた夢なんかなーとか思いつつ
私はどうしたいの。という昨今の悩みがぶり返してました。
(東京にいるといろいろ考えてしまうのです。)


話を聞きながら、Wi-Fiの設定をしたり、専用アプリを入れたりしました。
Wi-Fiは非常に便利で助かりました。


途中で抜けてコーヒー飲みながらTLを眺めていると「寸劇あるかな」「寸劇がなかった」というコメントが多数。
寸劇とはなんぞや。と思いつつ戻ると、ちょうど何度目かのデモタイムでした。
salesforceの田崎さんがコールセンター役、女性社員さんがお母さん役と子供役を行うという
損保ジャパンのSOSコールのデモ(寸劇)でした。
最後にはジャパンダ君が出てくるという筋書きで「これが寸劇!」と感動しました。

お昼

お弁当にまい泉のサンドイッチを頂きました。
本も一式頂きました。
サンドイッチを食べながら、GitHub ランチセッションを聞きました。
GitHubの入門的な説明とHerokuとの関係など、とても面白かったです。
なにより、今月中にGitHubを試そうという目標ができました。


その時に教えてもらったサイト↓
GitHub & Git Foundations on Vimeo


こういうセッションがあるとは知らなくて得した気分でした。
(タイムテーブル以外のセッションのことを把握してなかったのは失敗)

午後の部 その1

メインセッションである、Developer Keynote を聞きました。
Lightning と冠するものたちの解説とデモがメインでした。
特に Lightning App Builder には、おおお!となりました。
Heroku も結構な時間をとって、機能の説明などがあって、勉強になりました。
スマホ対応についても、iOS, Android, そのうちWindows Phone に対応するということで
実現したら、開発者としてはCordova と張る選択肢になるんではないでしょうか。

午後の部 その2

Keynote の後は、ふらふらとDeveloper Zone を探検しました。
Lightning Connect の話を聞きながら、SAPのデータも__cのオブジェクトで現れているのをみて
なんともいえないしょっぱい気持ちになりました。
SAPのデータ量を考えるとなんらかの制限に引っかかりそうですが、
あの難しい画面入力の代わりに、一部だけでも使いやすい画面の提供なんかができるとよさそうですよね。
(そして需要があると思います。)


IoTブースやHerokuブースに行きまして、Herokuの利用例などを見せてもらって、
salesforceとHerokuの使い分けのイメージが持てました。

午後の部 その3

最後に飛び込みで、Chatterの活用 というテーマのミニ相談会に入りました。
実はChatter だけ社内で利用しているんですが、そこまで活発じゃないので
ヒントになる情報があればと思って参加しました。
salesforceの社員の方が、資料を使いながら説明してくれたのですが、いろいろヒントがありました。
資料はたぶんこれだったと思います。
http://successjp.salesforce.com/blogs/2014/04/chatter-e478.html


できていなかった点、検討しようと思った点は以下の通り。
・顔写真をつける。(not default, not pet)
・自己紹介やグループの説明をしっかり書く。検索対象になっています。
・テーマに合わせて小さなグループを作るのはあり。
・部門ごとにプロモーターがいるとよい。
・えらい人のいいね!は大事。巻き込みましょう。
・ファイルをどんどん共有しよう。
・ブックマークやお気に入りをうまく使いましょう。
・トピックもつけるとよい。
・新人用グループは、うちにもあってよいかもしれない。
・ユーザー会があるので、そこで相談しあえる。


持ち帰った内容のうち、さっそくグループの顔写真をつけました。
突っ込んでくれた人がいて、嬉しくてニヤニヤしました。

最後に

思いきって行ってよかったです。
これにつきる。
あと、化石化している自分をなんとかしていきます。


この記事は Salesforce1 Advent Calendar 2014 11日目です。
Salesforce1 Advent Calendar 2014 - Qiita

RedmineのMySQL Backup

#!/bin/bash
# バックアップ先ディレクトリを指定
BACKDIR=/var/backup
#
# MySQLユーザー
REDUSER=user_redmine
# MySQLパスワード
REDPASS=********
# MySQLデータベース名
REDDB=db_redmine
#
#バックアップ日の日付
today=`date +%y%m%d`
#
#バックアップ日から7日前の日付
daysago=`date --date "7 days ago" +%y%m%d`
#
#Apache停止
/etc/init.d/httpd stop
#
#バックアップ先フォルダの作成
mkdir -p /var/backup/
#
# MySQLののバックアップ
mysqldump -u $REDUSER -p$REDPASS $REDDB > $BACKDIR"/redmine_db_"$today".dump"
#
# ファイルディレクトリのバックアップ
rsync -a /var/lib/redmine/files/ $BACKDIR/"files_"$today""/
#
# 7日前のバックアップデータ削除
rm -f $BACKDIR"/redmine_db_"$daysago".dump"
rm -fr $BACKDIR"/files_"$daysago
#
# ユーザ権限に変更
chown -R root. $BACKDIR
#
#Apache起動
/etc/init.d/httpd start

cronで実行するように設定するだけ。

pukiwikiのバックアップ

UTF-8で改行コードをかえている。
CentOSでcronで仕込んで実行している。

[pukiwiki_backup.sh]

	#!/bin/bash		
	# バックアップ先ディレクトリを指定		
	BACKDIR=/var/backup		
	#		
	#バックアップ日の日付		
	today=`date +%y%m%d`		
	#		
	#バックアップ日から7日前の日付		
	daysago=`date --date "7 days ago" +%y%m%d`		
	#		
	#バックアップ先フォルダの作成		
	mkdir -p /var/backup/		
	#		
	# pukiwikiののバックアップ		
	tar czvf ${BACKDIR}/pukiwiki_${today}.tar.gz /var/www/html/pukiwiki		
	#
	# 7日前のバックアップデータ削除
	rm -f ${BACKDIR}/pukiwiki_${daysago}.tar.gz
	#
	# ユーザ権限に変更
	chown -R root. $BACKDIR

ant を使って VSSから最新のソースコードを取得する。

きっとVSSの呪縛から逃れられないPJはいたるところにあるはず...。

<project name="vssget" default="distribute" basedir=".">

	<!-- プロパティファイル -->
	<property file="build.properties" />
	<!-- ビルドのルートディレクトリ -->
	<property name="build.root" value="../../build_dev" />
	<!-- Subversionのソースを格納するワークディレクトリ -->
	<property name="build.work" value="${build.root}/work" />
	<!-- VSSがインストールされている(ss.exeがある)ディレクトリ -->
	<property name="vss.ssdir" value="C:/Program Files/Microsoft Visual SourceSafe" />
	<!-- VSSデータベースのディレクトリ -->
	<property name="vss.server" value="//hostname/server_vss/pj_vss" />
	<!-- VSSユーザーID,パスワード -->
	<property name="vss.login" value="vssuserid,vsspassword" />


	<!-- VSSからソースを取得 -->
	<target name="vssget" description="get latest sources from VSS">
		<vssget ssdir="${vss.ssdir}"
				serverPath="${vss.server}"
				login="${vss.login}"
				localpath="${build.work}"
				vsspath="${vss.path}"
				writable="true"
				recursive="true" />
	</target>

</project>