Dagger
Search

release

A module that encodes the official release process of the Dagger Engine

Installation

dagger install github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba

Entrypoint

Return Type
Release
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
func (m *MyModule) Example() *dagger.Release  {
	return dag.
			Release()
}
@function
def example() -> dagger.Release:
	return (
		dag.release()
	)
@func()
example(): Release {
	return dag
		.release()
}

Types

Release 🔗

bump() 🔗

Change the required dagger engine version across all components

Return Type
Changeset !
Arguments
NameTypeDefault ValueDescription
engineVersionString !-The new required engine version
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 bump --engine-version string
func (m *MyModule) Example(engineVersion string) *dagger.Changeset  {
	return dag.
			Release().
			Bump(engineVersion)
}
@function
def example(engine_version: str) -> dagger.Changeset:
	return (
		dag.release()
		.bump(engine_version)
	)
@func()
example(engineVersion: string): Changeset {
	return dag
		.release()
		.bump(engineVersion)
}

getMaintainers() 🔗

Return Type
[String ! ] !
Arguments
NameTypeDefault ValueDescription
githubOrgNameString !-No description provided
githubTokenSecret -No description provided
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 get-maintainers --github-org-name string
func (m *MyModule) Example(ctx context.Context, githubOrgName string) []string  {
	return dag.
			Release().
			GetMaintainers(ctx, githubOrgName)
}
@function
async def example(github_org_name: str) -> List[str]:
	return await (
		dag.release()
		.get_maintainers(github_org_name)
	)
@func()
async example(githubOrgName: string): Promise<string[]> {
	return dag
		.release()
		.getMaintainers(githubOrgName)
}

notify() 🔗

Return Type
Void !
Arguments
NameTypeDefault ValueDescription
repositoryString !-GitHub repository URL
targetString !-The target tag for the release e.g. sdk/typescript/v0.14.0
nameString !-Name of the component to release
discordWebhookSecret -Discord webhook
dryRunBoolean -Whether to perform a dry run without creating the release
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 notify --repository string --target string --name string
func (m *MyModule) Example(ctx context.Context, repository string, target string, name string)   {
	return dag.
			Release().
			Notify(ctx, repository, target, name)
}
@function
async def example(repository: str, target: str, name: str) -> None:
	return await (
		dag.release()
		.notify(repository, target, name)
	)
@func()
async example(repository: string, target: string, name: string): Promise<void> {
	return dag
		.release()
		.notify(repository, target, name)
}

publish() 🔗

Return Type
Report !
Arguments
NameTypeDefault ValueDescription
tagString !-No description provided
commitString !-No description provided
dryRunBoolean -No description provided
registryImageString -No description provided
registryUsernameString -No description provided
registryPasswordSecret -No description provided
goreleaserKeySecret -No description provided
githubTokenSecret -No description provided
githubOrgNameString -No description provided
netlifyTokenSecret -No description provided
pypiTokenSecret -No description provided
pypiRepoString -No description provided
npmTokenSecret -No description provided
hexApikeySecret -No description provided
cargoRegistryTokenSecret -No description provided
awsAccessKeyIdSecret -No description provided
awsSecretAccessKeySecret -No description provided
awsRegionString -No description provided
awsBucketString -No description provided
awsCloudfrontDistributionString -No description provided
artefactsFqdnString -No description provided
discordWebhookSecret -No description provided
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string
func (m *MyModule) Example(tag string, commit string) *dagger.ReleaseReport  {
	return dag.
			Release().
			Publish(tag, commit)
}
@function
def example(tag: str, commit: str) -> dagger.ReleaseReport:
	return (
		dag.release()
		.publish(tag, commit)
	)
@func()
example(tag: string, commit: string): ReleaseReport {
	return dag
		.release()
		.publish(tag, commit)
}

testLocalRelease() 🔗

Create a fake release a run checks to catch potential breaking changes.

Return Type
Test !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 test-local-release
func (m *MyModule) Example() *dagger.ReleaseTest  {
	return dag.
			Release().
			TestLocalRelease()
}
@function
def example() -> dagger.ReleaseTest:
	return (
		dag.release()
		.test_local_release()
	)
