@@ -11,13 +11,14 @@ import (
1111 "time"
1212
1313 "github.com/briandowns/spinner"
14- "github.com/coder/coder/coderd"
15- "github.com/coder/coder/codersdk"
16- "github.com/coder/coder/database"
1714 "github.com/fatih/color"
1815 "github.com/manifoldco/promptui"
1916 "github.com/spf13/cobra"
2017 "golang.org/x/xerrors"
18+
19+ "github.com/coder/coder/coderd"
20+ "github.com/coder/coder/codersdk"
21+ "github.com/coder/coder/database"
2122)
2223
2324func projectCreate () * cobra.Command {
@@ -48,9 +49,8 @@ func projectCreate() *cobra.Command {
4849 return err
4950 }
5051
51- name := filepath .Base (workingDir )
52- name , err = runPrompt (cmd , & promptui.Prompt {
53- Default : name ,
52+ name , err := runPrompt (cmd , & promptui.Prompt {
53+ Default : filepath .Base (workingDir ),
5454 Label : "What's your project's name?" ,
5555 Validate : func (s string ) error {
5656 _ , err = client .Project (cmd .Context (), organization .Name , s )
@@ -69,7 +69,7 @@ func projectCreate() *cobra.Command {
6969 spin .Start ()
7070 defer spin .Stop ()
7171
72- bytes , err := tarDir (workingDir )
72+ bytes , err := tarDirectory (workingDir )
7373 if err != nil {
7474 return err
7575 }
@@ -102,54 +102,50 @@ func projectCreate() *cobra.Command {
102102 if ! ok {
103103 break
104104 }
105- fmt .Fprintf (cmd .OutOrStdout (), "%s %s\n " , color .HiGreenString ("[parse]" ), log .Output )
105+ _ , _ = fmt .Fprintf (cmd .OutOrStdout (), "%s %s\n " , color .HiGreenString ("[parse]" ), log .Output )
106106 }
107107
108- fmt .Printf ( "Projects %+v %+v \n " , projects , organization )
108+ _ , _ = fmt .Fprintf ( cmd . OutOrStdout (), "Create project %q! \n " , name )
109109 return nil
110110 },
111111 }
112112}
113113
114- func tarDir (directory string ) ([]byte , error ) {
114+ func tarDirectory (directory string ) ([]byte , error ) {
115115 var buffer bytes.Buffer
116- tw := tar .NewWriter (& buffer )
117- // walk through every file in the folder
118- err := filepath .Walk (directory , func (file string , fi os.FileInfo , err error ) error {
119- // generate tar header
120- header , err := tar .FileInfoHeader (fi , file )
116+ tarWriter := tar .NewWriter (& buffer )
117+ err := filepath .Walk (directory , func (file string , fileInfo os.FileInfo , err error ) error {
118+ if err != nil {
119+ return err
120+ }
121+ header , err := tar .FileInfoHeader (fileInfo , file )
121122 if err != nil {
122123 return err
123124 }
124-
125- // must provide real name
126- // (see https://golang.org/src/archive/tar/common.go?#L626)
127125 rel , err := filepath .Rel (directory , file )
128126 if err != nil {
129127 return err
130128 }
131129 header .Name = rel
132-
133- // write header
134- if err := tw .WriteHeader (header ); err != nil {
130+ if err := tarWriter .WriteHeader (header ); err != nil {
135131 return err
136132 }
137- // if not a dir, write file content
138- if ! fi . IsDir () {
139- data , err := os . Open ( file )
140- if err != nil {
141- return err
142- }
143- if _ , err := io . Copy ( tw , data ); err != nil {
144- return err
145- }
133+ if fileInfo . IsDir () {
134+ return nil
135+ }
136+ data , err := os . Open ( file )
137+ if err != nil {
138+ return err
139+ }
140+ if _ , err := io . Copy ( tarWriter , data ); err != nil {
141+ return err
146142 }
147- return nil
143+ return data . Close ()
148144 })
149145 if err != nil {
150146 return nil , err
151147 }
152- err = tw .Flush ()
148+ err = tarWriter .Flush ()
153149 if err != nil {
154150 return nil , err
155151 }
0 commit comments