|It's that simple.|
It's now 4:37pm on Friday, and I'm now done.
Done with what? The Yo charm, of course!
The Internet has been abuzz this week about the how the Yo app received a whopping $1 million dollars in venture funding. (Forbes notes that this is a pretty surefire indication that there's another internet bubble about to burst...)
It's little more than the first program any kid writes -- hello world!
Subsequently I realized that we don't really have a "hello world" charm. And so here it is, yo.
$ juju deploy yo
Deploying up a webpage that says "Yo" is hardly the point, of course. Rather, this is a fantastic way to see the absolute simplest form of a Juju charm. Grab the source, and go explore it yo-self!
$ charm-get yo $ tree yo ├── config.yaml ├── copyright ├── hooks │ ├── config-changed │ ├── install │ ├── start │ ├── stop │ ├── upgrade-charm │ └── website-relation-joined ├── icon.svg ├── metadata.yaml └── README.md 1 directory, 11 files
- The config.yaml let's you set and dynamically changes the service itself (the color and size of the font that renders "Yo").
- The copyright is simply boilerplate GPLv3
- The icon.svg is just a vector graphics "Yo."
- The metadata.yaml explains what this charm is, how it can relate to other charms
- The README.md is a simple getting-started document
- And the hooks...
- config-changed is the script that runs when you change the configuration -- basically, it uses sed to inline edit the index.html Yo webpage
- install simply installs apache2 and overwrites /var/www/index.html
- start and stop simply starts and stops the apache2 service
- upgrade-charm is currently a no-op
- website-relation-joined sets and exports the hostname and port of this system