Documentation
¶
Index ¶
- func VerifySignature(payload []byte, signature string, secret string) bool
- type Release
- type ReleaseAsset
- type ReleaseDownloader
- func (d *ReleaseDownloader) DownloadAsset(url, destPath, token string) error
- func (d *ReleaseDownloader) DownloadAssetsAsZip(assets []ReleaseAsset, targetDir, zipFilename, token string) error
- func (d *ReleaseDownloader) DownloadReleaseZip(zipballURL, targetDir, filename, token string) error
- func (d *ReleaseDownloader) DownloadZipball(url, destPath, token string) error
- type ReleasePayload
- type Repository
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Release ¶
type Release struct {
TagName string `json:"tag_name"`
Name string `json:"name"`
ZipballURL string `json:"zipball_url"`
TarballURL string `json:"tarball_url"`
Draft bool `json:"draft"`
Prerelease bool `json:"prerelease"`
Assets []ReleaseAsset `json:"assets"`
}
Release GitHub Release 信息
type ReleaseAsset ¶ added in v0.2.34
type ReleaseAsset struct {
ID int64 `json:"id"`
Name string `json:"name"`
ContentType string `json:"content_type"`
Size int64 `json:"size"`
BrowserDownloadURL string `json:"browser_download_url"`
}
ReleaseAsset GitHub Release Asset 信息
type ReleaseDownloader ¶
type ReleaseDownloader struct {
// contains filtered or unexported fields
}
ReleaseDownloader GitHub Release 下载器
func NewReleaseDownloader ¶
func NewReleaseDownloader() *ReleaseDownloader
NewReleaseDownloader 创建 Release 下载器
func (*ReleaseDownloader) DownloadAsset ¶ added in v0.2.34
func (d *ReleaseDownloader) DownloadAsset(url, destPath, token string) error
DownloadAsset 下载单个 Release Asset
func (*ReleaseDownloader) DownloadAssetsAsZip ¶ added in v0.2.34
func (d *ReleaseDownloader) DownloadAssetsAsZip(assets []ReleaseAsset, targetDir, zipFilename, token string) error
DownloadAssetsAsZip 下载所有 Release Assets 并打包成 ZIP
func (*ReleaseDownloader) DownloadReleaseZip ¶
func (d *ReleaseDownloader) DownloadReleaseZip(zipballURL, targetDir, filename, token string) error
DownloadReleaseZip 下载 Release 并保存为指定文件名
func (*ReleaseDownloader) DownloadZipball ¶
func (d *ReleaseDownloader) DownloadZipball(url, destPath, token string) error
DownloadZipball 下载 Release 的 zipball url: GitHub zipball URL (e.g., https://api.github.com/repos/owner/repo/zipball/v1.0.0) destPath: 目标文件路径
type ReleasePayload ¶
type ReleasePayload struct {
Action string `json:"action"`
Release Release `json:"release"`
Repository Repository `json:"repository"`
}
ReleasePayload GitHub Release Webhook 的 payload 结构
func ParseReleasePayload ¶
func ParseReleasePayload(data []byte) (*ReleasePayload, error)
ParseReleasePayload 解析 Release Webhook payload
func (*ReleasePayload) IsPublishedEvent ¶
func (p *ReleasePayload) IsPublishedEvent() bool
IsPublishedEvent 判断是否是 published 事件
func (*ReleasePayload) IsTargetRepository ¶
func (p *ReleasePayload) IsTargetRepository(fullName string) bool
IsTargetRepository 判断是否是目标仓库
type Repository ¶
Repository GitHub 仓库信息
Click to show internal directories.
Click to hide internal directories.