Dagger
Search

release

This module provides two main functions:
- Semantic: Runs semantic-release to automate versioning, changelog generation, and publishing.
- DeleteTag: Deletes a Git tag locally and remotely, refreshing the repository state before and after.

Installation

dagger install github.com/stuttgart-things/dagger/release@v0.82.1

Entrypoint

Return Type
Release
Example
dagger -m github.com/stuttgart-things/dagger/release@4b323ca44bb6c96bfac4234e95628873eb4145a3 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 🔗

semanticReleaseVersion() 🔗

Base Wolfi image to use

Return Type
String !
Example
dagger -m github.com/stuttgart-things/dagger/release@4b323ca44bb6c96bfac4234e95628873eb4145a3 call \
 semantic-release-version
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Release().
			SemanticReleaseVersion(ctx)
}
@function
async def example() -> str:
	return await (
		dag.release()
		.semantic_release_version()
	)
@func()
async example(): Promise<string> {
	return dag
		.release()
		.semanticReleaseVersion()
}

baseImage() 🔗

Return Type
String !
Example
dagger -m github.com/stuttgart-things/dagger/release@4b323ca44bb6c96bfac4234e95628873eb4145a3 call \
 base-image
func (m *MyModule) Example(ctx context.Context) string  {
	return dag.
			Release().
			BaseImage(ctx)
}
@function
async def example() -> str:
	return await (
		dag.release()
		.base_image()
	)
@func()
async example(): Promise<string> {
	return dag
		.release()
		.baseImage()
}

deleteTag() 🔗

Return Type
Directory !
Arguments
NameTypeDefault ValueDescription
releaseTagString -No description provided
semanticReleaseVersionString "1.0.18-light"No description provided
srcDirectory !-Source folder (e.g. ".")
gitConfigSecret !-No description provided
Example
dagger -m github.com/stuttgart-things/dagger/release@4b323ca44bb6c96bfac4234e95628873eb4145a3 call \
 delete-tag --src DIR_PATH --git-config env:MYSECRET
func (m *MyModule) Example(src *dagger.Directory, gitConfig *dagger.Secret) *dagger.Directory  {
	return dag.
			Release().
			DeleteTag(src, gitConfig)
}
@function
def example(src: dagger.Directory, git_config: dagger.Secret) -> dagger.Directory:
	return (
		dag.release()
		.delete_tag(src, git_config)
	)
@func()
example(src: Directory, gitConfig: Secret): Directory {
	return dag
		.release()
		.deleteTag(src, gitConfig)
}

semantic() 🔗

Semantic runs semantic-release using the specified folder and GitHub token. It first performs a dry run, then a real run with –no-ci.

Return Type
String !
Arguments
NameTypeDefault ValueDescription
semanticReleaseVersionString "1.0.18-light"No description provided
srcDirectory !-Source folder (e.g. ".")
tokenNameString "GITHUB_TOKEN"No description provided
dryRunOnlyBoolean falseNo description provided
tokenSecret -No description provided
Example
dagger -m github.com/stuttgart-things/dagger/release@4b323ca44bb6c96bfac4234e95628873eb4145a3 call \
 semantic --src DIR_PATH
func (m *MyModule) Example(ctx context.Context, src *dagger.Directory) string  {
	return dag.
			Release().
			Semantic(ctxsrc)
}
@function
async def example(src: dagger.Directory) -> str:
	return await (
		dag.release()
		.semantic(src)
	)
@func()
async example(src: Directory): Promise<string> {
	return dag
		.release()
		.semantic(src)
}