mirror of https://code.forgejo.org/forgejo/runner
Merge pull request '[FORGEJO] add support for the lxc:// scheme' (#110) from earl-warren/runner:wip-lxc into main
Reviewed-on: https://code.forgejo.org/forgejo/runner/pulls/110pull/114/head
commit
9b05b16463
|
@ -11,6 +11,7 @@ import (
|
||||||
const (
|
const (
|
||||||
SchemeHost = "host"
|
SchemeHost = "host"
|
||||||
SchemeDocker = "docker"
|
SchemeDocker = "docker"
|
||||||
|
SchemeLXC = "lxc"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Label struct {
|
type Label struct {
|
||||||
|
@ -32,7 +33,7 @@ func Parse(str string) (*Label, error) {
|
||||||
if len(splits) >= 3 {
|
if len(splits) >= 3 {
|
||||||
label.Arg = splits[2]
|
label.Arg = splits[2]
|
||||||
}
|
}
|
||||||
if label.Schema != SchemeHost && label.Schema != SchemeDocker {
|
if label.Schema != SchemeHost && label.Schema != SchemeDocker && label.Schema != SchemeLXC {
|
||||||
return nil, fmt.Errorf("unsupported schema: %s", label.Schema)
|
return nil, fmt.Errorf("unsupported schema: %s", label.Schema)
|
||||||
}
|
}
|
||||||
return label, nil
|
return label, nil
|
||||||
|
@ -59,6 +60,8 @@ func (l Labels) PickPlatform(runsOn []string) string {
|
||||||
platforms[label.Name] = strings.TrimPrefix(label.Arg, "//")
|
platforms[label.Name] = strings.TrimPrefix(label.Arg, "//")
|
||||||
case SchemeHost:
|
case SchemeHost:
|
||||||
platforms[label.Name] = "-self-hosted"
|
platforms[label.Name] = "-self-hosted"
|
||||||
|
case SchemeLXC:
|
||||||
|
platforms[label.Name] = "lxc:" + strings.TrimPrefix(label.Arg, "//")
|
||||||
default:
|
default:
|
||||||
// It should not happen, because Parse has checked it.
|
// It should not happen, because Parse has checked it.
|
||||||
continue
|
continue
|
||||||
|
|
Loading…
Reference in New Issue