skills-cassette
Package main provides reproducible builds and tests locally and in GitHub Actions.Installation
dagger install github.com/papercomputeco/skills-cassette@9b9ec574513f5eae3ca36320ceab6b14ca21ed0fEntrypoint
Return Type
SkillsCassette !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | Directory | - | Project source directory. |
Example
dagger -m github.com/papercomputeco/skills-cassette@9b9ec574513f5eae3ca36320ceab6b14ca21ed0f call \
func (m *MyModule) Example() *dagger.SkillsCassette {
return dag.
Skillscassette()
}@function
def example() -> dagger.SkillsCassette:
return (
dag.skills_cassette()
)@func()
example(): SkillsCassette {
return dag
.skillsCassette()
}Types
SkillsCassette 🔗
SkillsCassette is the main module for the skills-cassette CI/CD pipeline.
buildImage() 🔗
BuildImage builds the local-platform skills cassette image.
Return Type
Container !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| version | String | "dev" | Version embedded in the binary. |
Example
dagger -m github.com/papercomputeco/skills-cassette@9b9ec574513f5eae3ca36320ceab6b14ca21ed0f call \
build-imagefunc (m *MyModule) Example() *dagger.Container {
return dag.
Skillscassette().
Buildimage()
}@function
def example() -> dagger.Container:
return (
dag.skills_cassette()
.buildimage()
)@func()
example(): Container {
return dag
.skillsCassette()
.buildImage()
}buildPushImage() 🔗
BuildPushImage builds and publishes the multi-platform skills cassette image.
Return Type
[String ! ] !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| registry | String ! | - | Registry namespace, for example public.ecr.aws/example/papercomputeco. |
| tags | [String ! ] ! | - | Tags to publish, for example [“v1.0.0”, “latest”]. |
| version | String | "dev" | Version embedded in the binary. |
Example
dagger -m github.com/papercomputeco/skills-cassette@9b9ec574513f5eae3ca36320ceab6b14ca21ed0f call \
build-push-image --registry string --tags string1 --tags string2func (m *MyModule) Example(ctx context.Context, registry string, tags []string) []string {
return dag.
Skillscassette().
Buildpushimage(ctx, registry, tags)
}@function
async def example(registry: str, tags: List[str]) -> List[str]:
return await (
dag.skills_cassette()
.buildpushimage(registry, tags)
)@func()
async example(registry: string, tags: string[]): Promise<string[]> {
return dag
.skillsCassette()
.buildPushImage(registry, tags)
}test() 🔗
Test runs the skills-cassette unit tests.
Return Type
String ! Example
dagger -m github.com/papercomputeco/skills-cassette@9b9ec574513f5eae3ca36320ceab6b14ca21ed0f call \
testfunc (m *MyModule) Example(ctx context.Context) string {
return dag.
Skillscassette().
Test(ctx)
}@function
async def example() -> str:
return await (
dag.skills_cassette()
.test()
)@func()
async example(): Promise<string> {
return dag
.skillsCassette()
.test()
}