chore: import upstream snapshot with attribution

This commit is contained in:
wehub-resource-sync
2026-07-13 12:47:58 +08:00
commit b16403ea71
789 changed files with 115226 additions and 0 deletions
@@ -0,0 +1,92 @@
import tempfile
import pytest
import os
import shutil
from e2b import Template, wait_for_timeout, default_build_logger
@pytest.fixture(scope="module")
def setup_test_folder():
test_dir = tempfile.mkdtemp(prefix="python_sync_test_")
folder_path = os.path.join(test_dir, "folder")
os.makedirs(folder_path, exist_ok=True)
with open(os.path.join(folder_path, "test.txt"), "w") as f:
f.write("This is a test file.")
# Create relative symlink
symlink_path = os.path.join(folder_path, "symlink.txt")
if os.path.exists(symlink_path):
os.remove(symlink_path)
os.symlink("test.txt", symlink_path)
# Create absolute symlink
symlink2_path = os.path.join(folder_path, "symlink2.txt")
if os.path.exists(symlink2_path):
os.remove(symlink2_path)
os.symlink(os.path.join(folder_path, "test.txt"), symlink2_path)
# Create a symlink to a file that does not exist
symlink3_path = os.path.join(folder_path, "symlink3.txt")
if os.path.exists(symlink3_path):
os.remove(symlink3_path)
os.symlink("12345test.txt", symlink3_path)
yield test_dir
# Cleanup
shutil.rmtree(test_dir, ignore_errors=True)
@pytest.mark.skip_debug()
def test_build_template(build, setup_test_folder):
template = (
Template(file_context_path=setup_test_folder)
# using base image to avoid re-building ubuntu:22.04 image
.from_base_image()
.copy("folder/*", "folder", force_upload=True)
.run_cmd("cat folder/test.txt")
.set_workdir("/app")
.set_start_cmd("echo 'Hello, world!'", wait_for_timeout(10_000))
)
build(template, skip_cache=True, on_build_logs=default_build_logger())
@pytest.mark.skip_debug()
def test_build_template_from_base_template(build):
template = Template().from_template("base")
build(template, skip_cache=True, on_build_logs=default_build_logger())
@pytest.mark.skip_debug()
def test_build_template_with_symlinks(build, setup_test_folder):
template = (
Template(file_context_path=setup_test_folder)
.from_image("ubuntu:22.04")
.skip_cache()
.copy("folder/*", "folder", force_upload=True)
.run_cmd("cat folder/symlink.txt")
)
build(template)
@pytest.mark.skip_debug()
def test_build_template_with_resolve_symlinks(build, setup_test_folder):
template = (
Template(file_context_path=setup_test_folder)
.from_image("ubuntu:22.04")
.skip_cache()
.copy(
"folder/symlink.txt",
"folder/symlink.txt",
force_upload=True,
resolve_symlinks=True,
)
.run_cmd("cat folder/symlink.txt")
)
build(template)