github.com/SAP/cloud-mta-build-tool@v1.2.27/cmd/assembly.go (about)

     1  package commands
     2  
     3  import (
     4  	"os"
     5  
     6  	"github.com/spf13/cobra"
     7  
     8  	"github.com/SAP/cloud-mta-build-tool/internal/artifacts"
     9  )
    10  
    11  const (
    12  	defaultPlatform string = "cf"
    13  )
    14  
    15  var assembleCmdSrc string
    16  var assembleCmdTrg string
    17  var assembleCmdExtensions []string
    18  var assembleCmdMtarName string
    19  var assembleCmdParallel string
    20  
    21  // Assemble the MTA project post-build artifacts, without any build process
    22  var assembleCommand = &cobra.Command{
    23  	Use:   "assemble",
    24  	Short: "Generates an MTA archive according to the MTA deployment descriptor (mtad.yaml)",
    25  	Long:  "Generates an MTA archive according to the MTA deployment descriptor (mtad.yaml)",
    26  	Args:  cobra.NoArgs,
    27  	RunE: func(cmd *cobra.Command, args []string) error {
    28  		err := artifacts.Assembly(assembleCmdSrc, assembleCmdTrg, assembleCmdExtensions, defaultPlatform, assembleCmdMtarName, assembleCmdParallel, os.Getwd)
    29  		logError(err)
    30  		return err
    31  	},
    32  	SilenceUsage:  true,
    33  	SilenceErrors: true,
    34  }
    35  
    36  func init() {
    37  	assembleCommand.Flags().StringVarP(&assembleCmdSrc,
    38  		"source", "s", "", "The path to the MTA project; the current path is set as default")
    39  	assembleCommand.Flags().StringVarP(&assembleCmdTrg,
    40  		"target", "t", "", `The path to the folder in which the MTAR file is created; the path to the "mta_archives" subfolder of the current folder is set as default`)
    41  	assembleCommand.Flags().StringSliceVarP(&assembleCmdExtensions, "extensions", "e", nil,
    42  		"The MTA extension descriptors")
    43  	assembleCommand.Flags().StringVarP(&assembleCmdMtarName,
    44  		"mtar", "m", "", "The archive name")
    45  	assembleCommand.Flags().StringVarP(&assembleCmdParallel,
    46  		"parallel", "p", "true", "If true content copying will run in parallel")
    47  	_ = assembleCommand.Flags().MarkHidden("parallel")
    48  	assembleCommand.Flags().BoolP("help", "h", false, `Displays detailed information about the "assemble" command`)
    49  
    50  }