Advertisement
Guest User

Untitled

a guest
May 2nd, 2018
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.18 KB | None | 0 0
  1. import pwd
  2. import os
  3. from subprocess import call
  4. from charmhelpers.core.hookenv import log, status_set
  5. from charmhelpers.core.templating import render
  6. from charms.reactive import when, when_not, set_flag, clear_flag
  7.  
  8. @when('apache.available', 'mysqldatabase.connected')
  9. def request_db(database):
  10.     database.configure('proto', 'admin', 'admin', prefix="proto")
  11.     log("db requested")
  12.  
  13. @when('apache.available', 'mysqldatabase.available')
  14. def setup_app(mysql):
  15.     render(source='mysql_configure.php',
  16.         target='/var/www/proto-adminer/mysql_configure.php',
  17.         owner='www-data',
  18.         perms=0o775,
  19.         context={
  20.             'db': mysql,
  21.         })
  22.     log("in setup function")
  23.     set_flag('apache.start')
  24.     status_set('maintenance', 'Setting up application')
  25.  
  26.  
  27. @when('apache.available')
  28. @when_not('mysqldatabase.connected')
  29. def no_mysql_relation():
  30.     status_set('waiting', 'Waiting for mysql relation')
  31.  
  32.  
  33. @when('mysqldatabase.connected')
  34. @when_not('mysqldatabase.available')
  35. def mysql_connected_but_waiting(mysql):
  36.     status_set('waiting', 'Waiting for mysql service')
  37.  
  38. @when('apache.started')
  39. def apache_started():
  40.     status_set('active', 'Ready')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement