This commit is contained in:
2025-12-12 17:13:57 +01:00
parent 4c8beff0c8
commit b434887ff9
2 changed files with 18 additions and 5 deletions

View File

@@ -12,6 +12,7 @@ import base64
import tabulate
from git import Repo
import requests
import hvac
from prompt_toolkit import prompt
from prompt_toolkit.completion import WordCompleter
from prompt_toolkit.shortcuts import checkboxlist_dialog
@@ -126,10 +127,12 @@ class Portainer:
self.base_url = os.getenv(
"PORTAINER_URL", "https://portainer.sectorq.eu/api"
)
self.token = "ptr_GCNUoFcTOaXm7k8ZxPdQGmrFIamxZPTydbserYofMHc="
# self.token = "ptr_GCNUoFcTOaXm7k8ZxPdQGmrFIamxZPTydbserYofMHc="
token_path = "portainer/token"
self.token = self.args.client.secrets.kv.v1.read_secret(path=token_path)['data']['value']
input(self.token)
elif site == "port":
self.base_url = os.getenv("PORTAINER_URL", "https://port.sectorq.eu/api")
self.token = "ptr_/5RkMCT/j3BTaL32vMSDtXFi76yOXRKVFOrUtzMsl5Y="
else:
self.base_url = os.getenv(
"PORTAINER_URL", "https://portainer.sectorq.eu/api"

View File

@@ -14,6 +14,7 @@ import json
import argparse
import tty
import termios
import hvac
from tabulate import tabulate
from port import Portainer
from prompt_toolkit import prompt
@@ -21,6 +22,17 @@ from prompt_toolkit.completion import WordCompleter
from prompt_toolkit.shortcuts import checkboxlist_dialog
from prompt_toolkit.shortcuts import radiolist_dialog
VAULT_ADDR = os.environ.get("VAULT_ADDR", "http://192.168.77.101:8200")
VAULT_TOKEN = os.environ.get("VAULT_TOKEN", "")
client = hvac.Client(url=VAULT_ADDR, token=VAULT_TOKEN)
# Check if connected
if client.is_authenticated():
print("Connected to Vault")
else:
raise Exception("Failed to authenticate with Vault")
# Specify the mount point of your KV engine
VERSION = "0.1.13"
defaults = {
@@ -34,8 +46,6 @@ defaults = {
cur_config = {}
def load_config(defaults=defaults):
'''Load configuration from /myapps/portainer.conf if it exists, else from env vars or defaults.'''
if os.path.exists("/myapps/portainer.conf"):
@@ -130,7 +140,7 @@ parser.add_argument("--stack-mode", "-w", default=None, help="Stack mode")
args = parser.parse_args()
print("Running version:", VERSION)
print("Environment:", args.site)
args.client = client
if args.site is not None:
cur_config["PORTAINER_SITE"] = args.site
if args.endpoint_id is not None: