mirror of
https://gitlab.sectorq.eu/jaydee/portainer.git
synced 2025-12-14 18:44:53 +01:00
build
This commit is contained in:
18
portainer.py
18
portainer.py
@@ -13,6 +13,15 @@ from port import Portainer
|
|||||||
import logging
|
import logging
|
||||||
VERSION="0.0.1"
|
VERSION="0.0.1"
|
||||||
|
|
||||||
|
defaults = {
|
||||||
|
"endpoint_id": "vm01",
|
||||||
|
"stack": "my_stack",
|
||||||
|
"deploy_mode": "git",
|
||||||
|
"autostart": True,
|
||||||
|
"stack_mode": "swarm"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description="Portainer helper - use env vars or pass credentials.")
|
parser = argparse.ArgumentParser(description="Portainer helper - use env vars or pass credentials.")
|
||||||
parser.add_argument("--base", "-b", default=os.getenv("PORTAINER_URL", "https://portainer.example.com"),
|
parser.add_argument("--base", "-b", default=os.getenv("PORTAINER_URL", "https://portainer.example.com"),
|
||||||
help="Base URL for Portainer (ENV: PORTAINER_URL)")
|
help="Base URL for Portainer (ENV: PORTAINER_URL)")
|
||||||
@@ -44,7 +53,7 @@ parser.add_argument("--stack", "-s", type=str, help="Stack ID for operations")
|
|||||||
parser.add_argument("--token-only", action="store_true", help="Print auth token and exit")
|
parser.add_argument("--token-only", action="store_true", help="Print auth token and exit")
|
||||||
parser.add_argument("--timeout", type=int, default=10, help="Request timeout seconds")
|
parser.add_argument("--timeout", type=int, default=10, help="Request timeout seconds")
|
||||||
parser.add_argument("--deploy-mode","-m", type=str, default="git", help="Deploy mode")
|
parser.add_argument("--deploy-mode","-m", type=str, default="git", help="Deploy mode")
|
||||||
parser.add_argument("--swarm","-w", action="store_true", help="Swarm mode")
|
parser.add_argument("--stack-mode","-w", default=None, help="Stack mode")
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
print("Running version:", VERSION)
|
print("Running version:", VERSION)
|
||||||
print("Environment:", args.site)
|
print("Environment:", args.site)
|
||||||
@@ -148,10 +157,13 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
if args.action == "create_stack":
|
if args.action == "create_stack":
|
||||||
if args.endpoint_id == None:
|
if args.endpoint_id == None:
|
||||||
args.endpoint_id = input("Endpoint ID is required for creating stacks : ")
|
args.endpoint_id = input("Endpoint ID is required for creating stacks : ") or defaults["endpoint_id"]
|
||||||
if args.stack == None:
|
if args.stack == None:
|
||||||
args.stack = input("Stack name or ID is required for creating stacks : ")
|
args.stack = input("Stack name or ID is required for creating stacks : ")
|
||||||
por.create_stack(args.endpoint_id,args.stack, args.deploy_mode, args.autostart, args.swarm)
|
if args.stack_mode == None:
|
||||||
|
args.stack_mode = input("Stack mode (swarm or compose) default=swarm: ") or defaults["stack_mode"]
|
||||||
|
|
||||||
|
por.create_stack(args.endpoint_id,args.stack, args.deploy_mode, args.autostart, args.stack_mode)
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
if args.action == "stop_stack":
|
if args.action == "stop_stack":
|
||||||
|
|||||||
Reference in New Issue
Block a user