Skip to content

Commit 63b6f86

Browse files
committed
Add project.id to configuration
1 parent a12f302 commit 63b6f86

File tree

6 files changed

+31
-17
lines changed

6 files changed

+31
-17
lines changed

internal/bundler/metadata.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ func projectMetadata() ([][2]string, error) {
1313
{"sqlc_version", info.Version},
1414
{"go_version", runtime.Version()},
1515
{"goos", runtime.GOOS},
16-
{"goach", runtime.GOARCH},
16+
{"goarch", runtime.GOARCH},
1717
{"created", now.Format(time.RFC3339)},
1818
}, nil
1919
}

internal/bundler/multipart.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ func writeInputs(w *multipart.Writer, file string, conf *config.Config) error {
3636
if err != nil {
3737
return err
3838
}
39+
params = append(params, [2]string{"project_id", conf.Project.ID})
3940
for _, val := range params {
4041
if err = w.WriteField(val[0], val[1]); err != nil {
4142
return err

internal/bundler/upload.go

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import (
66
"fmt"
77
"mime/multipart"
88
"net/http"
9+
"os"
910

1011
"github.com/kyleconroy/sqlc/internal/config"
1112
)
@@ -24,11 +25,19 @@ func NewUploader(configPath, dir string, conf *config.Config) *Uploader {
2425
}
2526
}
2627

28+
func (up *Uploader) Validate() error {
29+
if up.config.Project.ID == "" {
30+
return fmt.Errorf("project ID is not set")
31+
}
32+
return nil
33+
}
34+
2735
func (up *Uploader) Upload(ctx context.Context, result map[string]string) error {
36+
if err := up.Validate(); err != nil {
37+
return err
38+
}
2839
body := bytes.NewBuffer([]byte{})
2940

30-
// gw := gzip.NewWriter(body)
31-
// defer gw.Close()
3241
w := multipart.NewWriter(body)
3342
defer w.Close()
3443

@@ -39,11 +48,7 @@ func (up *Uploader) Upload(ctx context.Context, result map[string]string) error
3948
return err
4049
}
4150

42-
// if err := gw.Flush(); err != nil {
43-
// return err
44-
// }
4551
w.Close()
46-
// gw.Close()
4752

4853
req, err := http.NewRequest("POST", "http://localhost:8090/upload", body)
4954
if err != nil {
@@ -52,14 +57,15 @@ func (up *Uploader) Upload(ctx context.Context, result map[string]string) error
5257

5358
// Set sqlc-version header
5459
req.Header.Set("Content-Type", w.FormDataContentType())
60+
req.Header.Set("Authorization", fmt.Sprintf("Bearer %s", os.Getenv("SQLC_AUTH_TOKEN")))
5561
req = req.WithContext(ctx)
5662

5763
client := &http.Client{}
5864
resp, err := client.Do(req)
5965
if err != nil {
6066
return err
6167
}
62-
if resp.StatusCode != http.StatusOK {
68+
if resp.StatusCode >= 400 {
6369
return fmt.Errorf("code=%d", resp.StatusCode)
6470
}
6571
return nil

internal/cmd/package.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,25 @@ var packageCmd = &cobra.Command{
1818
stderr := cmd.ErrOrStderr()
1919
dir, name := getConfigPath(stderr, cmd.Flag("file"))
2020
if err := createPkg(cmd.Context(), ParseEnv(cmd), dir, name, stderr); err != nil {
21-
fmt.Fprintf(stderr, "error uploading project: %s\n", err)
21+
fmt.Fprintf(stderr, "error uploading: %s\n", err)
2222
os.Exit(1)
2323
}
2424
return nil
2525
},
2626
}
2727

2828
func createPkg(ctx context.Context, e Env, dir, filename string, stderr io.Writer) error {
29-
output, err := Generate(ctx, e, dir, filename, stderr)
30-
if err != nil {
31-
os.Exit(1)
32-
}
3329
configPath, conf, err := readConfig(stderr, dir, filename)
3430
if err != nil {
3531
return err
3632
}
3733
up := bundler.NewUploader(configPath, dir, conf)
38-
if err != nil {
34+
if err := up.Validate(); err != nil {
3935
return err
4036
}
37+
output, err := Generate(ctx, e, dir, filename, stderr)
38+
if err != nil {
39+
os.Exit(1)
40+
}
4141
return up.Upload(ctx, output)
4242
}

internal/config/config.go

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,14 @@ const (
7878
)
7979

8080
type Config struct {
81-
Version string `json:"version" yaml:"version"`
82-
SQL []SQL `json:"sql" yaml:"sql"`
83-
Gen Gen `json:"overrides,omitempty" yaml:"overrides"`
81+
Version string `json:"version" yaml:"version"`
82+
Project Project `json:"project" yaml:"project"`
83+
SQL []SQL `json:"sql" yaml:"sql"`
84+
Gen Gen `json:"overrides,omitempty" yaml:"overrides"`
85+
}
86+
87+
type Project struct {
88+
ID string `json:"id" yaml:"id"`
8489
}
8590

8691
type Gen struct {

internal/config/v_one.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010

1111
type V1GenerateSettings struct {
1212
Version string `json:"version" yaml:"version"`
13+
Project Project `json:"project" yaml:"project"`
1314
Packages []v1PackageSettings `json:"packages" yaml:"packages"`
1415
Overrides []Override `json:"overrides,omitempty" yaml:"overrides,omitempty"`
1516
Rename map[string]string `json:"rename,omitempty" yaml:"rename,omitempty"`
@@ -105,6 +106,7 @@ func (c *V1GenerateSettings) ValidateGlobalOverrides() error {
105106
func (c *V1GenerateSettings) Translate() Config {
106107
conf := Config{
107108
Version: c.Version,
109+
Project: c.Project,
108110
}
109111

110112
for _, pkg := range c.Packages {

0 commit comments

Comments
 (0)