@@ -2,14 +2,13 @@ package npm
22
33import (
44 "fmt"
5- commandUtils "github.com/jfrog/jfrog-cli-core/v2/artifactory/commands/utils "
6- "github.com/jfrog/jfrog-cli-core/v2/artifactory/utils"
5+ "os "
6+
77 "github.com/jfrog/jfrog-cli-core/v2/utils/config"
88 "github.com/jfrog/jfrog-cli-core/v2/utils/coreutils"
99 npmutils "github.com/jfrog/jfrog-cli-core/v2/utils/npm"
1010 "github.com/jfrog/jfrog-client-go/utils/errorutils"
1111 "github.com/jfrog/jfrog-client-go/utils/log"
12- "os"
1312)
1413
1514type GenericCommandArgs struct {
@@ -18,7 +17,6 @@ type GenericCommandArgs struct {
1817
1918// GenericCommand represents any npm command which is not "install", "ci" or "publish".
2019type GenericCommand struct {
21- configFilePath string
2220 * GenericCommandArgs
2321}
2422
@@ -32,77 +30,15 @@ func (gc *GenericCommand) CommandName() string {
3230 return "rt_npm_generic"
3331}
3432
35- func (gc * GenericCommand ) SetConfigFilePath (configFilePath string ) * GenericCommand {
36- gc .configFilePath = configFilePath
37- return gc
38- }
39-
40- func (gc * GenericCommand ) SetServerDetails (serverDetails * config.ServerDetails ) * GenericCommand {
41- gc .serverDetails = serverDetails
42- return gc
43- }
44-
45- func (gc * GenericCommand ) Init () error {
46- // Filter out JFrog CLI's specific flags.
47- _ , _ , _ , filteredCmd , _ , err := commandUtils .ExtractNpmOptionsFromArgs (gc .npmArgs )
48- if err != nil {
49- return err
50- }
51-
52- err = gc .setServerDetailsAndRepo ()
53- if err != nil {
54- return err
55- }
56- gc .SetNpmArgs (filteredCmd ).SetBuildConfiguration (& utils.BuildConfiguration {})
57- return nil
33+ func (gca * GenericCommandArgs ) ServerDetails () (* config.ServerDetails , error ) {
34+ return gca .serverDetails , nil
5835}
5936
6037func (gc * GenericCommand ) Run () (err error ) {
61- if err = gc .preparePrerequisites (gc . repo ); err != nil {
38+ if err = gc .preparePrerequisites ("" , false ); err != nil {
6239 return
6340 }
64- defer func () {
65- e := gc .restoreNpmrcFunc ()
66- if err == nil {
67- err = e
68- }
69- }()
70- if err = gc .createTempNpmrc (); err != nil {
71- return
72- }
73- err = gc .runNpmGenericCommand ()
74- return
75- }
76-
77- func (gc * GenericCommand ) setServerDetailsAndRepo () error {
78- // Read config file.
79- log .Debug ("Preparing to read the config file" , gc .configFilePath )
80- vConfig , err := utils .ReadConfigFile (gc .configFilePath , utils .YAML )
81- if err != nil {
82- return err
83- }
84-
85- // Set server details if exists, with priority to deployer.
86- for _ , prefix := range []string {utils .ProjectConfigDeployerPrefix , utils .ProjectConfigResolverPrefix } {
87- if vConfig .IsSet (prefix ) {
88- params , err := utils .GetRepoConfigByPrefix (gc .configFilePath , prefix , vConfig )
89- if err != nil {
90- return err
91- }
92- rtDetails , err := params .ServerDetails ()
93- if err != nil {
94- return errorutils .CheckError (err )
95- }
96- gc .SetServerDetails (rtDetails )
97- gc .repo = params .TargetRepo ()
98- return nil
99- }
100- }
101- return nil
102- }
103-
104- func (gca * GenericCommandArgs ) ServerDetails () (* config.ServerDetails , error ) {
105- return gca .serverDetails , nil
41+ return gc .runNpmGenericCommand ()
10642}
10743
10844func (gca * GenericCommandArgs ) runNpmGenericCommand () error {
0 commit comments