[elbe-devel] [PATCH 3/9] finetuning: add artifact and rm_artifact command to project-finetuning

Manuel Traut manut at linutronix.de
Fri Nov 30 14:45:56 CET 2018


On 17:28 Wed 28 Nov     , Torben Hohn wrote:
> make it possible to add files generated in project finetuning or
> normal target files to the list of build artifacts, that get downloaded
> when the elbe build copletes.
> 
> Signed-off-by: Torben Hohn <torben.hohn at linutronix.de>
> ---
>  elbepack/finetuning.py | 35 +++++++++++++++++++++++++++++++++++
>  schema/dbsfed.xsd      | 25 +++++++++++++++++++++++++
>  2 files changed, 60 insertions(+)
> 
> diff --git a/elbepack/finetuning.py b/elbepack/finetuning.py
> index 8ba903f0..1aaeda67 100644
> --- a/elbepack/finetuning.py
> +++ b/elbepack/finetuning.py
> @@ -490,6 +490,41 @@ class ProjCmdAction(FinetuningAction):
>  FinetuningAction.register(ProjCmdAction)
>  
>  
> +class ArtifactAction(FinetuningAction):
> +
> +    tag = 'artifact'
> +
> +    def __init__(self, node):
> +        FinetuningAction.__init__(self, node)
> +
> +    def execute(self, _log, _buildenv, target):
> +        target.images.append('target' + self.node.et.text)
> +
> +    def execute_prj(self, _log, _buildenv, target, _builddir):
> +        target.images.append(self.node.et.text)
> +
> +
> +FinetuningAction.register(ArtifactAction)
> +
> +
> +class RmArtifactAction(FinetuningAction):
> +
> +    tag = 'rm_artifact'
> +
> +    def __init__(self, node):
> +        FinetuningAction.__init__(self, node)
> +
> +    def execute(self, _log, _buildenv, _target):
> +        raise NotImplementedError("<rm_artifact> may only be "
> +                                  "used in <project-finetuning>")
> +
> +    def execute_prj(self, _log, _buildenv, target, _builddir):
> +        target.images.remove(self.node.et.text)
> +
> +
> +FinetuningAction.register(ArtifactAction)
> +
> +
>  def do_finetuning(xml, log, buildenv, target):
>  
>      if not xml.has('target/finetuning'):
> diff --git a/schema/dbsfed.xsd b/schema/dbsfed.xsd
> index f0b244d8..e0b6eecb 100644
> --- a/schema/dbsfed.xsd
> +++ b/schema/dbsfed.xsd
> @@ -1828,6 +1828,15 @@
>            </documentation>
>          </annotation>
>        </element>
> +      <element name="artifact" type="rfs:string" minOccurs="0">
> +        <annotation>
> +          <documentation>
> +	    make the named file an artifact. in project-finetuning the path is relative
> +	    to the project directory. In normal finetuning, the path is relative to the
> +	    target root.

only describe normal finetuning here

> +          </documentation>
> +        </annotation>
> +      </element>
>      </choice>
>    </group>
>  
> @@ -1865,6 +1874,22 @@
>            </documentation>
>          </annotation>
>        </element>
> +      <element name="artifact" type="rfs:string" minOccurs="0">
> +        <annotation>
> +          <documentation>
> +	    make the named file an artifact. in project-finetuning the path is relative
> +	    to the project directory. In normal finetuning, the path is relative to the
> +	    target root.

only describe project finetuning here

> +          </documentation>
> +        </annotation>
> +      </element>
> +      <element name="rm_artifact" type="rfs:string" minOccurs="0">
> +        <annotation>
> +          <documentation>
> +	    remove a project artifact from the list of artifacts
> +          </documentation>
> +        </annotation>
> +      </element>
>      </choice>
>    </group>
>  
> -- 
> 2.11.0
> 
> 
> _______________________________________________
> elbe-devel mailing list
> elbe-devel at linutronix.de
> https://lists.linutronix.de/mailman/listinfo/elbe-devel



More information about the elbe-devel mailing list