Documentation
¶
Index ¶
Constants ¶
const ( AzureLinuxBuddyBuildURL = "https://dev.azure.com/mariner-org/mariner/_build?definitionId=2190" AzureLinuxSourceTarballPublishURL = "https://dev.azure.com/mariner-org/mariner/_build?definitionId=2284" )
const (
CGManifestPath = "cgmanifest.json"
)
Variables ¶
This section is empty.
Functions ¶
func GeneratePRDescription ¶
func GeneratePRDescription(assets *buildassets.BuildAssets, latestMajor, security bool, notify string, prNumber int) string
func GeneratePRTitleFromAssets ¶
func GeneratePRTitleFromAssets(assets *buildassets.BuildAssets, security bool) string
Types ¶
type RepositoryModel ¶
RepositoryModel stores all the file content from the Azure Linux repository that's relevant to the Microsoft build of Go. An update flow involves reading all this data, updating it as needed using the utility methods, then writing it back in some way.
func ReadModel ¶
func ReadModel(f githubutil.SimplifiedFS) (*RepositoryModel, error)
func (*RepositoryModel) UpdateCGManifest ¶
func (rm *RepositoryModel) UpdateCGManifest(buildAssets *buildassets.BuildAssets) error
func (*RepositoryModel) UpdateMatchingVersion ¶
func (rm *RepositoryModel) UpdateMatchingVersion(assets *buildassets.BuildAssets, latestMajor bool, changelogDate time.Time, author string) (*Version, error)
UpdateMatchingVersion updates the version matching the assets/latestMajor using assets/changelogDate, then returns the matched Version. The matched Version may be useful to figure out what files must be written to apply the update.
This is the only method necessary to run a full update flow. If an error occurs, the changes made up to that point are applied and if multiple errors occur, they are joined. This allows for partial upgrades to be applied, which is useful for testing and manual dev work when (e.g.) the Azure Linux repository has partially conflicting changes.
type Version ¶
type Version struct {
// SpecPath is the full path of this spec file inside the repository, e.g.
// "SPECS/golang/golang.spec".
SpecPath string
// Spec content.
Spec []byte
// SignaturesPath is the full path of this signatures file inside the repository.
SignaturesPath string
// Signatures content.
Signatures []byte
}
Version stores the content for a specific version of Go.
func ReadVersion ¶
func ReadVersion(f githubutil.SimplifiedFS, version string) (*Version, error)
func (*Version) Update ¶
func (v *Version) Update(assets *buildassets.BuildAssets, changelogDate time.Time, author string) error