evo-cli 0.1.1__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- evo_cli-0.1.2/PKG-INFO +55 -0
- evo_cli-0.1.2/README.md +42 -0
- evo_cli-0.1.2/evo_cli/VERSION +1 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli/cli.py +19 -3
- evo_cli-0.1.2/evo_cli/miniconda_setup.py +173 -0
- evo_cli-0.1.2/evo_cli.egg-info/PKG-INFO +55 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli.egg-info/SOURCES.txt +1 -0
- evo_cli-0.1.1/PKG-INFO +0 -74
- evo_cli-0.1.1/README.md +0 -61
- evo_cli-0.1.1/evo_cli/VERSION +0 -1
- evo_cli-0.1.1/evo_cli.egg-info/PKG-INFO +0 -74
- {evo_cli-0.1.1 → evo_cli-0.1.2}/Containerfile +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/HISTORY.md +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/LICENSE +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/MANIFEST.in +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli/__init__.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli/__main__.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli/base.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli/ssh_setup.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli.egg-info/dependency_links.txt +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli.egg-info/entry_points.txt +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli.egg-info/requires.txt +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/evo_cli.egg-info/top_level.txt +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/setup.cfg +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/setup.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/tests/__init__.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/tests/conftest.py +0 -0
- {evo_cli-0.1.1 → evo_cli-0.1.2}/tests/test_base.py +0 -0
evo_cli-0.1.2/PKG-INFO
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: evo_cli
|
3
|
+
Version: 0.1.2
|
4
|
+
Summary: Awesome evo_cli created by maycuatroi
|
5
|
+
Home-page: https://github.com/maycuatroi/evo-cli/
|
6
|
+
Author: maycuatroi
|
7
|
+
License: UNKNOWN
|
8
|
+
Platform: UNKNOWN
|
9
|
+
Description-Content-Type: text/markdown
|
10
|
+
Provides-Extra: test
|
11
|
+
License-File: LICENSE
|
12
|
+
|
13
|
+
# Evolution CLI (Develop by Dev And for Dev)
|
14
|
+
|
15
|
+
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
16
|
+
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
17
|
+
|
18
|
+
Awesome evo_cli created by maycuatroi
|
19
|
+
|
20
|
+
## Install it from PyPI
|
21
|
+
|
22
|
+
```bash
|
23
|
+
pip install evo_cli
|
24
|
+
```
|
25
|
+
|
26
|
+
### Available Commands
|
27
|
+
|
28
|
+
#### SSH Setup
|
29
|
+
|
30
|
+
Set up SSH with key-based authentication:
|
31
|
+
|
32
|
+
```bash
|
33
|
+
evo setupssh
|
34
|
+
```
|
35
|
+
|
36
|
+
Options:
|
37
|
+
- `-H, --host` - SSH server hostname or IP address
|
38
|
+
- `-u, --user` - SSH username
|
39
|
+
- `-p, --password` - SSH password (not recommended, use interactive mode instead)
|
40
|
+
- `-i, --identity` - Path to existing identity file to use
|
41
|
+
- `--help-examples` - Show usage examples
|
42
|
+
|
43
|
+
#### Miniconda Installation
|
44
|
+
|
45
|
+
Install Miniconda with cross-platform support:
|
46
|
+
|
47
|
+
```bash
|
48
|
+
evo miniconda
|
49
|
+
```
|
50
|
+
|
51
|
+
Options:
|
52
|
+
- `-p, --prefix` - Installation directory (default: ~/miniconda3 or %USERPROFILE%\miniconda3)
|
53
|
+
- `-f, --force` - Force reinstallation even if Miniconda is already installed
|
54
|
+
- `--help-examples` - Show usage examples
|
55
|
+
|
evo_cli-0.1.2/README.md
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
# Evolution CLI (Develop by Dev And for Dev)
|
2
|
+
|
3
|
+
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
4
|
+
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
5
|
+
|
6
|
+
Awesome evo_cli created by maycuatroi
|
7
|
+
|
8
|
+
## Install it from PyPI
|
9
|
+
|
10
|
+
```bash
|
11
|
+
pip install evo_cli
|
12
|
+
```
|
13
|
+
|
14
|
+
### Available Commands
|
15
|
+
|
16
|
+
#### SSH Setup
|
17
|
+
|
18
|
+
Set up SSH with key-based authentication:
|
19
|
+
|
20
|
+
```bash
|
21
|
+
evo setupssh
|
22
|
+
```
|
23
|
+
|
24
|
+
Options:
|
25
|
+
- `-H, --host` - SSH server hostname or IP address
|
26
|
+
- `-u, --user` - SSH username
|
27
|
+
- `-p, --password` - SSH password (not recommended, use interactive mode instead)
|
28
|
+
- `-i, --identity` - Path to existing identity file to use
|
29
|
+
- `--help-examples` - Show usage examples
|
30
|
+
|
31
|
+
#### Miniconda Installation
|
32
|
+
|
33
|
+
Install Miniconda with cross-platform support:
|
34
|
+
|
35
|
+
```bash
|
36
|
+
evo miniconda
|
37
|
+
```
|
38
|
+
|
39
|
+
Options:
|
40
|
+
- `-p, --prefix` - Installation directory (default: ~/miniconda3 or %USERPROFILE%\miniconda3)
|
41
|
+
- `-f, --force` - Force reinstallation even if Miniconda is already installed
|
42
|
+
- `--help-examples` - Show usage examples
|
@@ -0,0 +1 @@
|
|
1
|
+
0.1.2
|
@@ -10,7 +10,8 @@ Be creative! do whatever you want!
|
|
10
10
|
|
11
11
|
import argparse
|
12
12
|
import sys
|
13
|
-
from evo_cli.ssh_setup import setup_ssh, show_usage
|
13
|
+
from evo_cli.ssh_setup import setup_ssh, show_usage as show_ssh_usage
|
14
|
+
from evo_cli.miniconda_setup import install_miniconda, show_usage as show_miniconda_usage
|
14
15
|
|
15
16
|
def main(): # pragma: no cover
|
16
17
|
"""
|
@@ -50,12 +51,27 @@ def main(): # pragma: no cover
|
|
50
51
|
ssh_args = ssh_parser.parse_args(sys.argv[2:])
|
51
52
|
|
52
53
|
if ssh_args.help_examples:
|
53
|
-
|
54
|
+
show_ssh_usage()
|
54
55
|
return
|
55
56
|
|
56
57
|
setup_ssh(ssh_args)
|
58
|
+
elif args.command == "miniconda":
|
59
|
+
# Parse arguments for miniconda installation
|
60
|
+
miniconda_parser = argparse.ArgumentParser(description="Install Miniconda with OS-specific settings")
|
61
|
+
miniconda_parser.add_argument('-p', '--prefix', help='Installation directory')
|
62
|
+
miniconda_parser.add_argument('-f', '--force', action='store_true', help='Force reinstallation')
|
63
|
+
miniconda_parser.add_argument('--help-examples', action='store_true', help='Show usage examples')
|
64
|
+
|
65
|
+
miniconda_args = miniconda_parser.parse_args(sys.argv[2:])
|
66
|
+
|
67
|
+
if miniconda_args.help_examples:
|
68
|
+
show_miniconda_usage()
|
69
|
+
return
|
70
|
+
|
71
|
+
install_miniconda(miniconda_args)
|
57
72
|
else:
|
58
73
|
print(f"Unknown command: {args.command}")
|
59
74
|
print("Available commands:")
|
60
|
-
print(" setupssh
|
75
|
+
print(" setupssh - Set up SSH key-based authentication")
|
76
|
+
print(" miniconda - Install Miniconda (cross-platform)")
|
61
77
|
parser.print_help()
|
@@ -0,0 +1,173 @@
|
|
1
|
+
"""Miniconda installation functionality for EVO CLI."""
|
2
|
+
import os
|
3
|
+
import platform
|
4
|
+
import subprocess
|
5
|
+
import tempfile
|
6
|
+
import sys
|
7
|
+
from pathlib import Path
|
8
|
+
|
9
|
+
def show_usage():
|
10
|
+
"""Show usage examples for Miniconda installation."""
|
11
|
+
print("""
|
12
|
+
Miniconda Installation Script
|
13
|
+
============================
|
14
|
+
|
15
|
+
This command installs Miniconda on your system and configures your shell environment.
|
16
|
+
|
17
|
+
Usage:
|
18
|
+
evo miniconda [options]
|
19
|
+
|
20
|
+
Options:
|
21
|
+
-p, --prefix PATH Installation directory (default: ~/miniconda3 or %USERPROFILE%\\miniconda3)
|
22
|
+
-f, --force Force installation even if Miniconda is already installed
|
23
|
+
--help-examples Show usage examples
|
24
|
+
|
25
|
+
Examples:
|
26
|
+
evo miniconda # Install with default settings
|
27
|
+
evo miniconda -p /custom/path # Install to a custom path
|
28
|
+
evo miniconda -f # Force reinstallation
|
29
|
+
""")
|
30
|
+
|
31
|
+
def is_windows():
|
32
|
+
"""Check if the current OS is Windows."""
|
33
|
+
return platform.system() == "Windows"
|
34
|
+
|
35
|
+
def is_conda_installed(prefix):
|
36
|
+
"""Check if conda is already installed at the specified prefix."""
|
37
|
+
conda_executable = os.path.join(prefix, "condabin", "conda.bat" if is_windows() else "conda")
|
38
|
+
return os.path.exists(conda_executable)
|
39
|
+
|
40
|
+
def get_default_install_path():
|
41
|
+
"""Get the default installation path based on the OS."""
|
42
|
+
if is_windows():
|
43
|
+
return os.path.join(os.environ.get("USERPROFILE", ""), "miniconda3")
|
44
|
+
else:
|
45
|
+
return os.path.join(os.path.expanduser("~"), "miniconda3")
|
46
|
+
|
47
|
+
def install_miniconda_windows(prefix, force=False):
|
48
|
+
"""Install Miniconda on Windows."""
|
49
|
+
if is_conda_installed(prefix) and not force:
|
50
|
+
print(f"Miniconda is already installed at {prefix}")
|
51
|
+
print("Use --force to reinstall")
|
52
|
+
return True
|
53
|
+
|
54
|
+
try:
|
55
|
+
# Create temp directory for the installer
|
56
|
+
with tempfile.TemporaryDirectory() as temp_dir:
|
57
|
+
installer_path = os.path.join(temp_dir, "miniconda_installer.exe")
|
58
|
+
|
59
|
+
# Download the installer
|
60
|
+
print("Downloading Miniconda installer...")
|
61
|
+
download_cmd = [
|
62
|
+
"powershell",
|
63
|
+
"-Command",
|
64
|
+
f"Invoke-WebRequest -Uri https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe -OutFile {installer_path}"
|
65
|
+
]
|
66
|
+
subprocess.run(download_cmd, check=True)
|
67
|
+
|
68
|
+
# Run the installer silently
|
69
|
+
print(f"Installing Miniconda to {prefix}...")
|
70
|
+
install_cmd = [
|
71
|
+
installer_path,
|
72
|
+
"/InstallationType=JustMe",
|
73
|
+
"/RegisterPython=0",
|
74
|
+
"/S",
|
75
|
+
"/D=" + prefix
|
76
|
+
]
|
77
|
+
subprocess.run(install_cmd, check=True)
|
78
|
+
|
79
|
+
# Add to PATH using setx
|
80
|
+
bin_dir = os.path.join(prefix, "Scripts")
|
81
|
+
condabin_dir = os.path.join(prefix, "condabin")
|
82
|
+
|
83
|
+
# Get current PATH
|
84
|
+
path_cmd = ["powershell", "-Command", "Write-Output $env:PATH"]
|
85
|
+
result = subprocess.run(path_cmd, capture_output=True, text=True, check=True)
|
86
|
+
current_path = result.stdout.strip()
|
87
|
+
|
88
|
+
# Only add to PATH if not already present
|
89
|
+
if bin_dir not in current_path and condabin_dir not in current_path:
|
90
|
+
print("Adding Miniconda to PATH...")
|
91
|
+
subprocess.run(["setx", "PATH", f"{bin_dir};{condabin_dir};{current_path}"], check=True)
|
92
|
+
|
93
|
+
print("\nMiniconda has been installed successfully!")
|
94
|
+
print("\nTo use conda, restart your terminal or run:")
|
95
|
+
print(f" {os.path.join(prefix, 'condabin', 'conda.bat')} init")
|
96
|
+
return True
|
97
|
+
|
98
|
+
except Exception as e:
|
99
|
+
print(f"Error installing Miniconda: {str(e)}")
|
100
|
+
return False
|
101
|
+
|
102
|
+
def install_miniconda_unix(prefix, force=False):
|
103
|
+
"""Install Miniconda on Linux/macOS."""
|
104
|
+
if is_conda_installed(prefix) and not force:
|
105
|
+
print(f"Miniconda is already installed at {prefix}")
|
106
|
+
print("Use --force to reinstall")
|
107
|
+
return True
|
108
|
+
|
109
|
+
try:
|
110
|
+
# Create temp directory for the installer
|
111
|
+
with tempfile.TemporaryDirectory() as temp_dir:
|
112
|
+
installer_path = os.path.join(temp_dir, "miniconda.sh")
|
113
|
+
|
114
|
+
# Determine the correct installer based on platform
|
115
|
+
if platform.system() == "Darwin":
|
116
|
+
if platform.machine() == "arm64":
|
117
|
+
installer_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh"
|
118
|
+
else:
|
119
|
+
installer_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh"
|
120
|
+
else: # Linux
|
121
|
+
if platform.machine() == "aarch64":
|
122
|
+
installer_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh"
|
123
|
+
else:
|
124
|
+
installer_url = "https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh"
|
125
|
+
|
126
|
+
# Download the installer
|
127
|
+
print("Downloading Miniconda installer...")
|
128
|
+
download_cmd = ["wget", installer_url, "-O", installer_path]
|
129
|
+
subprocess.run(download_cmd, check=True)
|
130
|
+
|
131
|
+
# Make the installer executable
|
132
|
+
subprocess.run(["chmod", "+x", installer_path], check=True)
|
133
|
+
|
134
|
+
# Run the installer
|
135
|
+
print(f"Installing Miniconda to {prefix}...")
|
136
|
+
install_cmd = ["bash", installer_path, "-b", "-p", prefix]
|
137
|
+
subprocess.run(install_cmd, check=True)
|
138
|
+
|
139
|
+
# Add to PATH if needed
|
140
|
+
shell_rc_file = os.path.expanduser("~/.bashrc")
|
141
|
+
if platform.system() == "Darwin":
|
142
|
+
if os.path.exists(os.path.expanduser("~/.zshrc")):
|
143
|
+
shell_rc_file = os.path.expanduser("~/.zshrc")
|
144
|
+
|
145
|
+
# Check if already in PATH
|
146
|
+
with open(shell_rc_file, "r") as f:
|
147
|
+
content = f.read()
|
148
|
+
if prefix not in content:
|
149
|
+
print(f"Adding Miniconda to PATH in {shell_rc_file}...")
|
150
|
+
with open(shell_rc_file, "a") as f:
|
151
|
+
f.write(f'\n# >>> conda initialize >>>\n')
|
152
|
+
f.write(f'export PATH="{prefix}/bin:$PATH"\n')
|
153
|
+
f.write(f'# <<< conda initialize <<<\n')
|
154
|
+
|
155
|
+
print("\nMiniconda has been installed successfully!")
|
156
|
+
print("\nTo use conda, restart your terminal or run:")
|
157
|
+
print(f" source {shell_rc_file}")
|
158
|
+
return True
|
159
|
+
|
160
|
+
except Exception as e:
|
161
|
+
print(f"Error installing Miniconda: {str(e)}")
|
162
|
+
return False
|
163
|
+
|
164
|
+
def install_miniconda(args):
|
165
|
+
"""Main function to install Miniconda based on the current OS."""
|
166
|
+
# Get installation prefix
|
167
|
+
prefix = args.prefix or get_default_install_path()
|
168
|
+
|
169
|
+
# Install based on OS
|
170
|
+
if is_windows():
|
171
|
+
return install_miniconda_windows(prefix, args.force)
|
172
|
+
else:
|
173
|
+
return install_miniconda_unix(prefix, args.force)
|
@@ -0,0 +1,55 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: evo-cli
|
3
|
+
Version: 0.1.2
|
4
|
+
Summary: Awesome evo_cli created by maycuatroi
|
5
|
+
Home-page: https://github.com/maycuatroi/evo-cli/
|
6
|
+
Author: maycuatroi
|
7
|
+
License: UNKNOWN
|
8
|
+
Platform: UNKNOWN
|
9
|
+
Description-Content-Type: text/markdown
|
10
|
+
Provides-Extra: test
|
11
|
+
License-File: LICENSE
|
12
|
+
|
13
|
+
# Evolution CLI (Develop by Dev And for Dev)
|
14
|
+
|
15
|
+
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
16
|
+
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
17
|
+
|
18
|
+
Awesome evo_cli created by maycuatroi
|
19
|
+
|
20
|
+
## Install it from PyPI
|
21
|
+
|
22
|
+
```bash
|
23
|
+
pip install evo_cli
|
24
|
+
```
|
25
|
+
|
26
|
+
### Available Commands
|
27
|
+
|
28
|
+
#### SSH Setup
|
29
|
+
|
30
|
+
Set up SSH with key-based authentication:
|
31
|
+
|
32
|
+
```bash
|
33
|
+
evo setupssh
|
34
|
+
```
|
35
|
+
|
36
|
+
Options:
|
37
|
+
- `-H, --host` - SSH server hostname or IP address
|
38
|
+
- `-u, --user` - SSH username
|
39
|
+
- `-p, --password` - SSH password (not recommended, use interactive mode instead)
|
40
|
+
- `-i, --identity` - Path to existing identity file to use
|
41
|
+
- `--help-examples` - Show usage examples
|
42
|
+
|
43
|
+
#### Miniconda Installation
|
44
|
+
|
45
|
+
Install Miniconda with cross-platform support:
|
46
|
+
|
47
|
+
```bash
|
48
|
+
evo miniconda
|
49
|
+
```
|
50
|
+
|
51
|
+
Options:
|
52
|
+
- `-p, --prefix` - Installation directory (default: ~/miniconda3 or %USERPROFILE%\miniconda3)
|
53
|
+
- `-f, --force` - Force reinstallation even if Miniconda is already installed
|
54
|
+
- `--help-examples` - Show usage examples
|
55
|
+
|
evo_cli-0.1.1/PKG-INFO
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: evo_cli
|
3
|
-
Version: 0.1.1
|
4
|
-
Summary: Awesome evo_cli created by maycuatroi
|
5
|
-
Home-page: https://github.com/maycuatroi/evo-cli/
|
6
|
-
Author: maycuatroi
|
7
|
-
License: UNKNOWN
|
8
|
-
Platform: UNKNOWN
|
9
|
-
Description-Content-Type: text/markdown
|
10
|
-
Provides-Extra: test
|
11
|
-
License-File: LICENSE
|
12
|
-
|
13
|
-
# Evolution CLI (Develop by Dev And for Dev)
|
14
|
-
|
15
|
-
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
16
|
-
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
17
|
-
|
18
|
-
Awesome evo_cli created by maycuatroi
|
19
|
-
|
20
|
-
## Install it from PyPI
|
21
|
-
|
22
|
-
```bash
|
23
|
-
pip install evo_cli
|
24
|
-
```
|
25
|
-
|
26
|
-
## Usage
|
27
|
-
|
28
|
-
```py
|
29
|
-
from evo_cli import BaseClass
|
30
|
-
from evo_cli import base_function
|
31
|
-
|
32
|
-
BaseClass().base_method()
|
33
|
-
base_function()
|
34
|
-
```
|
35
|
-
|
36
|
-
```bash
|
37
|
-
$ python -m evo_cli
|
38
|
-
#or
|
39
|
-
$ evo_cli
|
40
|
-
```
|
41
|
-
|
42
|
-
## Development
|
43
|
-
|
44
|
-
Read the [CONTRIBUTING.md](CONTRIBUTING.md) file.
|
45
|
-
|
46
|
-
## Automatic Release to PyPI
|
47
|
-
|
48
|
-
This project is configured to automatically release to PyPI when changes are pushed to the main branch. The process:
|
49
|
-
|
50
|
-
1. Automatically bumps the version based on commit messages:
|
51
|
-
- Commits with "BREAKING CHANGE" trigger a major version bump
|
52
|
-
- Commits with "feat" trigger a minor version bump
|
53
|
-
- All other commits trigger a patch version bump
|
54
|
-
|
55
|
-
2. Builds and publishes the package to PyPI
|
56
|
-
|
57
|
-
3. Creates a GitHub release with auto-generated release notes
|
58
|
-
|
59
|
-
### Setup Requirements
|
60
|
-
|
61
|
-
To enable automatic PyPI releases, you need to:
|
62
|
-
|
63
|
-
1. Create a PyPI API token:
|
64
|
-
- Go to https://pypi.org/manage/account/token/
|
65
|
-
- Create a new token with scope "Entire account"
|
66
|
-
- Copy the token value
|
67
|
-
|
68
|
-
2. Add the token to your GitHub repository secrets:
|
69
|
-
- Go to your GitHub repository → Settings → Secrets and variables → Actions
|
70
|
-
- Create a new repository secret named `PYPI_API_TOKEN`
|
71
|
-
- Paste your PyPI token as the value
|
72
|
-
|
73
|
-
After these steps, the automated release process will work whenever changes are pushed to the main branch.
|
74
|
-
|
evo_cli-0.1.1/README.md
DELETED
@@ -1,61 +0,0 @@
|
|
1
|
-
# Evolution CLI (Develop by Dev And for Dev)
|
2
|
-
|
3
|
-
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
4
|
-
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
5
|
-
|
6
|
-
Awesome evo_cli created by maycuatroi
|
7
|
-
|
8
|
-
## Install it from PyPI
|
9
|
-
|
10
|
-
```bash
|
11
|
-
pip install evo_cli
|
12
|
-
```
|
13
|
-
|
14
|
-
## Usage
|
15
|
-
|
16
|
-
```py
|
17
|
-
from evo_cli import BaseClass
|
18
|
-
from evo_cli import base_function
|
19
|
-
|
20
|
-
BaseClass().base_method()
|
21
|
-
base_function()
|
22
|
-
```
|
23
|
-
|
24
|
-
```bash
|
25
|
-
$ python -m evo_cli
|
26
|
-
#or
|
27
|
-
$ evo_cli
|
28
|
-
```
|
29
|
-
|
30
|
-
## Development
|
31
|
-
|
32
|
-
Read the [CONTRIBUTING.md](CONTRIBUTING.md) file.
|
33
|
-
|
34
|
-
## Automatic Release to PyPI
|
35
|
-
|
36
|
-
This project is configured to automatically release to PyPI when changes are pushed to the main branch. The process:
|
37
|
-
|
38
|
-
1. Automatically bumps the version based on commit messages:
|
39
|
-
- Commits with "BREAKING CHANGE" trigger a major version bump
|
40
|
-
- Commits with "feat" trigger a minor version bump
|
41
|
-
- All other commits trigger a patch version bump
|
42
|
-
|
43
|
-
2. Builds and publishes the package to PyPI
|
44
|
-
|
45
|
-
3. Creates a GitHub release with auto-generated release notes
|
46
|
-
|
47
|
-
### Setup Requirements
|
48
|
-
|
49
|
-
To enable automatic PyPI releases, you need to:
|
50
|
-
|
51
|
-
1. Create a PyPI API token:
|
52
|
-
- Go to https://pypi.org/manage/account/token/
|
53
|
-
- Create a new token with scope "Entire account"
|
54
|
-
- Copy the token value
|
55
|
-
|
56
|
-
2. Add the token to your GitHub repository secrets:
|
57
|
-
- Go to your GitHub repository → Settings → Secrets and variables → Actions
|
58
|
-
- Create a new repository secret named `PYPI_API_TOKEN`
|
59
|
-
- Paste your PyPI token as the value
|
60
|
-
|
61
|
-
After these steps, the automated release process will work whenever changes are pushed to the main branch.
|
evo_cli-0.1.1/evo_cli/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.1.1
|
@@ -1,74 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: evo-cli
|
3
|
-
Version: 0.1.1
|
4
|
-
Summary: Awesome evo_cli created by maycuatroi
|
5
|
-
Home-page: https://github.com/maycuatroi/evo-cli/
|
6
|
-
Author: maycuatroi
|
7
|
-
License: UNKNOWN
|
8
|
-
Platform: UNKNOWN
|
9
|
-
Description-Content-Type: text/markdown
|
10
|
-
Provides-Extra: test
|
11
|
-
License-File: LICENSE
|
12
|
-
|
13
|
-
# Evolution CLI (Develop by Dev And for Dev)
|
14
|
-
|
15
|
-
[](https://codecov.io/gh/maycuatroi/evo-cli)
|
16
|
-
[](https://github.com/maycuatroi/evo-cli/actions/workflows/main.yml)
|
17
|
-
|
18
|
-
Awesome evo_cli created by maycuatroi
|
19
|
-
|
20
|
-
## Install it from PyPI
|
21
|
-
|
22
|
-
```bash
|
23
|
-
pip install evo_cli
|
24
|
-
```
|
25
|
-
|
26
|
-
## Usage
|
27
|
-
|
28
|
-
```py
|
29
|
-
from evo_cli import BaseClass
|
30
|
-
from evo_cli import base_function
|
31
|
-
|
32
|
-
BaseClass().base_method()
|
33
|
-
base_function()
|
34
|
-
```
|
35
|
-
|
36
|
-
```bash
|
37
|
-
$ python -m evo_cli
|
38
|
-
#or
|
39
|
-
$ evo_cli
|
40
|
-
```
|
41
|
-
|
42
|
-
## Development
|
43
|
-
|
44
|
-
Read the [CONTRIBUTING.md](CONTRIBUTING.md) file.
|
45
|
-
|
46
|
-
## Automatic Release to PyPI
|
47
|
-
|
48
|
-
This project is configured to automatically release to PyPI when changes are pushed to the main branch. The process:
|
49
|
-
|
50
|
-
1. Automatically bumps the version based on commit messages:
|
51
|
-
- Commits with "BREAKING CHANGE" trigger a major version bump
|
52
|
-
- Commits with "feat" trigger a minor version bump
|
53
|
-
- All other commits trigger a patch version bump
|
54
|
-
|
55
|
-
2. Builds and publishes the package to PyPI
|
56
|
-
|
57
|
-
3. Creates a GitHub release with auto-generated release notes
|
58
|
-
|
59
|
-
### Setup Requirements
|
60
|
-
|
61
|
-
To enable automatic PyPI releases, you need to:
|
62
|
-
|
63
|
-
1. Create a PyPI API token:
|
64
|
-
- Go to https://pypi.org/manage/account/token/
|
65
|
-
- Create a new token with scope "Entire account"
|
66
|
-
- Copy the token value
|
67
|
-
|
68
|
-
2. Add the token to your GitHub repository secrets:
|
69
|
-
- Go to your GitHub repository → Settings → Secrets and variables → Actions
|
70
|
-
- Create a new repository secret named `PYPI_API_TOKEN`
|
71
|
-
- Paste your PyPI token as the value
|
72
|
-
|
73
|
-
After these steps, the automated release process will work whenever changes are pushed to the main branch.
|
74
|
-
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|