diff options
Diffstat (limited to 'src/steps/process.xsl')
-rw-r--r-- | src/steps/process.xsl | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/steps/process.xsl b/src/steps/process.xsl index 29599f4..67c7f24 100644 --- a/src/steps/process.xsl +++ b/src/steps/process.xsl @@ -28,6 +28,14 @@ )/self::command/@result"/> </xsl:template> +<xsl:template name="create_directory"> + <xsl:param name="path"/> + + <xsl:value-of select="InputXSLT:external-command( + concat('mkdir --parents ./', $path) + )/self::command/@result"/> +</xsl:template> + <xsl:template name="clean"> <xsl:param name="path"/> @@ -268,4 +276,15 @@ </xsl:copy> </xsl:template> +<xsl:template match="task[@type = 'directory']"> + <xsl:copy> + <xsl:attribute name="result"> + <xsl:call-template name="create_directory"> + <xsl:with-param name="path" select="path"/> + </xsl:call-template> + </xsl:attribute> + <xsl:copy-of select="@* | node()"/> + </xsl:copy> +</xsl:template> + </xsl:stylesheet> |