@func()
example(): ReleaseTest {
	return dag
		.release()
		.testLocalRelease()
}

Report 🔗

ref() 🔗

Return Type
String !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 ref
func (m *MyModule) Example(ctx context.Context, tag string, commit string) string  {
	return dag.
			Release().
			Publish(tag, commit).
			Ref(ctx)
}
@function
async def example(tag: str, commit: str) -> str:
	return await (
		dag.release()
		.publish(tag, commit)
		.ref()
	)
@func()
async example(tag: string, commit: string): Promise<string> {
	return dag
		.release()
		.publish(tag, commit)
		.ref()
}

commit() 🔗

Return Type
String !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 commit
func (m *MyModule) Example(ctx context.Context, tag string, commit string) string  {
	return dag.
			Release().
			Publish(tag, commit).
			Commit(ctx)
}
@function
async def example(tag: str, commit: str) -> str:
	return await (
		dag.release()
		.publish(tag, commit)
		.commit()
	)
@func()
async example(tag: string, commit: string): Promise<string> {
	return dag
		.release()
		.publish(tag, commit)
		.commit()
}

version() 🔗

Return Type
String !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 version
func (m *MyModule) Example(ctx context.Context, tag string, commit string) string  {
	return dag.
			Release().
			Publish(tag, commit).
			Version(ctx)
}
@function
async def example(tag: str, commit: str) -> str:
	return await (
		dag.release()
		.publish(tag, commit)
		.version()
	)
@func()
async example(tag: string, commit: string): Promise<string> {
	return dag
		.release()
		.publish(tag, commit)
		.version()
}

date() 🔗

Return Type
String !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 date
func (m *MyModule) Example(ctx context.Context, tag string, commit string) string  {
	return dag.
			Release().
			Publish(tag, commit).
			Date(ctx)
}
@function
async def example(tag: str, commit: str) -> str:
	return await (
		dag.release()
		.publish(tag, commit)
		.date()
	)
@func()
async example(tag: string, commit: string): Promise<string> {
	return dag
		.release()
		.publish(tag, commit)
		.date()
}

artifacts() 🔗

Return Type
[ReportArtifact ! ] !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 artifacts
func (m *MyModule) Example(tag string, commit string) []*dagger.ReleaseReportArtifact  {
	return dag.
			Release().
			Publish(tag, commit).
			Artifacts()
}
@function
def example(tag: str, commit: str) -> List[dagger.ReleaseReportArtifact]:
	return (
		dag.release()
		.publish(tag, commit)
		.artifacts()
	)
@func()
example(tag: string, commit: string): ReleaseReportArtifact[] {
	return dag
		.release()
		.publish(tag, commit)
		.artifacts()
}

followUps() 🔗

Return Type
[ReportFollowUp ! ] !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 follow-ups
func (m *MyModule) Example(tag string, commit string) []*dagger.ReleaseReportFollowUp  {
	return dag.
			Release().
			Publish(tag, commit).
			FollowUps()
}
@function
def example(tag: str, commit: str) -> List[dagger.ReleaseReportFollowUp]:
	return (
		dag.release()
		.publish(tag, commit)
		.follow_ups()
	)
@func()
example(tag: string, commit: string): ReleaseReportFollowUp[] {
	return dag
		.release()
		.publish(tag, commit)
		.followUps()
}

errors() 🔗

Return Type
[Error ! ] !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 errors
func (m *MyModule) Example(tag string, commit string) []*dagger.Error  {
	return dag.
			Release().
			Publish(tag, commit).
			Errors()
}
@function
def example(tag: str, commit: str) -> List[dagger.Error]:
	return (
		dag.release()
		.publish(tag, commit)
		.errors()
	)
@func()
example(tag: string, commit: string): Error[] {
	return dag
		.release()
		.publish(tag, commit)
		.errors()
}

markdown() 🔗

Return Type
String !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 publish --tag string --commit string \
 markdown
