mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
// Copyright 2016 The Gitea Authors. All rights reserved.
 | 
						|
// SPDX-License-Identifier: MIT
 | 
						|
 | 
						|
package structs
 | 
						|
 | 
						|
import (
 | 
						|
	"time"
 | 
						|
)
 | 
						|
 | 
						|
// Release represents a repository release
 | 
						|
type Release struct {
 | 
						|
	// The unique identifier of the release
 | 
						|
	ID int64 `json:"id"`
 | 
						|
	// The name of the git tag associated with the release
 | 
						|
	TagName string `json:"tag_name"`
 | 
						|
	// The target commitish for the release
 | 
						|
	Target string `json:"target_commitish"`
 | 
						|
	// The display title of the release
 | 
						|
	Title string `json:"name"`
 | 
						|
	// The release notes or description
 | 
						|
	Note string `json:"body"`
 | 
						|
	// The API URL of the release
 | 
						|
	URL string `json:"url"`
 | 
						|
	// The HTML URL to view the release
 | 
						|
	HTMLURL string `json:"html_url"`
 | 
						|
	// The URL to download the tarball archive
 | 
						|
	TarURL string `json:"tarball_url"`
 | 
						|
	// The URL to download the zip archive
 | 
						|
	ZipURL string `json:"zipball_url"`
 | 
						|
	// The URL template for uploading release assets
 | 
						|
	UploadURL string `json:"upload_url"`
 | 
						|
	// Whether the release is a draft
 | 
						|
	IsDraft bool `json:"draft"`
 | 
						|
	// Whether the release is a prerelease
 | 
						|
	IsPrerelease bool `json:"prerelease"`
 | 
						|
	// swagger:strfmt date-time
 | 
						|
	CreatedAt time.Time `json:"created_at"`
 | 
						|
	// swagger:strfmt date-time
 | 
						|
	PublishedAt time.Time `json:"published_at"`
 | 
						|
	// The user who published the release
 | 
						|
	Publisher *User `json:"author"`
 | 
						|
	// The files attached to the release
 | 
						|
	Attachments []*Attachment `json:"assets"`
 | 
						|
}
 | 
						|
 | 
						|
// CreateReleaseOption options when creating a release
 | 
						|
type CreateReleaseOption struct {
 | 
						|
	// required: true
 | 
						|
	TagName string `json:"tag_name" binding:"Required"`
 | 
						|
	// The message for the git tag
 | 
						|
	TagMessage string `json:"tag_message"`
 | 
						|
	// The target commitish for the release
 | 
						|
	Target string `json:"target_commitish"`
 | 
						|
	// The display title of the release
 | 
						|
	Title string `json:"name"`
 | 
						|
	// The release notes or description
 | 
						|
	Note string `json:"body"`
 | 
						|
	// Whether to create the release as a draft
 | 
						|
	IsDraft bool `json:"draft"`
 | 
						|
	// Whether to mark the release as a prerelease
 | 
						|
	IsPrerelease bool `json:"prerelease"`
 | 
						|
}
 | 
						|
 | 
						|
// EditReleaseOption options when editing a release
 | 
						|
type EditReleaseOption struct {
 | 
						|
	// The new name of the git tag
 | 
						|
	TagName string `json:"tag_name"`
 | 
						|
	// The new target commitish for the release
 | 
						|
	Target string `json:"target_commitish"`
 | 
						|
	// The new display title of the release
 | 
						|
	Title string `json:"name"`
 | 
						|
	// The new release notes or description
 | 
						|
	Note string `json:"body"`
 | 
						|
	// Whether to change the draft status
 | 
						|
	IsDraft *bool `json:"draft"`
 | 
						|
	// Whether to change the prerelease status
 | 
						|
	IsPrerelease *bool `json:"prerelease"`
 | 
						|
}
 |