This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
juju-charms [2014/09/30 19:15] ibalutoiu |
juju-charms [2015/02/03 17:44] (current) gsamfira |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Writing Juju Charms for Windows ====== | ====== Writing Juju Charms for Windows ====== | ||
- | :!: This page needs more work :!: | + | ======= Rules ======= |
+ | |||
+ | |||
+ | - Charms are self contained. Under no circumstances should they have any missing pieces or require the user to manually include anything for them to work | ||
+ | - Master branch of any charm is holy ground. If a piece of code gets in, it is expected to work without any issues. | ||
+ | - All new features must be added as new branches. | ||
+ | - Under no circumstances are branches to be merged into master unless they have been thoroughly tested and scrutinized. | ||
+ | - Merges are only to be done after one or more peers have had a chance to review and aprove the code. Untill then, the code WILL remain in its feature branch | ||
+ | - Any deviation from the above is only possible by devine intervention, or if your name is Chuck Norris. | ||
+ | |||
+ | |||
+ | ===== Charm Structure ===== | ||
Line 7: | Line 18: | ||
https://github.com/cloudbase/nova-hyperv-charm | https://github.com/cloudbase/nova-hyperv-charm | ||
- | | ||
By default, Juju adds $env:CHARM_DIR\hooks\Modules and $env:CHARM_DIR\Modules in $env:PSModulePath. So you can simply write a module, bundle it with your charm, and simply do an Import-Module in your hooks. We should strive to create a common suite of helper modules for all juju charms on windows! | By default, Juju adds $env:CHARM_DIR\hooks\Modules and $env:CHARM_DIR\Modules in $env:PSModulePath. So you can simply write a module, bundle it with your charm, and simply do an Import-Module in your hooks. We should strive to create a common suite of helper modules for all juju charms on windows! |