summaryrefslogtreecommitdiff
path: root/op-mode-definitions/containers.xml.in
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2022-05-08 21:52:51 +0200
committerChristian Poessinger <christian@poessinger.com>2022-05-08 21:52:51 +0200
commit7e7c6a5f120f317e3e4555939a099f48cf0b27e0 (patch)
tree04e3b121ced048504126e7b47d7c8d82f3ebb0e1 /op-mode-definitions/containers.xml.in
parentc2dcbdbfd7bd4c4226cd6bebc47bd455f4cd3b30 (diff)
downloadvyos-1x-7e7c6a5f120f317e3e4555939a099f48cf0b27e0.tar.gz
vyos-1x-7e7c6a5f120f317e3e4555939a099f48cf0b27e0.zip
container: op-mode: T3852: use XML inline podman commands
Reduce bloat of containers_op.py wrapper script. All commands can be passed directly to podman via the XML script. This also makes the execution faster, as no Python environment needs to be build up.
Diffstat (limited to 'op-mode-definitions/containers.xml.in')
-rw-r--r--op-mode-definitions/containers.xml.in176
1 files changed, 0 insertions, 176 deletions
diff --git a/op-mode-definitions/containers.xml.in b/op-mode-definitions/containers.xml.in
deleted file mode 100644
index 48501bd84..000000000
--- a/op-mode-definitions/containers.xml.in
+++ /dev/null
@@ -1,176 +0,0 @@
-<?xml version="1.0"?>
-<interfaceDefinition>
- <node name="add">
- <children>
- <node name="container">
- <properties>
- <help>Add container image</help>
- </properties>
- <children>
- <tagNode name="image">
- <properties>
- <help>Pull a new image for container</help>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --pull "${4}"</command>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
- <node name="connect">
- <children>
- <tagNode name="container">
- <properties>
- <help>Attach to a running container</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo podman exec --interactive --tty "$3" /bin/sh</command>
- </tagNode>
- </children>
- </node>
- <node name="delete">
- <children>
- <node name="container">
- <properties>
- <help>Delete container image</help>
- </properties>
- <children>
- <tagNode name="image">
- <properties>
- <help>Delete container image</help>
- <completionHelp>
- <script>sudo podman image ls -q</script>
- </completionHelp>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --remove "${4}"</command>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
- <node name="generate">
- <children>
- <node name="container">
- <properties>
- <help>Generate Container Image</help>
- </properties>
- <children>
- <tagNode name="image">
- <properties>
- <help>Name of container image (tag)</help>
- </properties>
- <children>
- <tagNode name="path">
- <properties>
- <help>Path to Dockerfile</help>
- <completionHelp>
- <list>&lt;filename&gt;</list>
- </completionHelp>
- </properties>
- <command>sudo podman build --layers --force-rm --tag "$4" $6</command>
- </tagNode>
- </children>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
- <node name="monitor">
- <children>
- <node name="log">
- <children>
- <tagNode name="container">
- <properties>
- <help>Monitor last lines of container logs</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo podman logs --follow --names "$4"</command>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
- <node name="show">
- <children>
- <node name="container">
- <properties>
- <help>Show containers</help>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --all</command>
- <children>
- <leafNode name="image">
- <properties>
- <help>Show container image</help>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --image</command>
- </leafNode>
- <tagNode name="log">
- <properties>
- <help>Show logs from a given container</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo podman logs --names "$4"</command>
- </tagNode>
- <leafNode name="network">
- <properties>
- <help>Show available container networks</help>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --networks</command>
- </leafNode>
- </children>
- </node>
- <node name="log">
- <children>
- <tagNode name="container">
- <properties>
- <help>Show logs from a given container</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo podman logs --names "$4"</command>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
- <node name="restart">
- <children>
- <tagNode name="container">
- <properties>
- <help>Restart a given container</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo podman restart "$3"</command>
- </tagNode>
- </children>
- </node>
- <node name="update">
- <children>
- <node name="container">
- <properties>
- <help>Update a container image</help>
- </properties>
- <children>
- <tagNode name="image">
- <properties>
- <help>Update container image</help>
- <completionHelp>
- <path>container name</path>
- </completionHelp>
- </properties>
- <command>sudo ${vyos_op_scripts_dir}/containers_op.py --update "${4}"</command>
- </tagNode>
- </children>
- </node>
- </children>
- </node>
-</interfaceDefinition>