modulepackage
0.0.0-20230602024321-8e6f2e6d444b
Repository: https://github.com/oldthreefeng/mycli.git
Documentation: pkg.go.dev
# README
mycli
引用了sshcmd
$ go build -o mycli main.go
cmd and scp for ssh
Usage:
mycli [flags]
mycli [command]
Available Commands:
completion Output shell completion code for the specified shell (bash or zsh)
help Help about any command
huawei huawei ecs create
version A brief description of your command
Flags:
--cmd string exec shell
-h, --help help for mycli
--host strings exec host
--local-path string local path , ex /etc/local.txt
--mode string mode type ,use | spilt . ex ssh scp ssh|scp scp|ssh (default "ssh")
--passwd string password for ssh
--pk string private key for ssh (default "/root/.ssh/id_rsa")
--pk-passwd string private key password for ssh
--remote-path string local path , ex /etc/local.txt
--user string servers user name for ssh (default "root")
Use "mycli [command] --help" for more information about a command.
ssh:
$ mycli --user oldthreefeng --passwd admin --host 127.0.0.1 --cmd "ls -l"
scp:
$ mycli --user oldthreefeng --passwd admin --host 127.0.0.1 \
--mode "scp" --local-path "/aa.txt" --remote-path "/aa.txt"
huawei cloud for sealos test
$ go build -o mycli main.go
$ ./mycli huawei -h
huawei ecs create
Usage:
mycli huawei [flags]
mycli huawei [command]
Aliases:
huawei, hw
Available Commands:
create create ecs in sgp
delete delete ecs in sgp
list list ecs in sgp
Flags:
-h, --help help for huawei
Use "mycli huawei [command] --help" for more information about a command.
创建
$ ./mycli huawei create --help
create ecs in sgp
Usage:
mycli huawei create [flags]
Flags:
--FlavorRef string huawei falvor id , default is centos 7.6 (default "kc1.large.2")
--ImageRef string huawei image id , default is 2C 4G (default "456416e6-1270-46a4-975e-3558ac03d4cd")
--SubnetId string huawei subnet id (default "b5ea4e5d-de19-442b-ac32-3998100e4854")
--Vpcid string huawei Vpcid (default "a55545d8-a4cb-436d-a8ec-45c66aff725c")
--Zone string huawei AvailabilityZone , default is centos xin jia po (default "ap-southeast-3a")
--adminPass string huawei root pass (default "Louishong4168@123")
-c, --count int32 Specify huawei ecs count (default 1)
--eip create huawei ecs with eip or not
-h, --help help for create
--keyName string ssh key name
--projectId string huawei project id (default "06b275f705800f262f3bc014ffcdbde1")
Global Flags:
--config string config file (default is $HOME/.mycli.yaml)
删除
$ ./mycli huawei delete --help
delete ecs in sgp
Usage:
mycli huawei delete [flags]
Flags:
--FlavorRef string huawei AvailabilityZone , default is centos xin jia po (default "ap-southeast-3a")
--eipId string huawei ecs server public eipid
-h, --help help for delete
--id string huawei ecs server id
--projectId string huawei project id (default "06b275f705800f262f3bc014ffcdbde1")
Global Flags:
--config string config file (default is $HOME/.mycli.yaml)
获取信息
$ ./mycli huawei list --help
list ecs in sgp
Usage:
mycli huawei list [flags]
mycli huawei list [command]
Available Commands:
ip ip ecs in sgp
Flags:
--FlavorRef string huawei AvailabilityZone , default is centos xin jia po (default "ap-southeast-3a")
-h, --help help for list
--id string huawei ecs server id
--projectId string huawei project id (default "06b275f705800f262f3bc014ffcdbde1")
Global Flags:
--config string config file (default is $HOME/.mycli.yaml)
Use "mycli huawei list [command] --help" for more information about a command.
example
此命令会默认创建1台2核4g主机. --eip
默认带外网的. 默认按流量计费, 50M宽带
$ mycli hw create -c 1 --eip | tee -a InstanceId.json
$ cat InstanceId.json
$ ID=$(jq -r '.serverIds[0]' < InstanceId.json)
## 获取instanceId list
$ mycli hw list --id $ID > info.json
## 获取ip list
$ mycli hw list ip > ip.json
$ FIPID=$(jq -r ".[0].id" < ip.json)
删除主机及eip. 单独删除主机不会连带删除eip. 需要加上--eip
参数去删除.
$ ./mycli huawei delete --id $ID --eip
docker use
必须注入环境变量.也就是华为云的ak和sk必须有. 其他命令和命令行无异.
docker run --rm -e ak=$ak sk=$sk louisehong/mycli -h
apisix 使用
目前由于cert证书使用acme.sh. 手动上传至apisix实在是件很蛋疼的事情。
$ mycli apisix list
$ mycli apisix get $SSL_ROUTE_ID
$ mycli apisix update $SSL_ROUTE_ID
$ mycli apisix update --updateAll
目录结构
$ tree ~/tmp/sslcert -d -L 1 | grep 'cn|com'
/Users/louis/tmp/sslcert
├── beta.fenghong.tech
├── ca
├── deploy
├── dnsapi
├── notify
├── ossutil_output
└── t3.fenghong.tech
# Packages
No description provided by the author
Copyright © 2020 NAME HERE <EMAIL ADDRESS>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author