pl.wrzasq.cform.macro.pipeline.PipelineAction.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cform-macro Show documentation
Show all versions of cform-macro Show documentation
AWS CloudFormation template processing macro.
/**
* This file is part of the pl.wrzasq.cform.
*
* @license http://mit-license.org/ The MIT license
* @copyright 2021 © by Rafał Wrzeszcz - Wrzasq.pl.
*/
package pl.wrzasq.cform.macro.pipeline
/**
* Pipeline action definition.
*/
interface PipelineAction {
/**
* Action identifier.
*/
val name: String
/**
* Input artifacts names.
*/
val inputs: Set
/**
* Provided artifacts.
*/
val outputs: Set
/**
* Actions on which current one depends.
*/
val dependencies: Set
/**
* Variables namespace.
*/
var namespace: String?
/**
* Execution order within stage.
*/
var runOrder: Int?
/**
* Compiles action.
*
* @param manager Pipeline references resolver.
*/
fun compile(manager: PipelineManager) {}
/**
* Builds template structure.
*
* @return Template fragment.
*/
fun buildDefinition(): Map
}