Juju documentation logo
Menu Close menu
  • Store
  • How it works
  • JAAS
  • Experts
  • Community
  • Docs
  • Try the beta
Jump to main content
  • Introduction
    • Home
    • Getting started
    • Install Juju
    • Concepts
    • Tutorials
  • Using Juju
    • Clouds
    • Credentials
    • Controllers
    • Models
    • Applications
    • Relations
    • Constraints
    • Removing things
  • Administering Juju
    • Upgrading
    • Controller backups
    • Controller high availability
    • Application high availability
    • Working with multiple users
    • Troubleshooting
    • Juju logs
  • Advanced topics
    • Charm bundles
    • Machine authentication
    • Migrating models
    • Using storage
    • Working with actions
    • Working with resources
    • Cloud image metadata
    • Tools
  • Networking
    • Working offline
    • Fan container networking
    • Network spaces
  • Miscellaneous
    • Juju GUI
    • CentOS support
    • Collecting Juju metrics
  • Charm writing guide
  • Reference documents
  • Contact us
  • Help improve these docs
  • Report a docs issue

Charm writing guide

Writing charms

  • Getting started
  • Event cycle and reactive states
  • Charm layers and states
  • Writing a charm layer
  • Interface layers
  • Upgrading a charm
  • Juju terms
  • Juju metrics
  • Charm resources
  • Network primitives
  • Implementing leadership
  • Implementing actions
  • Implementing storage
  • Writing charm tests
  • Using Docker

Debugging charms

  • Debugging charm hooks
  • Debugging layers
  • DHX debugging plugin

Charm authors

  • Becoming a charm author
  • How hooks are run (Hook API)
  • Relations lifecycle
  • Implementing relations
  • Charm leadership
  • Hook errors
  • Subordinate applications

Charm Store

  • Working with the Charm Store
  • Charm store policy
  • Best practices
  • Charm icons

© 2018 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.

  • Docs
  • Community
  • Blog
  • Install Juju

Contents

  • Writing charms
  • Debugging charms
  • Charm authors
  • Charm Store