Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 85 lines (54 sloc) 4.494 kb
4cce7ae Basic info added
Michal Bugno authored
1 ---
2 layout: default
3 title: Configuration
4 ---
5 h2. Setting up project
6
edf15ee Antek Piechnik Typos in index and installation
antekpiechnik authored
7 On the homepage, click "New project" on the menu.
4cce7ae Basic info added
Michal Bugno authored
8
9 * **Name** should be a globally unique project name like "My Project master"
9fc3dc5 Antek Piechnik Changes in layout, new contributing page, fixes
antekpiechnik authored
10 * **Vcs type** version control software you are using. Git is the only choice for now, but you can "contribute with your own VCS handler":contributing.html#vcs
3d629f6 Antek Piechnik Further typos in about/configuation and extending
antekpiechnik authored
11 * **Vcs source** the source to the version control repository. Read the "VCS section":#vcs for info
4cce7ae Basic info added
Michal Bugno authored
12 * **Vcs branch** the branch to work on
13 * **Max builds** BigTuna will keep only latest _max_builds_ builds (default: 10)
14 * **Hooks** Connect various hooks to project builder. See "hooks section":#hooks for more information
15 * **Hook name** Set up unique hook name and POST to @http://bigtuna.domain/hooks/build/:name@ to build the app
16
e448a43 Updated configuration for multiple step sets
Michal Bugno authored
17 After creating project you will be redirected to edit page, where you can set up various configurations. For example, you can test your project on different Ruby environments, versions, platforms, etc.
18
19 * **Name** Name for a new configuration
20 * **Steps** Newline-separated build steps; see the "steps section":#steps for more details
21
4040b68 Added delayed job info
Michal Bugno authored
22 Please note, that BigTuna uses DelayedJob as a backend. This means that your jobs are ran by an external DelayedJob process. This process is maintained by @script/delayed_job@ file.
23
24 bc. RAILS_ENV=production ./script/delayed_job start
25
26 Visit "Delayed Job's GitHub page":https://github.com/collectiveidea/delayed_job for more information.
27
4cce7ae Basic info added
Michal Bugno authored
28 h3(#steps). Steps
29
fb2241b Footer added
Michal Bugno authored
30 Steps should be newline--separated shell commands which will be executed in order by our builder. Sample Rails 3 step entry might look like this:
4cce7ae Basic info added
Michal Bugno authored
31
32 bc. bundle install --path=%project_dir%/bundle --deployment
33 cp /project/shared/database.yml.sample %build_dir%/config/database.yml
34 bundle exec rake
35
3d629f6 Antek Piechnik Further typos in about/configuation and extending
antekpiechnik authored
36 Please note that @%build_dir%@ and @%project_dir%@ are special variables. If used in a step, they will be replaced with appropriate paths.
4cce7ae Basic info added
Michal Bugno authored
37
3d629f6 Antek Piechnik Further typos in about/configuation and extending
antekpiechnik authored
38 p(tip). When building a web app, ensure your production data is safe. Use separate @database.yml@ config file with only test environment entry as an extra precaution. That way you'll make sure other databases aren't accessed during the build process.
075feb3 Hook / vcs extending description
Michal Bugno authored
39
4cce7ae Basic info added
Michal Bugno authored
40 h3(#vcs). Version Control
41
3d629f6 Antek Piechnik Further typos in about/configuation and extending
antekpiechnik authored
42 **VCS Source** is the path to your repository. It can either be a local path (like @/my/git/path@) if your repository is locally visible by BigTuna app, or a remote entry (like @your.host:repo.git@). In both cases it __has to be accessible__ by the user which runs your BigTuna application. A remote entry will probably require a passwordless login, so an @id_{r|d}sa.pub@ key has to be present on the remote site.
4cce7ae Basic info added
Michal Bugno authored
43
44 h3(#hooks). Hooks
45
46 Hooks are small code parts that can be executed on various project actions. Currently supported actions are:
00db365 Fixed hook info
Michal Bugno authored
47 * @build_passed(build, config)@ -- invoked when @build@ was successfully ran
48 * @build_fixed(build, config)@ -- invoked when @build@ fixed the failing project
49 * @build_still_fails(build, config)@ -- invoked when @build@ didn't fix the project
50 * @build_finished(build, config)@ -- invoked for every @build@ ran
51 * @build_failed(build, config)@ -- invoked when @build@ failed a valid project
52
53 @config@ in all hooks is a hash of configuration values. You can use it in hook actions to provide custom behaviour based on configuration provided by user.
4cce7ae Basic info added
Michal Bugno authored
54
55 Currently there is a @Mailer@ hook available, which allows you to send emails to specified recipients.
56
9fc3dc5 Antek Piechnik Changes in layout, new contributing page, fixes
antekpiechnik authored
57 If you would like to contribute learn "how to write your own hook":contributing.html#hook
32f8ec2 Read--only mode described
Michal Bugno authored
58
eaef212 bigtuna.yml info update
Michal Bugno authored
59 h2. bigtuna.yml
60
61 BigTuna has few configuration options which can be set up in @config/bigtuna.yml@ file.
32f8ec2 Read--only mode described
Michal Bugno authored
62
63
64 bc. # config/bigtuna.yml
65 test:
66 read_only: false
eaef212 bigtuna.yml info update
Michal Bugno authored
67 github_secure: "mytoken"
32f8ec2 Read--only mode described
Michal Bugno authored
68 production:
69 read_only: true
fc49335 Configuration update, contributor added
Michal Bugno authored
70 url_host: "bigtuna.yourdomain.com"
71
72 h3. Host url
73
74 Set your host for links to work (mandatory in production!)
32f8ec2 Read--only mode described
Michal Bugno authored
75
eaef212 bigtuna.yml info update
Michal Bugno authored
76 h3. Read--only mode
77
78 We can work in read--only mode allowing only to view projects and builds. You can enable it by passing @BIGTUNA_READONLY=1@ env variable while starting server. Also, there is a @read_only@ configuration entry which you can set to boolean value.
79
32f8ec2 Read--only mode described
Michal Bugno authored
80 The environment variable has a higher priority. By default the read--only option is disabled.
eaef212 bigtuna.yml info update
Michal Bugno authored
81
82 h3. GitHub post--receive hook
83
84 You can set up @github_secure@ token for BigTuna. Then in you GitHub project config set up post--receive hook to @big.tuna.host/hooks/build/github/:secure@ and your projects will build automatically based on repository url and branch name. By default this is disabled as token is not set.
Something went wrong with that request. Please try again.