shields
Provides utilities for building common badges used in READMEs, e.g. code coverage, license, etc. The primary, default, use case is starting a shields.io image as a local dagger service, with the option to utilizie the publicly available img.shields.io.Most functions provide standard badge formats, such as 80% code coverage considered the "green" threshold.
A general badge query is available if the base functions are insufficient:
dagger call send-query --label="example" --value="foo" --color="brightgreen" --remote-host= "https://img.shields.io" export --path badge.svg
Installation
dagger install github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46ccEntrypoint
Return Type
Shields ! Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
func (m *MyModule) Example() *dagger.Shields {
return dag.
Shields()
}@function
def example() -> dagger.Shields:
return (
dag.shields()
)@func()
example(): Shields {
return dag
.shields()
}Types
Shields 🔗
coverage() 🔗
Generate a code coverage badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| value | Float ! | - | Code coverage percentage value. |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
coveragefunc (m *MyModule) Example(value ) *dagger.File {
return dag.
Shields().
Coverage(value)
}@function
def example(value: ) -> dagger.File:
return (
dag.shields()
.coverage(value)
)@func()
example(value: ): File {
return dag
.shields()
.coverage(value)
}pylint() 🔗
Generate a pylint badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| value | Float ! | - | Pylint score value. |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
pylintfunc (m *MyModule) Example(value ) *dagger.File {
return dag.
Shields().
Pylint(value)
}@function
def example(value: ) -> dagger.File:
return (
dag.shields()
.pylint(value)
)@func()
example(value: ): File {
return dag
.shields()
.pylint(value)
}pipelineStatus() 🔗
Generate a pipeline status badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| passing | Boolean ! | - | Pipeline passes. |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
pipeline-status --passing booleanfunc (m *MyModule) Example(passing bool) *dagger.File {
return dag.
Shields().
PipelineStatus(passing)
}@function
def example(passing: bool) -> dagger.File:
return (
dag.shields()
.pipeline_status(passing)
)@func()
example(passing: boolean): File {
return dag
.shields()
.pipelineStatus(passing)
}version() 🔗
Generate a semantic version badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| label | String | "version" | Badge Label |
| version | String ! | - | Semantic version, e.g. "v1.2.3" |
| color | String | "blue" | Badge color |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
version --version stringfunc (m *MyModule) Example(version string) *dagger.File {
return dag.
Shields().
Version(version)
}@function
def example(version: str) -> dagger.File:
return (
dag.shields()
.version(version)
)@func()
example(version: string): File {
return dag
.shields()
.version(version)
}license() 🔗
Generate a license badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| name | String ! | - | License name, e.g. "MIT" |
| color | String | "B8860B" | Badge color. Default is a dark gold. |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
license --name stringfunc (m *MyModule) Example(name string) *dagger.File {
return dag.
Shields().
License(name)
}@function
def example(name: str) -> dagger.File:
return (
dag.shields()
.license(name)
)@func()
example(name: string): File {
return dag
.shields()
.license(name)
}goReport() 🔗
Generate a goreportcard badge.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| src | GitRef ! | - | source code |
| goreportSrc | GitRef | - | goreport reference |
| remoteHost | String | - | Remote Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remoteHost, a new one is made if neither is provided. |
Example
echo 'Custom types are not supported in shell examples'func (m *MyModule) Example(src *dagger.GitRef) *dagger.File {
return dag.
Shields().
GoReport(src)
}@function
def example(src: dagger.GitRef) -> dagger.File:
return (
dag.shields()
.go_report(src)
)@func()
example(src: GitRef): File {
return dag
.shields()
.goReport(src)
}sendQuery() 🔗
A utility for querying a Shields service.
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| label | String | - | Badge label. |
| labelColor | String | - | Badge label color. |
| value | String ! | - | Badge value. |
| valueColor | String ! | - | Badge value color. Hex, rgb, rgba, hsl, hsla and css colors. |
| logo | String | - | Badge logo. |
| logoColor | String | - | Logo color. Hex, rgb, rgba, hsl, hsla and css colors. |
| style | String | - | Badge style. |
| remoteHost | String | - | Remotely hosted Shields service, with scheme, host, and port. Ignored if a dagger shieldsService is provided. |
| shieldsService | Service | - | (default) Shields as a dagger service. Takes precedence over remote. A new one is created if not provided and no remote specified. |
Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
send-query --value string --value-color stringfunc (m *MyModule) Example(value string, valueColor string) *dagger.File {
return dag.
Shields().
SendQuery(value, valueColor)
}@function
def example(value: str, value_color: str) -> dagger.File:
return (
dag.shields()
.send_query(value, value_color)
)@func()
example(value: string, valueColor: string): File {
return dag
.shields()
.sendQuery(value, valueColor)
}asService() 🔗
Shields container as a service. An optional optimization to persist the shields service when generating multiple badges. A new one is created if not explicitly provided an a remote host is not specified.
Caller must use [Shields.AsService].Start and [Shields.AsService].Stop to take advantage of optimization.
Return Type
Service ! Example
dagger -m github.com/act3-ai/dagger/shields@6b12125b00add75f119a2b6cba28a2ceef2f46cc call \
as-servicefunc (m *MyModule) Example() *dagger.Service {
return dag.
Shields().
AsService()
}@function
def example() -> dagger.Service:
return (
dag.shields()
.as_service()
)@func()
example(): Service {
return dag
.shields()
.asService()
}