mirror of
https://github.com/awslabs/aws-crt-php.git
synced 2026-08-17 17:47:12 +00:00
PECL release follow up (#90)
This commit is contained in:
@@ -10,6 +10,7 @@ DIRS_TO_REMOVE = [
|
||||
'.deps',
|
||||
'.libs',
|
||||
'build',
|
||||
'cmake_build',
|
||||
'include',
|
||||
'modules',
|
||||
'vendor',
|
||||
@@ -38,9 +39,8 @@ FILES_TO_REMOVE = [
|
||||
'mkinstalldirs',
|
||||
'run-tests.php',
|
||||
'awscrt.la',
|
||||
'awscrt.dep',
|
||||
'ext/awscrt.dep',
|
||||
'composer.lock',
|
||||
'ext/awscrt.stub.php',
|
||||
'acinclude.m4',
|
||||
'aclocal.m4',
|
||||
'**/*.lo',
|
||||
|
||||
@@ -37,13 +37,10 @@ doc_ext = "(md|json|html|dot|graphml|png|gn|sha1|css|rst)"
|
||||
|
||||
special_docs = "(LICENSE.*|NOTICE|changelog.txt|CHANGELOG|THIRD-PARTY|README.*|readme|METADATA|CONTRIBUTORS|UPDATING|doc.config|THIRD-PARTY-LICENSES.txt)"
|
||||
special_tests = "(ci-test.sh|format-check.sh|run_tests.*|sanitizer-blacklist.txt|run-clang-tidy.sh|benchmark-build-run.sh|break-tests.sh|generate-coverage.sh|test.xml)"
|
||||
special_src = "(gen_api.php|gen_stub.php|CMakeLists.txt|post.sh|postun.sh|Makefile.*|build-buildspec.sh|build-deps.sh|objects.txt|go.*|BUILD.*|DEPS|install_and_run.sh|codemod.sh|requirements.txt)"
|
||||
special_src = "(gen_api.php|gen_stub.php|CMakeLists.txt|post.sh|postun.sh|Makefile.*|build-buildspec.sh|build-deps.sh|objects.txt|go.*|BUILD.*|DEPS|install_and_run.sh|codemod.sh|requirements.txt|awscrt.stub.php)"
|
||||
skip_files = "(package.xml.*|prepare_release.sh|codereview.settings|.*\\.o|.*\\.a|.*\\.obj|.*\\.lib|break-tests-android.sh|whitespace.txt|prepare_package_xml.sh|crypto_test_data.cc|.*\\.pdf|.*\\.svg|.*\\.docx|cbmc-proof.txt|codecov.*|litani.*|.*\\.toml|module\\.modulemap|cleanup.sh|^\..*)"
|
||||
|
||||
|
||||
special_scripts = "(awscrt.stub.php)"
|
||||
|
||||
skip_directories = "(tests|test|AWSCRTAndroidTestRunner|docker-images|codebuild|fuzz|third_party|docs|generated-src|aws-lc|aws-crt-sys|ecdsa-fuzz-corpus|bin|examples|compliance|verification|^\..*)"
|
||||
skip_directories = "(tests|test|AWSCRTAndroidTestRunner|docker-images|codebuild|fuzz|third_party|docs|generated-src|aws-lc|aws-crt-sys|ecdsa-fuzz-corpus|bin|examples|compliance|verification|dev-scripts|^\..*)"
|
||||
|
||||
output_file_name = os.path.join(work_dir, 'package.xml')
|
||||
|
||||
@@ -54,9 +51,7 @@ def process_file(file_name, f):
|
||||
return
|
||||
f.write(f'<file name="{file_name}" role="')
|
||||
# Special cases
|
||||
if re.match(special_scripts, file_name):
|
||||
f.write('script')
|
||||
elif re.match(special_docs, file_name):
|
||||
if re.match(special_docs, file_name):
|
||||
f.write('doc')
|
||||
elif re.match(special_tests, file_name):
|
||||
f.write('test')
|
||||
|
||||
@@ -3,6 +3,11 @@ import os
|
||||
import subprocess
|
||||
import xml.dom.minidom
|
||||
import sys
|
||||
import re
|
||||
|
||||
# get the github tag without the leading 'v'
|
||||
git_tag = subprocess.run(
|
||||
["git", "describe", "--tags", "--abbrev=0"], capture_output=True).stdout.decode('utf-8').strip()[1:]
|
||||
|
||||
|
||||
parser = argparse.ArgumentParser(description='PECL Package generator')
|
||||
@@ -12,7 +17,7 @@ parser.add_argument(
|
||||
parser.add_argument(
|
||||
"--email", help="Email address of the package maintainer", default='[email protected]')
|
||||
parser.add_argument(
|
||||
"--version", help="Version number of the package", required=True)
|
||||
"--version", help="Version number of the package", default=git_tag)
|
||||
parser.add_argument(
|
||||
"--notes", help="Release notes for the package", default='New release')
|
||||
args = parser.parse_args()
|
||||
@@ -27,6 +32,9 @@ NOTES = args.notes
|
||||
TOOLS_DIR = os.path.dirname(os.path.abspath(__file__))
|
||||
WORK_DIR = os.path.join(TOOLS_DIR, '..')
|
||||
|
||||
print(f'using version: {VERSION}')
|
||||
print(f'using notes: {NOTES}')
|
||||
|
||||
|
||||
def run(args):
|
||||
print(f"$ {subprocess.list2cmdline(args)}")
|
||||
@@ -39,6 +47,17 @@ os.chdir(WORK_DIR)
|
||||
|
||||
run(['git', 'submodule', 'update', '--init', '--recursive'])
|
||||
|
||||
# replace the version number in the ext/crt.c file
|
||||
data = ""
|
||||
with open("ext/crt.c", "r") as c_file:
|
||||
for line in c_file:
|
||||
line = re.sub("#define CRT_VERSION .*",
|
||||
f"#define CRT_VERSION \"{VERSION}\"", line)
|
||||
data += line
|
||||
with open("ext/crt.c", "w") as c_file:
|
||||
c_file.write(data)
|
||||
|
||||
|
||||
try:
|
||||
run(['python3', f'{TOOLS_DIR}/prepare_pecl_package_xml.py', '--name', NAME, '--user', USER,
|
||||
'--email', EMAIL, '--version', VERSION, '--notes', NOTES])
|
||||
|
||||
Reference in New Issue
Block a user