1#### Building version 0.1
2    rebar compile
3    cd rel
4    rebar generate
5    mv dummy dummy_0.1
6    cd ..
7    rebar clean
8    # start the release:
9    cd rel/dummy_0.1
10    bin/dummy console
11
12    erl> dummy_server:get_state().
13    erl> dummy_server:set_state(123).
14    erl> dummy_server:get_state().
15
16#### Building version 0.2
17
18    # Now, in another terminal we prepare an upgrade..
19
20    # change release version numbers from 0.1 to 0.2 in
21    $EDITOR apps/dummy/src/dummy.app.src
22    $EDITOR rel/reltool.config
23
24    rebar compile
25    cd rel
26    rebar generate
27    # previous_release path is relative to your rel directory
28    rebar generate-appups previous_release=dummy_0.1
29    rebar generate-upgrade previous_release=dummy_0.1
30    tar -zvtf dummy_0.2.tar.gz
31    mv dummy dummy_0.2
32
33
34#### Deploying with release_handler
35    mv dummy_0.2.tar.gz dummy_0.1/releases/
36
37    # Now use release_handler in the running erlang console for the deploy:
38
39    erl> release_handler:unpack_release("dummy_0.2").
40    erl> release_handler:install_release("0.2").
41    erl> release_handler:make_permanent("0.2").
42
43    erl> release_handler:which_releases().
44    erl> dummy_server:get_state().
45
46#### Building version 0.3
47    rm -r rel/dummy
48
49    # Now repeat steps in 'Building version 0.2' and 'Deploying with release_handler'
50    # while replacing '0.2' by '0.3' and '0.1' by '0.2'.
51