+ } ~>
+ file { "$caldance_app/manage":
+ owner => $user,
+ group => $group,
+ mode => "0755",
+ content => template("role/caldance/manage.sh.erb"),
+ require => [
+ User["$user:"],
+ File["$caldance_app/manage.py"],
+ Archive[ "${home}/caldance_${caldance_version}.tar.gz"],
+ ],
+ } ~>
+ file { "$caldance_app/app.ini":
+ owner => $user,
+ group => $group,
+ mode => "0644",
+ content => template("role/caldance/app.ini.erb"),
+ require => [
+ User["$user:"],
+ Archive[ "${home}/caldance_${caldance_version}.tar.gz"],
+ ],
+ } ~>
+ exec { "py-migrate":
+ cwd => $caldance_app,
+ user => $user,
+ environment => ["HOME=${home}"],
+ command => "$caldance_app/manage migrate",
+ require => [User["$user:"], File["$caldance_app/manage"]],
+ refreshonly => true,
+ } ~>
+ exec { "py-static":
+ cwd => $caldance_app,
+ user => $user,
+ environment => ["HOME=${home}"],
+ command => "$caldance_app/manage collectstatic --no-input",
+ require => [User["$user:"], File["$caldance_app/manage"]],
+ refreshonly => true,
+ } ~>
+ exec { "restart uwsgi application":
+ command => "/usr/bin/systemctl restart caldance-app.service",
+ require => [User["$user:"], File["$caldance_app/app.ini"]],
+ refreshonly => true,