mirror of
				https://github.com/9001/copyparty.git
				synced 2025-10-31 04:32:20 -06:00 
			
		
		
		
	release-automation
This commit is contained in:
		
							parent
							
								
									5d96862c45
								
							
						
					
					
						commit
						f73742b6a4
					
				|  | @ -48,7 +48,7 @@ done | ||||||
| 
 | 
 | ||||||
| filt= | filt= | ||||||
| [ $clean  ] && filt='/<none>/{print$$3}' | [ $clean  ] && filt='/<none>/{print$$3}' | ||||||
| [ $hclean ] && filt='/localhost\/copyparty-|^<none>.*localhost\/alpine-/{print$3}' | [ $hclean ] && filt='/localhost\/(copyparty|alpine)-/{print$3}' | ||||||
| [ $purge  ] && filt='NR>1{print$3}' | [ $purge  ] && filt='NR>1{print$3}' | ||||||
| [ $filt ] && { | [ $filt ] && { | ||||||
|     [ $purge ] && { |     [ $purge ] && { | ||||||
|  |  | ||||||
							
								
								
									
										44
									
								
								scripts/genhelp.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										44
									
								
								scripts/genhelp.sh
									
									
									
									
									
										Executable file
									
								
							|  | @ -0,0 +1,44 @@ | ||||||
|  | #!/bin/bash | ||||||
|  | set -e | ||||||
|  | 
 | ||||||
|  | [ -e make-sfx.sh ] || cd scripts | ||||||
|  | [ -e make-sfx.sh ] && [ -e deps-docker ] || { | ||||||
|  |     echo cd into the scripts folder first | ||||||
|  |     exit 1 | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | cd ../dist | ||||||
|  | 
 | ||||||
|  | kwds='-bind -accounts -auth -auth-ord -flags -handlers -hooks -idp -urlform -exp -ls -dbd -chmod -pwhash -zm' | ||||||
|  | 
 | ||||||
|  | html() { | ||||||
|  |     for a in '' $kwds; do | ||||||
|  |         echo "html$a" >&2 | ||||||
|  |         COLUMNS=140 ./copyparty-sfx.py --ansi --help$a 2>/dev/null | ||||||
|  |         printf '\n\n\n%0139d\n\n' | ||||||
|  |     done | aha -b --no-xml | sed -r ' | ||||||
|  |         s/color:black/color:#222/g; | ||||||
|  |         s/color:dimgray\b/color:#606060/g; | ||||||
|  |         s/color:red\b/color:#c75b79/g; | ||||||
|  |         s/color:lime\b/color:#b8e346/g; | ||||||
|  |         s/color:yellow\b/color:#ffa402/g; | ||||||
|  |         s/color:#3333[Ff]{2}\b/color:#02a2ff/g; | ||||||
|  |         s/color:fuchsia\b/color:#f65be3/g; | ||||||
|  |         s/color:aqua\b/color:#3da698/g; | ||||||
|  |         s/color:white\b/color:#fff/g; | ||||||
|  |         s/style="filter:[^;]+/style="/g; | ||||||
|  |     ' | | ||||||
|  |     HLPTXT=CAT python3 ../scripts/help2html.py | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | txt() { | ||||||
|  |     (for a in '' $kwds; do | ||||||
|  |         echo "txt$a" >&2 | ||||||
|  |         COLUMNS=9001 ./copyparty-sfx.py --help$a 2>/dev/null | ||||||
|  |         printf '\n\n\n%0255d\n\n\n' | ||||||
|  |     done;printf '\n\n\n') | | ||||||
|  |     HLPTXT=CAT ../scripts/help2txt.sh | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | html | ||||||
|  | txt | ||||||
|  | @ -1,5 +1,6 @@ | ||||||
| #!/usr/bin/env python3 | #!/usr/bin/env python3 | ||||||
| 
 | 
 | ||||||
|  | import os | ||||||
| import re | import re | ||||||
| import socket | import socket | ||||||
| import subprocess as sp | import subprocess as sp | ||||||
|  | @ -21,6 +22,9 @@ def readclip(): | ||||||
|         "xclip -selection CLIPBOARD -o", |         "xclip -selection CLIPBOARD -o", | ||||||
|         "pbpaste", |         "pbpaste", | ||||||
|     ] |     ] | ||||||
|  |     if os.getenv("HLPTXT") == "CAT": | ||||||
|  |         cmds = ["cat"] | ||||||
|  | 
 | ||||||
|     for cmd in cmds: |     for cmd in cmds: | ||||||
|         try: |         try: | ||||||
|             return sp.check_output(cmd.split()).decode("utf-8") |             return sp.check_output(cmd.split()).decode("utf-8") | ||||||
|  | @ -44,7 +48,7 @@ def cnv(src): | ||||||
| 
 | 
 | ||||||
|     while True: |     while True: | ||||||
|         ln = next(src) |         ln = next(src) | ||||||
|         if "<font" in ln: |         if "<font" in ln or "<span" in ln: | ||||||
|             if not ln.startswith("<pre>"): |             if not ln.startswith("<pre>"): | ||||||
|                 ln = "<pre>" + ln |                 ln = "<pre>" + ln | ||||||
|             yield ln |             yield ln | ||||||
|  | @ -53,12 +57,14 @@ def cnv(src): | ||||||
|     for ln in src: |     for ln in src: | ||||||
|         ln = ln.rstrip() |         ln = ln.rstrip() | ||||||
|         t = ln |         t = ln | ||||||
|         if re.search(r"^<font[^>]+>copyparty v[0-9]", ln): |         if re.search(r"^<(font|span)[^>]+>copyparty v[0-9]", ln): | ||||||
|             in_sfx = 3 |             in_sfx = 3 | ||||||
|         if in_sfx: |         if in_sfx: | ||||||
|             in_sfx -= 1 |             in_sfx -= 1 | ||||||
|             if not skip_sfx: |             if not skip_sfx: | ||||||
|                 yield ln |                 yield ln | ||||||
|  |             elif not in_sfx: | ||||||
|  |                 yield "<span>" | ||||||
|             continue |             continue | ||||||
|         if '">uuid:' in ln: |         if '">uuid:' in ln: | ||||||
|             ln = re.sub(r">uuid:[0-9a-f-]{36}<", ">autogenerated<", ln) |             ln = re.sub(r">uuid:[0-9a-f-]{36}<", ">autogenerated<", ln) | ||||||
|  |  | ||||||
|  | @ -1,7 +1,7 @@ | ||||||
| #!/bin/bash | #!/bin/bash | ||||||
| set -e | set -e | ||||||
| 
 | 
 | ||||||
| ( xsel -ob | sed -r ' | ( ( HLPTXT=CAT && cat || xsel -ob ) | sed -r ' | ||||||
| s`/home/ed/`~/`; | s`/home/ed/`~/`; | ||||||
| s/uuid:[0-9a-f-]{36}/autogenerated/; | s/uuid:[0-9a-f-]{36}/autogenerated/; | ||||||
| s/(-salt SALT.*default: )[0-9a-zA-Z/+]{24}\)/\124-character-autogenerated)/; | s/(-salt SALT.*default: )[0-9a-zA-Z/+]{24}\)/\124-character-autogenerated)/; | ||||||
|  |  | ||||||
|  | @ -1,9 +1,13 @@ | ||||||
| #!/bin/bash | #!/bin/bash | ||||||
| set -e | set -e | ||||||
| 
 | 
 | ||||||
| # if specified, keep the following sfx flags last: gz gzz fast | # usage: ./scripts/rls.sh 1.9.11 gzz 50  # create full release | ||||||
| 
 | # usage: ./scripts/rls.sh sfx gzz 10     # just create sfx.py + en.py + helptext | ||||||
| parallel=1 | # | ||||||
|  | # if specified, keep the following sfx-args last:  gz gzz xz nopk udep fast | ||||||
|  | # | ||||||
|  | # WARNING: when creating full release, will DELETE all of ../dist/, | ||||||
|  | #   and all docker-images matching 'localhost/(copyparty|alpine)-' | ||||||
| 
 | 
 | ||||||
| [ -e make-sfx.sh ] || cd scripts | [ -e make-sfx.sh ] || cd scripts | ||||||
| [ -e make-sfx.sh ] && [ -e deps-docker ] || { | [ -e make-sfx.sh ] && [ -e deps-docker ] || { | ||||||
|  | @ -11,26 +15,24 @@ parallel=1 | ||||||
|     exit 1 |     exit 1 | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| v=$1 | v=$1; shift | ||||||
|  | [ "$v" = sfx ] && | ||||||
|  |     rls= || rls=1 | ||||||
| 
 | 
 | ||||||
| [ "$v" = sfx ] || { | [ $rls ] && { | ||||||
|     printf '%s\n' "$v" | grep -qE '^[0-9\.]+$' || exit 1 |     printf '%s\n' "$v" | grep -qE '^[0-9\.]+$' || exit 1 | ||||||
|     grep -E "(${v//./, })" ../copyparty/__version__.py || exit 1 |     grep -E "(${v//./, })" ../copyparty/__version__.py || exit 1 | ||||||
| 
 | 
 | ||||||
|     git push all |     ./make-sfx.sh nopk gz | ||||||
|  |     ../dist/copyparty-sfx.py --version >/dev/null | ||||||
|  | 
 | ||||||
|     git tag v$v |     git tag v$v | ||||||
|     git push all --tags |  | ||||||
| 
 |  | ||||||
|     rm -rf ../dist |     rm -rf ../dist | ||||||
| 
 |  | ||||||
|     ./make-pypi-release.sh u |     ./make-pypi-release.sh u | ||||||
|     (cd .. && python3 ./setup.py clean2) |  | ||||||
| 
 |  | ||||||
|     ./make-tgz-release.sh $v |     ./make-tgz-release.sh $v | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| rm -f ../dist/copyparty-sfx* | rm -rf /tmp/pe-copyparty* ../sfx ../dist/copyparty-sfx* | ||||||
| shift |  | ||||||
| ./make-sfx.sh "$@" | ./make-sfx.sh "$@" | ||||||
| ../dist/copyparty-sfx.py --version >/dev/null | ../dist/copyparty-sfx.py --version >/dev/null | ||||||
| mv ../dist/copyparty-{sfx,int}.py | mv ../dist/copyparty-{sfx,int}.py | ||||||
|  | @ -38,6 +40,9 @@ mv ../dist/copyparty-{sfx,int}.py | ||||||
| while [ "$1" ]; do | while [ "$1" ]; do | ||||||
|     case "$1" in |     case "$1" in | ||||||
|         gz*) break;; |         gz*) break;; | ||||||
|  |         xz) break;; | ||||||
|  |         nopk) break;; | ||||||
|  |         udep) break;; | ||||||
|         fast) break;; |         fast) break;; | ||||||
|     esac |     esac | ||||||
|     shift |     shift | ||||||
|  | @ -49,4 +54,26 @@ done | ||||||
| mv ../dist/copyparty-{sfx,en}.py | mv ../dist/copyparty-{sfx,en}.py | ||||||
| mv ../dist/copyparty-{int,sfx}.py | mv ../dist/copyparty-{int,sfx}.py | ||||||
| 
 | 
 | ||||||
|  | ./genhelp.sh | ||||||
|  | 
 | ||||||
|  | [ $rls ] || exit  # ---------------------------------------------------- | ||||||
|  | 
 | ||||||
|  | ./prep.sh | ||||||
|  | git add ../contrib/package/arch/PKGBUILD ../contrib/package/makedeb-mpr/PKGBUILD ../contrib/package/nix/copyparty/pin.json | ||||||
|  | git commit -m "update pkgs to $v" | ||||||
|  | git log | head | ||||||
|  | 
 | ||||||
|  | ( cd docker | ||||||
|  |     #./make.sh purge | ||||||
|  |     ./make.sh hclean | ||||||
|  |     ./make.sh hclean | ||||||
|  |     ./make.sh hclean pull img push | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | git push | ||||||
|  | git push --all | ||||||
|  | git push --tags | ||||||
|  | git push all | ||||||
|  | git push all --all | ||||||
|  | git push all --tags | ||||||
| # git tag -d v$v; git push --delete origin v$v | # git tag -d v$v; git push --delete origin v$v | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue