fix: make readme example compile (#17)

Resolves #16

Also formatted it.

https://go.dev/play/p/sFpiRTwLGlq
Reviewed-on: https://codeberg.org/woodpecker-plugins/go-plugin/pulls/17
Reviewed-by: Patrick Schratz <pat-s@noreply.codeberg.org>
Co-authored-by: jolheiser <jolheiser@noreply.codeberg.org>
Co-committed-by: jolheiser <jolheiser@noreply.codeberg.org>
This commit is contained in:
jolheiser 2023-11-15 17:33:12 +00:00 committed by Patrick Schratz
parent f1c4c040ce
commit 275eb26ca7
1 changed files with 34 additions and 32 deletions

View File

@ -18,54 +18,56 @@ HTTP client library.
## Creating plugin
```go
import (
"context"
package main
"codeberg.org/woodpecker-plugins/go-plugin"
"github.com/urfave/cli/v2"
"github.com/rs/zerolog/log"
import (
"context"
"codeberg.org/woodpecker-plugins/go-plugin"
"github.com/rs/zerolog/log"
"github.com/urfave/cli/v2"
)
type Settings struct {
// TODO: Plugin settings
SampleFlag string
// TODO: Plugin settings
SampleFlag string
}
type Plugin struct {
*plugin.Plugin
Settings *Settings
*plugin.Plugin
Settings *Settings
}
func (p *Plugin) Flags() []cli.Flag {
return []cli.Flag{
// TODO: Add flags
&cli.StringFlag{
Name: "sample.flag",
Usage: "sample flag",
EnvVars: []string{"PLUGIN_SAMPLE_FLAG"},
Destination: &p.Settings.SampleFlag,
},
}
return []cli.Flag{
// TODO: Add flags
&cli.StringFlag{
Name: "sample.flag",
Usage: "sample flag",
EnvVars: []string{"PLUGIN_SAMPLE_FLAG"},
Destination: &p.Settings.SampleFlag,
},
}
}
func (p *Plugin) Execute(ctx context.Context) error {
// TODO: Implement execution
log.Debug().Msg("executed")
return nil
// TODO: Implement execution
log.Debug().Msg("executed")
return nil
}
func main() {
p := &Plugin{
&Settings{}
}
p.Plugin = plugin.New(Options{
Name: "sample-plugin",
Description: "Sample plugin",
Flags: p.Flags(),
Execute: p.Execute,
})
p := &Plugin{
Settings: &Settings{},
}
p.Run()
p.Plugin = plugin.New(plugin.Options{
Name: "sample-plugin",
Description: "Sample plugin",
Flags: p.Flags(),
Execute: p.Execute,
})
p.Run()
}
```