commands/job/artifact/artifact.go (36 lines of code) (raw):

package artifact import ( "github.com/MakeNowJust/heredoc/v2" "github.com/spf13/cobra" "gitlab.com/gitlab-org/cli/commands/cmdutils" ) func NewCmdArtifact(f *cmdutils.Factory) *cobra.Command { jobArtifactCmd := &cobra.Command{ Use: "artifact <refName> <jobName> [flags]", Short: `Download all artifacts from the last pipeline.`, Aliases: []string{"push"}, Example: heredoc.Doc(` - glab job artifact main build - glab job artifact main deploy --path="artifacts/" `), Long: ``, Args: cobra.ExactArgs(2), RunE: func(cmd *cobra.Command, args []string) error { repo, err := f.BaseRepo() if err != nil { return err } apiClient, err := f.HttpClient() if err != nil { return err } path, err := cmd.Flags().GetString("path") if err != nil { return err } return DownloadArtifacts(apiClient, repo, path, args[0], args[1]) }, } jobArtifactCmd.Flags().StringP("path", "p", "./", "Path to download the artifact files.") return jobArtifactCmd }