Skip to content
This repository was archived by the owner on Dec 18, 2020. It is now read-only.

Commit 4766d8c

Browse files
committed
bitbucket sync: add account params
1 parent 5e18cf2 commit 4766d8c

File tree

3 files changed

+258
-51
lines changed

3 files changed

+258
-51
lines changed

Gopkg.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

router.go

Lines changed: 54 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,23 @@ func router(cfg *phraseapp.Config) (*cli.Router, error) {
3838

3939
r.Register("authorizations/list", newAuthorizationsList(cfg), "List all your authorizations.")
4040

41-
r.Register("bitbucket_sync/export", newBitbucketSyncExport(cfg), "Export translations from PhraseApp to Bitbucket according to the .phraseapp.yml file within the Bitbucket Repository.")
41+
if cmd, err := newBitbucketSyncExport(cfg); err != nil {
42+
return nil, err
43+
} else {
44+
r.Register("bitbucket_sync/export", cmd, "Export translations from PhraseApp to Bitbucket according to the .phraseapp.yml file within the Bitbucket Repository.")
45+
}
4246

43-
r.Register("bitbucket_sync/import", newBitbucketSyncImport(cfg), "Import translations from Bitbucket to PhraseApp according to the .phraseapp.yml file within the Bitbucket repository.")
47+
if cmd, err := newBitbucketSyncImport(cfg); err != nil {
48+
return nil, err
49+
} else {
50+
r.Register("bitbucket_sync/import", cmd, "Import translations from Bitbucket to PhraseApp according to the .phraseapp.yml file within the Bitbucket repository.")
51+
}
4452

45-
r.Register("bitbucket_syncs/list", newBitbucketSyncsList(cfg), "List all Bitbucket repositories for which synchronisation with PhraseApp is activated.")
53+
if cmd, err := newBitbucketSyncsList(cfg); err != nil {
54+
return nil, err
55+
} else {
56+
r.Register("bitbucket_syncs/list", cmd, "List all Bitbucket repositories for which synchronisation with PhraseApp is activated.")
57+
}
4658

4759
if cmd, err := newBlacklistedKeyCreate(cfg); err != nil {
4860
return nil, err
@@ -699,24 +711,33 @@ func (cmd *AuthorizationsList) Run() error {
699711
type BitbucketSyncExport struct {
700712
phraseapp.Config
701713

714+
phraseapp.BitbucketSyncParams
715+
702716
ID string `cli:"arg required"`
703717
}
704718

705-
func newBitbucketSyncExport(cfg *phraseapp.Config) *BitbucketSyncExport {
719+
func newBitbucketSyncExport(cfg *phraseapp.Config) (*BitbucketSyncExport, error) {
706720

707721
actionBitbucketSyncExport := &BitbucketSyncExport{Config: *cfg}
708722

709-
return actionBitbucketSyncExport
723+
val, defaultsPresent := actionBitbucketSyncExport.Config.Defaults["bitbucket_sync/export"]
724+
if defaultsPresent {
725+
if err := actionBitbucketSyncExport.ApplyValuesFromMap(val); err != nil {
726+
return nil, err
727+
}
728+
}
729+
return actionBitbucketSyncExport, nil
710730
}
711731

712732
func (cmd *BitbucketSyncExport) Run() error {
733+
params := &cmd.BitbucketSyncParams
713734

714735
client, err := newClient(cmd.Config.Credentials, cmd.Config.Debug)
715736
if err != nil {
716737
return err
717738
}
718739

719-
res, err := client.BitbucketSyncExport(cmd.ID)
740+
res, err := client.BitbucketSyncExport(cmd.ID, params)
720741

721742
if err != nil {
722743
return err
@@ -728,24 +749,33 @@ func (cmd *BitbucketSyncExport) Run() error {
728749
type BitbucketSyncImport struct {
729750
phraseapp.Config
730751

752+
phraseapp.BitbucketSyncParams
753+
731754
ID string `cli:"arg required"`
732755
}
733756

734-
func newBitbucketSyncImport(cfg *phraseapp.Config) *BitbucketSyncImport {
757+
func newBitbucketSyncImport(cfg *phraseapp.Config) (*BitbucketSyncImport, error) {
735758

736759
actionBitbucketSyncImport := &BitbucketSyncImport{Config: *cfg}
737760

738-
return actionBitbucketSyncImport
761+
val, defaultsPresent := actionBitbucketSyncImport.Config.Defaults["bitbucket_sync/import"]
762+
if defaultsPresent {
763+
if err := actionBitbucketSyncImport.ApplyValuesFromMap(val); err != nil {
764+
return nil, err
765+
}
766+
}
767+
return actionBitbucketSyncImport, nil
739768
}
740769

741770
func (cmd *BitbucketSyncImport) Run() error {
771+
params := &cmd.BitbucketSyncParams
742772

743773
client, err := newClient(cmd.Config.Credentials, cmd.Config.Debug)
744774
if err != nil {
745775
return err
746776
}
747777

748-
err = client.BitbucketSyncImport(cmd.ID)
778+
err = client.BitbucketSyncImport(cmd.ID, params)
749779

750780
if err != nil {
751781
return err
@@ -757,11 +787,13 @@ func (cmd *BitbucketSyncImport) Run() error {
757787
type BitbucketSyncsList struct {
758788
phraseapp.Config
759789

790+
phraseapp.BitbucketSyncParams
791+
760792
Page int `cli:"opt --page default=1"`
761793
PerPage int `cli:"opt --per-page default=25"`
762794
}
763795

764-
func newBitbucketSyncsList(cfg *phraseapp.Config) *BitbucketSyncsList {
796+
func newBitbucketSyncsList(cfg *phraseapp.Config) (*BitbucketSyncsList, error) {
765797

766798
actionBitbucketSyncsList := &BitbucketSyncsList{Config: *cfg}
767799
if cfg.Page != nil {
@@ -771,17 +803,24 @@ func newBitbucketSyncsList(cfg *phraseapp.Config) *BitbucketSyncsList {
771803
actionBitbucketSyncsList.PerPage = *cfg.PerPage
772804
}
773805

774-
return actionBitbucketSyncsList
806+
val, defaultsPresent := actionBitbucketSyncsList.Config.Defaults["bitbucket_syncs/list"]
807+
if defaultsPresent {
808+
if err := actionBitbucketSyncsList.ApplyValuesFromMap(val); err != nil {
809+
return nil, err
810+
}
811+
}
812+
return actionBitbucketSyncsList, nil
775813
}
776814

777815
func (cmd *BitbucketSyncsList) Run() error {
816+
params := &cmd.BitbucketSyncParams
778817

779818
client, err := newClient(cmd.Config.Credentials, cmd.Config.Debug)
780819
if err != nil {
781820
return err
782821
}
783822

784-
res, err := client.BitbucketSyncsList(cmd.Page, cmd.PerPage)
823+
res, err := client.BitbucketSyncsList(cmd.Page, cmd.PerPage, params)
785824

786825
if err != nil {
787826
return err
@@ -2247,6 +2286,7 @@ type JobLocaleComplete struct {
22472286
phraseapp.Config
22482287

22492288
ProjectID string `cli:"arg required"`
2289+
JobID string `cli:"arg required"`
22502290
ID string `cli:"arg required"`
22512291
}
22522292

@@ -2265,7 +2305,7 @@ func (cmd *JobLocaleComplete) Run() error {
22652305
return err
22662306
}
22672307

2268-
res, err := client.JobLocaleComplete(cmd.ProjectID, cmd.ID)
2308+
res, err := client.JobLocaleComplete(cmd.ProjectID, cmd.JobID, cmd.ID)
22692309

22702310
if err != nil {
22712311
return err
@@ -2550,6 +2590,7 @@ type KeyDelete struct {
25502590
phraseapp.Config
25512591

25522592
ProjectID string `cli:"arg required"`
2593+
JobID string `cli:"arg required"`
25532594
ID string `cli:"arg required"`
25542595
}
25552596

0 commit comments

Comments
 (0)