mirror of
https://github.com/rancher/plugins.git
synced 2025-08-30 15:58:09 +00:00
Initial Windows port for K3s multi-exec binary (#7)
This commit is contained in:
parent
20b9bae9b3
commit
1255b64eed
@ -1,3 +1,6 @@
|
|||||||
|
//go:build linux
|
||||||
|
// +build linux
|
||||||
|
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
36
main_windows.go
Normal file
36
main_windows.go
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
//go:build windows
|
||||||
|
// +build windows
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"path/filepath"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
"github.com/docker/docker/pkg/reexec"
|
||||||
|
|
||||||
|
"github.com/containernetworking/cni/pkg/version"
|
||||||
|
bv "github.com/containernetworking/plugins/pkg/utils/buildversion"
|
||||||
|
hostlocal "github.com/containernetworking/plugins/plugins/ipam/host-local"
|
||||||
|
"github.com/containernetworking/plugins/plugins/main/windows/win-bridge"
|
||||||
|
"github.com/containernetworking/plugins/plugins/main/windows/win-overlay"
|
||||||
|
"github.com/containernetworking/plugins/plugins/meta/flannel"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
os.Args[0] = filepath.Base(os.Args[0])
|
||||||
|
reexec.Register("flannel", flannel.Main)
|
||||||
|
reexec.Register("host-local", hostlocal.Main)
|
||||||
|
reexec.Register("win-bridge", winbridge.Main)
|
||||||
|
reexec.Register("win-overlay", winoverlay.Main)
|
||||||
|
reexec.Register("flannel.exe", flannel.Main)
|
||||||
|
reexec.Register("host-local.exe", hostlocal.Main)
|
||||||
|
reexec.Register("win-bridge.exe", winbridge.Main)
|
||||||
|
reexec.Register("win-overlay.exe", winoverlay.Main)
|
||||||
|
if !reexec.Init() {
|
||||||
|
_, _ = fmt.Fprintln(os.Stderr, bv.BuildString("plugins"))
|
||||||
|
_, _ = fmt.Fprintf(os.Stderr, "CNI protocol versions supported: %s\n", strings.Join(version.All.SupportedVersions(), ", "))
|
||||||
|
}
|
||||||
|
}
|
@ -12,7 +12,7 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package main
|
package winbridge
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
@ -214,6 +214,6 @@ func cmdCheck(_ *skel.CmdArgs) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func Main() {
|
||||||
skel.PluginMain(cmdAdd, cmdCheck, cmdDel, version.All, bv.BuildString("win-bridge"))
|
skel.PluginMain(cmdAdd, cmdCheck, cmdDel, version.All, bv.BuildString("win-bridge"))
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package main
|
package winoverlay
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
@ -287,6 +287,6 @@ func cmdCheck(_ *skel.CmdArgs) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func Main() {
|
||||||
skel.PluginMain(cmdAdd, cmdCheck, cmdDel, version.All, bv.BuildString("win-overlay"))
|
skel.PluginMain(cmdAdd, cmdCheck, cmdDel, version.All, bv.BuildString("win-overlay"))
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user