Skip to content

Instantly share code, notes, and snippets.

@awd
awd / gist:601480
Created September 28, 2010 18:18
# this responder allows the system to render a streaming proc
# rendering a proc was removed in Rails 3.0
ActionController::Renderers.add :csv do |proc, options|
raise ArgumentError "CSV responder requires :filename" unless options.key? :filename
filename = options[:filename]
headers.merge!(
'Cache-Control' => 'must-revalidate, post-check=0, pre-check=0',
'Content-Disposition' => "attachment; filename=\"#{filename}\"",
<?xml version="1.0" encoding="utf-8"?>
<s:SkinnableDataContainer
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
skinClass="com.woople.shared.ui.skins.ModuleSectionStackSkin">
<fx:Script>
<![CDATA[
<?xml version="1.0" encoding="utf-8"?>
<!-- build.xml -->
<project name="Flex Ant Tasks Build Script" basedir="." default="compile_modules">
<taskdef resource="flexTasks.tasks" classpath="${basedir}/vendor/flex/ant/lib/flexTasks.jar" />
<property name="FLEX_HOME" value="${basedir}/vendor/flex"/>
<property name="APP_ROOT" value="${basedir}/app/flex"/>
<property name="DEPLOY_DIR" value="${basedir}/public/bin-release" />
<property name="DEBUG" value="false" />
<?xml version="1.0" encoding="utf-8"?>
<mx:Module
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:views="com.woople.admin.ui.views.*"
xmlns:maps="com.woople.admin.maps.*"
xmlns:c="com.woople.shared.ui.controls.*"
width="100%" height="100%"
minWidth="972" minHeight="484">
<mx:Script>
%: ey recipes upload -e YOUR_ENVIRONMENT
%: rake new_cookbook COOKBOOK=ci_setup
# CIJOE
# Example CI Joe rackup config. Drop a cijoe.ru file
# in your projects direct
require 'cijoe'
# set the $project_path global
$project_path = `pwd`.gsub(/\n/, '')
# setup middleware
use Rack::CommonLogger
namespace :woople do
desc "Continuous Integration Notification"
task :continuous_integration => :environment do
# CIJOE
# inline class
class CIMailer < MadMimiMailer
def mimi_blank_template(recipient, subject, message)
from "Woople Notifications <notifications@#{MAIN_HOST}>"
recipients recipient
#!/bin/sh
# CIJOE
#
# Put this file to $PROJECT/.git/hooks/ for email notifications.
#
# Do not forget: chmod +x build-failed
RAILS_ENV=staging rake woople:continuous_integration RECIPIENT=[your_email_address] STATUS="Failed" SHA=$SHA AUTHOR=$AUTHOR MESSAGE=$MESSAGE OUTPUT=$OUTPUT
#!/bin/sh
# CIJOE
#
# Put this file to $PROJECT/.git/hooks/ for after pull changes.
#
rm -rf /data/Woople_CI/current/config/database.yml
ln -s /data/Woople_CI/shared/config/database.yml /data/Woople_CI/current/config/database.yml
rake db:create:all