App to installer packages on remote servers
Project description
--- This document is not finished ---
ikctl (install kit control)
You can use this app to install packages on remote servers (linux).
Description
This app use ssh protocol to connect on remote servers and running bash script to install packages.
Getting Started
Dependencies
- Python 3.12
- paramiko
- pyaml
- envyaml
Installing
To install ikctl you only need pip command
pip install ikctl
When the installation finished you will need to create folder with yours bash scripts and config files:
Create folder
mkdir ~/kits
Create config file where you add yours servers
cat <<EOF | tee ~/kits/config.yaml
servers:
- name: your-server-name
user: your-user
hosts: [10.0.0.67]
port: 22
password: $PASSWORD/<your password>
pkey: "/home/your-home-name/.ssh/id_rsa"
EOF
You will need to add a variable called password with the server access password:
export PASSWORD="your password"
Create ikctl config file where we will indicate our kits.
cat <<EOF | tee ~/kits/ikctl.yaml
kits:
- show-date/ikctl.yaml
EOF
Create folder with our kit
mkdir ~/kits/show-date
In this folder we go to add the follow structure
cat <<EOF | tee ~/kits/show-date/date.sh
#!/bin/bash
date
EOF
# And
cat <<EOF | tee ~/kits/show-date/ikclt.yaml
kits:
uploads:
- date.sh
pipeline:
- date.sh
EOF
To finish config we need to add path to config file in "~/.ikctl/config"
# editing file config
vim ~/.ikctl/config
context: local
contexts:
local:
path_kits: 'path-to-kits/kits'
path_secrets: '' <= doesn't work, yet
path_servers: 'path-to-kits/kits'
mode: 'local'
remote:
path_kits: ''
path_secrets: ''
path_servers: ''
mode: 'remote'
Executing program
- Get servers
ikctl -l servers
- Get kits
ikctl -l kits
- Run ikctl to execute bash script
ikctl -i show-date -n your-server-name
License
This project is licensed under the Apache License License - see the LICENSE.md file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ikctl-0.4.9.tar.gz
.
File metadata
- Download URL: ikctl-0.4.9.tar.gz
- Upload date:
- Size: 14.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7b9d411eb6aa4059424d9029573c7bba96fffccb94fe02e57ea00e84a97e9f5c |
|
MD5 | 284a08fcfaa76307f7586bb0706fba72 |
|
BLAKE2b-256 | d4ed46b10b54eb8d8a8045d40b22d48484f03944e7992bc17e6010e1e0705a4c |