func (m *MyModule) Example(ctx context.Context, tag string, commit string) string  {
	return dag.
			Release().
			Publish(tag, commit).
			Markdown(ctx)
}
@function
async def example(tag: str, commit: str) -> str:
	return await (
		dag.release()
		.publish(tag, commit)
		.markdown()
	)
@func()
async example(tag: string, commit: string): Promise<string> {
	return dag
		.release()
		.publish(tag, commit)
		.markdown()
}

Test 🔗

container() 🔗

Return Type
Container !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 test-local-release \
 container
func (m *MyModule) Example() *dagger.Container  {
	return dag.
			Release().
			TestLocalRelease().
			Container()
}
@function
def example() -> dagger.Container:
	return (
		dag.release()
		.test_local_release()
		.container()
	)
@func()
example(): Container {
	return dag
		.release()
		.testLocalRelease()
		.container()
}

existingModule() 🔗

Test calling an existing module with basic commands.

Return Type
Void !
Arguments
NameTypeDefault ValueDescription
testdataDirectory -No description provided
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 test-local-release \
 existing-module
func (m *MyModule) Example(ctx context.Context)   {
	return dag.
			Release().
			TestLocalRelease().
			ExistingModule(ctx)
}
@function
async def example() -> None:
	return await (
		dag.release()
		.test_local_release()
		.existing_module()
	)
@func()
async example(): Promise<void> {
	return dag
		.release()
		.testLocalRelease()
		.existingModule()
}

newModule() 🔗

Test creating a new module and executing basic commands

Return Type
Void !
Example
dagger -m github.com/matipan/dagger/toolchains/release@d5cfd46b94ef1750ae8c5f6e6bbdfb9fa3a03fba call \
 test-local-release \
 new-module
func (m *MyModule) Example(ctx context.Context)   {
	return dag.
			Release().
			TestLocalRelease().
			NewModule(ctx)
}
@function
async def example() -> None:
	return await (
		dag.release()
		.test_local_release()
		.new_module()
	)
@func()
async example(): Promise<void> {
	return dag
		.release()
		.testLocalRelease()
		.newModule()
}

ReportArtifact 🔗

name() 🔗

Return Type
String !
Example
Function ReleaseReportArtifact.name is not accessible from the release module
Function ReleaseReportArtifact.name is not accessible from the release module
Function ReleaseReportArtifact.name is not accessible from the release module
Function ReleaseReportArtifact.name is not accessible from the release module

tag() 🔗

Return Type
String !
Example
Function ReleaseReportArtifact.tag is not accessible from the release module
Function ReleaseReportArtifact.tag is not accessible from the release module
Function ReleaseReportArtifact.tag is not accessible from the release module
Function ReleaseReportArtifact.tag is not accessible from the release module
Return Type
String !
Example
Function ReleaseReportArtifact.link is not accessible from the release module
Function ReleaseReportArtifact.link is not accessible from the release module
Function ReleaseReportArtifact.link is not accessible from the release module
Function ReleaseReportArtifact.link is not accessible from the release module

errors() 🔗

Return Type
[Error ! ] !
Example
Function ReleaseReportArtifact.errors is not accessible from the release module
Function ReleaseReportArtifact.errors is not accessible from the release module
Function ReleaseReportArtifact.errors is not accessible from the release module
Function ReleaseReportArtifact.errors is not accessible from the release module

ReportFollowUp 🔗

name() 🔗

Return Type
String !
Example
Function ReleaseReportFollowUp.name is not accessible from the release module
Function ReleaseReportFollowUp.name is not accessible from the release module
Function ReleaseReportFollowUp.name is not accessible from the release module
Function ReleaseReportFollowUp.name is not accessible from the release module
Return Type
String !
Example
Function ReleaseReportFollowUp.link is not accessible from the release module
Function ReleaseReportFollowUp.link is not accessible from the release module
Function ReleaseReportFollowUp.link is not accessible from the release module
Function ReleaseReportFollowUp.link is not accessible from the release module