Split the deployment into kosmos-mastodon::build (checkout + bundle/yarn/assets, no database) and kosmos-mastodon::deploy (migrations + services), dispatched by the new 'build' attribute. Both phases are idempotent per checked-out revision via stamps, and the migration/restart/search-index chain is now triggered by the deployed revision instead of the git resource, so it still runs when the build was pre-staged.
13 lines
195 B
Ruby
13 lines
195 B
Ruby
name "mastodon"
|
|
|
|
default_attributes 'kosmos-mastodon' => {
|
|
'deploy' => false,
|
|
'build' => false
|
|
}
|
|
|
|
run_list %w(
|
|
role[postgresql_client]
|
|
kosmos-mastodon::libretranslate
|
|
kosmos-mastodon
|
|
)
|