~abentley/charms/precise/charmworld/charm-import-limit

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# Overview

If you're reading this on http://jujucharms.com then you've seen what it
can do. In short, this deploys [charmworld](http://launchpad.net/charmworld)
which is the [Charm Browser](http://jujucharms.com) and additional tools.

# Installation

You will need to have [Juju](http://juju.ubuntu.com) installed and a [Juju
Environment bootstrapped](https://juju.ubuntu.com/docs/getting-started.html).
To deploy charmworld you will need a MongoDB instance in addition to
charmworld:

    juju deploy mongodb --constraints instance-type=m1.small

Deploy Charmworld

    juju deploy cs:~juju-jitsu/precise/charmworld --constraints \
    instance-type=m1.small

Once deployed relate mongodb to charmworld

    juju add-relation charmworld mongodb

Add an Apache proxy

    # You'll need a local juju repository with a copy of
    # lp:~canonical-losas/canonical-marshal/apache2
    juju deploy local:apache2 --repository=$PATH_TO_REPOSITORY
    scripts/configure-apache2
    juju add-relation apache2:reverseproxy charmworld

Finally, expose charmworld to the Internet

    juju expose apache2

You should now be able to get to charmworld via the IP address provided in the
output of `juju status`.

**NOTE:** There is a delay after the adding the mongodb relation. This is due
to the process of ingesting the initial batch of charms. Future updates will
take far less time. How will you know when it's ready? Like all good charms,
the port won't open until after the charm is ready.  So if you've run the `juju
expose` command and you don't see any open ports listed in the `juju status`
output (and no error states), then the set up hasn't finished.

# Configuration

There are the options you can configure for charmworld

## Error email

This is the address that error messages (i.e. from cron) will be sent to.  (For
Canonistack instances, this must be an @canonical.com address.)

    juju set charmworld error-email=jrandom@example.com

## Ingest interval

Adjust this to increase or decrease the time between ingest runs. Cron will
execute "scripts/ingest" which update and refresh the charm details, the
information in each queue, and all other inbound related data points. The
default for this is `15` mins.  An interval of less than 5 would likely cause
issues, so values of less than 5 are promoted to 5.  A value of 0 will disable
the cron job.

    juju set charmworld execute-ingest-every=15

## Source location

Adjust this to retrieve charmworld's source code from a different bzr branch.

    juju set charmworld 'source=lp:~abentley/charmworld/charm-deployment'

## Mongodb storage

If a particular filesystem has more storage than the root filesystem, for
example /mnt on Canonistack instances, you may wish to configure Mongodb to use
a particular path:

    juju set mongodb dbpath=/mnt/mongodb

# Credits

Report charm bugs at: https://bugs.launchpad.net/charms/precise/+source/charmworld
Report system bugs at: https://bugs.launchpad.net/charmworld
Location: http://jujucharms.com/charms/precise/charmworld