CfhighlanderTemplate do

ComponentDistribution "s3://<%= @config['source_bucket'] %>/cfnbackup/cloudformation/<%= @config['stack_name'] %>"

Parameters do
  ComponentParam 'StackName', '<%= @config['stack_name'] %>'
  ComponentParam 'TagKey', '<%= @config['tag_key'] %>'
  ComponentParam 'TagValue', '<%= @config['tag_value'] %>'
  ComponentParam 'DailyRetention', '<%= @config['daily_retention'] %>'
  ComponentParam 'WeeklyRetention', '<%= @config['weekly_retention'] %>'
  ComponentParam 'MonthlyRetention', '<%= @config['monthly_retention'] %>'
  ComponentParam 'YearlyRetention', '<%= @config['yearly_retention'] %>'
  ComponentParam 'DailyCron', '<%= @config['daily_cron'] %>'
  ComponentParam 'WeeklyCron', '<%= @config['weekly_cron'] %>'
  ComponentParam 'MonthlyCron', '<%= @config['monthly_cron'] %>'
  ComponentParam 'YearlyCron', '<%= @config['yearly_cron'] %>'
end

Component template: 'backup', name: 'backup', render: 'inline', config: <%= @config %> do
  parameter name: 'StackName', value: Ref('StackName')
  parameter name: 'TagKey', value: Ref('TagKey')
  parameter name: 'TagValue', value: Ref('TagValue')
  parameter name: 'DailyRetention', value: Ref('DailyRetention')
  parameter name: 'WeeklyRetention', value: Ref('WeeklyRetention')
  parameter name: 'MonthlyRetention', value: Ref('MonthlyRetention')
  parameter name: 'YearlyRetention', value: Ref('YearlyRetention')
  parameter name: 'DailyCron', value: Ref('DailyCron')
  parameter name: 'WeeklyCron', value: Ref('WeeklyCron')
  parameter name: 'MonthlyCron', value: Ref('MonthlyCron')
  parameter name: 'YearlyCron', value: Ref('YearlyCron')
end

end