summaryrefslogtreecommitdiffstats
path: root/vendor/code.gitea.io
diff options
context:
space:
mode:
authorLauris BH <lauris@nix.lv>2019-01-30 18:33:00 +0200
committertechknowlogick <matti@mdranta.net>2019-01-30 11:33:00 -0500
commitfada6968a847f628a6d32ac546e1228838809498 (patch)
treeb0f8c8cd14a5c6e7bbffbc170e52527865a58462 /vendor/code.gitea.io
parent8b5f6ced22d510a399bf304915ad77c61d6ce7b3 (diff)
downloadgitea-fada6968a847f628a6d32ac546e1228838809498.tar.gz
gitea-fada6968a847f628a6d32ac546e1228838809498.zip
Fix new release creation API to allow empty target (#5870)
* Fix new release creation API to allow empty target * Add more test cases * Update swagger
Diffstat (limited to 'vendor/code.gitea.io')
-rw-r--r--vendor/code.gitea.io/sdk/gitea/gitea.go6
-rw-r--r--vendor/code.gitea.io/sdk/gitea/hook.go3
-rw-r--r--vendor/code.gitea.io/sdk/gitea/release.go2
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_commit.go48
-rw-r--r--vendor/code.gitea.io/sdk/gitea/repo_tag.go26
5 files changed, 83 insertions, 2 deletions
diff --git a/vendor/code.gitea.io/sdk/gitea/gitea.go b/vendor/code.gitea.io/sdk/gitea/gitea.go
index 374a3faa96..a5509b2aba 100644
--- a/vendor/code.gitea.io/sdk/gitea/gitea.go
+++ b/vendor/code.gitea.io/sdk/gitea/gitea.go
@@ -70,6 +70,8 @@ func (c *Client) getResponse(method, path string, header http.Header, body io.Re
return nil, errors.New("403 Forbidden")
case 404:
return nil, errors.New("404 Not Found")
+ case 409:
+ return nil, errors.New("409 Conflict")
case 422:
return nil, fmt.Errorf("422 Unprocessable Entity: %s", string(data))
}
@@ -77,7 +79,9 @@ func (c *Client) getResponse(method, path string, header http.Header, body io.Re
if resp.StatusCode/100 != 2 {
errMap := make(map[string]interface{})
if err = json.Unmarshal(data, &errMap); err != nil {
- return nil, err
+ // when the JSON can't be parsed, data was probably empty or a plain string,
+ // so we try to return a helpful error anyway
+ return nil, fmt.Errorf("Unknown API Error: %d %s", resp.StatusCode, string(data))
}
return nil, errors.New(errMap["message"].(string))
}
diff --git a/vendor/code.gitea.io/sdk/gitea/hook.go b/vendor/code.gitea.io/sdk/gitea/hook.go
index ee6e2b79d5..d36e4d4375 100644
--- a/vendor/code.gitea.io/sdk/gitea/hook.go
+++ b/vendor/code.gitea.io/sdk/gitea/hook.go
@@ -160,6 +160,9 @@ type PayloadCommit struct {
Verification *PayloadCommitVerification `json:"verification"`
// swagger:strfmt date-time
Timestamp time.Time `json:"timestamp"`
+ Added []string `json:"added"`
+ Removed []string `json:"removed"`
+ Modified []string `json:"modified"`
}
// PayloadCommitVerification represents the GPG verification of a commit
diff --git a/vendor/code.gitea.io/sdk/gitea/release.go b/vendor/code.gitea.io/sdk/gitea/release.go
index 3605d2cd4a..396251dcac 100644
--- a/vendor/code.gitea.io/sdk/gitea/release.go
+++ b/vendor/code.gitea.io/sdk/gitea/release.go
@@ -53,7 +53,7 @@ func (c *Client) GetRelease(user, repo string, id int64) (*Release, error) {
type CreateReleaseOption struct {
// required: true
TagName string `json:"tag_name" binding:"Required"`
- Target string `json:"target_commitish" binding:"Required"`
+ Target string `json:"target_commitish"`
Title string `json:"name"`
Note string `json:"body"`
IsDraft bool `json:"draft"`
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_commit.go b/vendor/code.gitea.io/sdk/gitea/repo_commit.go
new file mode 100644
index 0000000000..2954f9fc1c
--- /dev/null
+++ b/vendor/code.gitea.io/sdk/gitea/repo_commit.go
@@ -0,0 +1,48 @@
+// Copyright 2018 The Gogs Authors. All rights reserved.
+// Copyright 2019 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package gitea
+
+import (
+ "fmt"
+)
+
+// CommitMeta contains meta information of a commit in terms of API.
+type CommitMeta struct {
+ URL string `json:"url"`
+ SHA string `json:"sha"`
+}
+
+// CommitUser contains information of a user in the context of a commit.
+type CommitUser struct {
+ Name string `json:"name"`
+ Email string `json:"email"`
+ Date string `json:"date"`
+}
+
+// RepoCommit contains information of a commit in the context of a repository.
+type RepoCommit struct {
+ URL string `json:"url"`
+ Author *CommitUser `json:"author"`
+ Committer *CommitUser `json:"committer"`
+ Message string `json:"message"`
+ Tree *CommitMeta `json:"tree"`
+}
+
+// Commit contains information generated from a Git commit.
+type Commit struct {
+ *CommitMeta
+ HTMLURL string `json:"html_url"`
+ RepoCommit *RepoCommit `json:"commit"`
+ Author *User `json:"author"`
+ Committer *User `json:"committer"`
+ Parents []*CommitMeta `json:"parents"`
+}
+
+// GetSingleCommit returns a single commit
+func (c *Client) GetSingleCommit(user, repo, commitID string) (*Commit, error) {
+ commit := new(Commit)
+ return commit, c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/commits/%s", user, repo, commitID), nil, nil, &commit)
+}
diff --git a/vendor/code.gitea.io/sdk/gitea/repo_tag.go b/vendor/code.gitea.io/sdk/gitea/repo_tag.go
new file mode 100644
index 0000000000..27efe8da2e
--- /dev/null
+++ b/vendor/code.gitea.io/sdk/gitea/repo_tag.go
@@ -0,0 +1,26 @@
+// Copyright 2019 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package gitea
+
+import (
+ "fmt"
+)
+
+// Tag represents a repository tag
+type Tag struct {
+ Name string `json:"name"`
+ Commit struct {
+ SHA string `json:"sha"`
+ URL string `json:"url"`
+ } `json:"commit"`
+ ZipballURL string `json:"zipball_url"`
+ TarballURL string `json:"tarball_url"`
+}
+
+// ListRepoTags list all the branches of one repository
+func (c *Client) ListRepoTags(user, repo string) ([]*Tag, error) {
+ tags := make([]*Tag, 0, 10)
+ return tags, c.getParsedResponse("GET", fmt.Sprintf("/repos/%s/%s/tags", user, repo), nil, nil, &tags)
+}