2011年10月22日土曜日

fluxflexを使ってみる@Simple

PHPが使えて、githubから簡単インストール、で有名な?
Fluxflexを使ってみます。
https://www.fluxflex.com/

日本人がサンホセ(シリコンバレーのことですね)で立ち上げた新しいPaaSらしいです。

◆アカウント作成・認証。

簡単にtwitterを使って認証。
ものの5分たたずに最初のsandoboxが立ち上がった。
http://sandbox-6bh0ihgi.fluxflex.com/

素晴らしい。

◆新しいプロジェクト作成

適当にプロジェクト名を決定して・・・
もしかして大文字不可?

ともあれ、名前を入力して、Create A New Project を押して、完了。

名前:cenadta-demo


◆fluxflex用のgithubレポジトリを作成

CenaDTA-fluxflexというレポジトリを作成。

次に作業フォルダーを作って、
public_htmlというフォルダーを作成。ここが公開フォルダーになるとのこと。

その中に、Cena-DTAを放り込む。
噂ではgit内に別のgitがある場合、fluxflexが動かないらしい。
ので、.gitフォルダーはすべて削除。

データベース接続の設定ファイル内のユーザー名などをCENA_DB_USERに変更。後述しますが、設定を変換できるらしい。

そんで、git commit してpush。

◆fluxflexでの設定の方法

さて、githubからimportする際に、DBへの接続パラメータを上書きできるようになってます。これがないと、公開レポジトリ使うとパスワードが漏れてしまいます。

まずは、SetUpの中のDatabaseで、データベース接続パラメターを確認。
同じくSetUp内のInitialize Scriptで、Initializer ScriptとSetEnv Variablesをセットアップ。こんな感じ。
[replace]
public_html/demo/dba.ini.php   CENA_DB_USER     DBA_USER
DB_USER   cenadta-demo
ここで、Github Importで、先のgithubレポジトリ
git@github.com:asaokamei/CenaDTA-fluxflex.git

を指定してimport!

◆動いた・・・が、

早速、DBの初期化。
が、データベースの接続で

SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

と怒られた。

◆なぜでしょう?

まずimportする際に、「Run initialize scripts for setting up the project.」にチェックを入れて押すことに。これで少し前進した様子。

次に、fluxflexのstatistics内のInitialization Logsにエラーを発見。


[!FAILED] invalid fixture key : XPS in line 3

とあって、XPSという文字列の変換に失敗している様子。その後のファイルが見つかりませんのエラーは、最初のエラーが原因で発生しているようで、無視して大丈夫みたい。

うん?XPSなんて文字は指定してないぞ。
どうやら、XPSは環境変数に設定されていない場合のエラーのようです。

◆もう一度、落ち着いてimportとinitializationから

まず、Initialize Scriptの[replace]ですが、
  ファイル名、変換する文字、変換後の文字、
なのですが、変換後の文字はEnvironemntを通して設定するようです。

ただし、最初から次の変数は環境変数に設定されているようです。

# DB_USER ... The username of the project database. This name is the same as project name in almost all cases.
# DB_PASSWORD ... The password of the project database.
# DB_HOST ... The hostname of the project database.
# PROJECT_NAME ... The project name.
なので、Initialize Scriptに、
[replace]
public_html/demo/dba.ini.php   CENA_DB_USER     DB_USER
public_html/demo/dba.ini.php   CENA_DB_PASSWORD    DB_PASSWORD
public_html/demo/dba.ini.php   CENA_DB_HOST     DB_HOST
public_html/demo/dba.ini.php   CENA_DB_NAME     PROJECT_NAME
と設定するだけで動きました。
追記:最初は.fixファイルを使うつもりだったのですが。
忘れてた。こちらの方がgitで管理できるので便利と思われる。

◆Cena-DTAのでもサイトが公開!

http://cenadta-demo.fluxflex.com/

よろしく〜
まだセキュリティ関係があれなので、気をつけて使ってください。
変なデータ入れられても、XSSしてしまいます。
また、定期的にDB内はクリーンアップしますので、大事なデータとか入れないように。

◆文字化けしている。

が、ちょっとみたら文字化けしていますね。
DBに入れた文字が化けてるみたいです。

fluxflexからphpMyAdminを使えますので、早速ログイン。
データベースの操作メニューで、照合順序をみたら、latinとなってます。
これをutf8_unicode_ciに変更して、実行。
一旦テーブルをドロップしてから、作り直したらなおりました。

午後いっぱいかかりましたが、サイト一個アップするのも簡単になりました。
素晴らしいサービスです。いい時代です。

0 件のコメント: