-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtestpypi.sh
More file actions
102 lines (93 loc) · 2.17 KB
/
testpypi.sh
File metadata and controls
102 lines (93 loc) · 2.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#!/bin/bash
# Initialize dry run flag
DRY_RUN=0
# Function to build the package
build_package() {
echo "Building package..."
python3 -m pip install --upgrade build
rm -rf dist/ build/ *.egg-info/
python3 -m build
}
# Function to upload the package
upload_package() {
echo "Uploading package..."
python3 -m pip install --upgrade twine
python3 -m twine upload --repository testpypi dist/* --verbose
}
# Function to bump patch version
bump_patch() {
if [ $DRY_RUN -eq 1 ]; then
echo "Bumping patch version (dry run)..."
bumpver update --patch --dry
else
echo "Bumping patch version..."
bumpver update --patch
fi
}
# Function to bump minor version
bump_minor() {
if [ $DRY_RUN -eq 1 ]; then
echo "Bumping minor version (dry run)..."
bumpver update --minor --dry
else
echo "Bumping minor version..."
bumpver update --minor
fi
}
# Function to bump major version
bump_major() {
if [ $DRY_RUN -eq 1 ]; then
echo "Bumping major version (dry run)..."
bumpver update --major --dry
else
echo "Bumping major version..."
bumpver update --major
fi
}
# Function to show current version
show_version() {
echo "Current version:"
bumpver show
}
# Check command line arguments
if [ $# -eq 0 ]; then
echo "Usage: $0 [-b|-u|-p|-n|-j|-v] [-d]"
echo " -b: Build the package"
echo " -u: Upload the package"
echo " -p: Bump patch version"
echo " -n: Bump minor version"
echo " -j: Bump major version"
echo " -v: Show current version"
echo " -d: Dry run mode (use with -p, -n, or -j)"
exit 1
fi
# Process command line arguments
while getopts "bubpnjvd" opt; do
case $opt in
b)
build_package
;;
u)
upload_package
;;
p)
bump_patch
;;
n)
bump_minor
;;
j)
bump_major
;;
v)
show_version
;;
d)
DRY_RUN=1
;;
\?)
echo "Invalid option: -$OPTARG"
exit 1
;;
esac
done