Skip to content

Commit 283a657

Browse files
Merge branch 'main' into yash/fix/1908-cp-tar-stream-support
Resolves the import collision in TestCLICopyCommand and adopts the warmup image API the tests were moved to on main: - keep both ContainerTestSupport and ContainerizationArchive imports; the former is where the fixture moved, the latter is used to build tar streams with ownership and modes the host cannot reproduce unprivileged - WarmupImage.alpine320.rawValue replaces f.copyWarmupImage(ContainerFixture.warmupImages[0]) main also moved the containerization pin from 0.37.0 to 0.40.1.
2 parents 3720196 + 6e65319 commit 283a657

108 files changed

Lines changed: 3570 additions & 2475 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/common.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
DEVELOPER_DIR: "/Applications/Xcode_swift_6.3.app/Contents/Developer"
3333
steps:
3434
- name: Checkout repository
35-
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
35+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
3636
with:
3737
fetch-depth: 0
3838

.github/workflows/pr-label-apply.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020

2121
steps:
2222
- name: Checkout repository
23-
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
23+
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
2424

2525
- name: Download PR metadata artifact
2626
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
@@ -39,7 +39,7 @@ jobs:
3939
echo "PR Number: ${PR_NUMBER}"
4040
4141
- name: Apply labels using labeler
42-
uses: actions/labeler@f27b608878404679385c85cfa523b85ccb86e213 # v6
42+
uses: actions/labeler@bf12e9b00b37c5c0ca2b87b79b2daf7891dbda13 # v6
4343
with:
4444
pr-number: ${{ steps.pr-number.outputs.number }}
4545
repo-token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
test -e outputs/container-package/*.pkg || (echo "Missing .pkg file!" && exit 1)
4545
4646
- name: Create release
47-
uses: softprops/action-gh-release@718ea10b132b3b2eba29c1007bb80653f286566b # v3
47+
uses: softprops/action-gh-release@3d0d9888cb7fd7b750713d6e236d1fcb99157228 # v3
4848
with:
4949
token: ${{ github.token }}
5050
name: ${{ github.ref_name }}-prerelease

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ installer/
1515
.venv/
1616
.claude/
1717
.clitests/
18+
.vscode/
1819
test_results/
1920
*.pid
2021
*.log

Makefile

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
# Version and build configuration variables
1616
BUILD_CONFIGURATION ?= debug
1717
WARNINGS_AS_ERRORS ?= true
18-
SWIFT_CONFIGURATION := $(if $(filter-out false,$(WARNINGS_AS_ERRORS)),-Xswiftc -warnings-as-errors)
18+
SWIFT_CONFIGURATION := $(if $(filter-out false,$(WARNINGS_AS_ERRORS)),-Xswiftc -warnings-as-errors) -Xswiftc -enable-testing
1919
# Code-coverage instrumentation, layered onto the shared build stages. Empty for
2020
# ordinary builds; the coverage-* targets opt in via a target-specific value so
2121
# only those goals compile instrumented binaries.
@@ -46,6 +46,15 @@ ifneq ($(strip $(LOG_ROOT)),)
4646
SYSTEM_START_OPTS += --log-root "$(strip $(LOG_ROOT))"
4747
endif
4848

49+
# swift test event-stream JSON output for the concurrent/global integration
50+
# passes, only when LOG_ROOT is set.
51+
CONCURRENT_EVENT_STREAM_OPTS :=
52+
GLOBAL_EVENT_STREAM_OPTS :=
53+
ifneq ($(strip $(LOG_ROOT)),)
54+
CONCURRENT_EVENT_STREAM_OPTS += --event-stream-output-path "$(strip $(LOG_ROOT))/integration-concurrent.json" --event-stream-version 6.3
55+
GLOBAL_EVENT_STREAM_OPTS += --event-stream-output-path "$(strip $(LOG_ROOT))/integration-global.json" --event-stream-version 6.3
56+
endif
57+
4958
MACOS_VERSION := $(shell sw_vers -productVersion)
5059
MACOS_MAJOR := $(shell echo $(MACOS_VERSION) | cut -d. -f1)
5160

@@ -279,15 +288,16 @@ define RUN_INTEGRATION
279288
@echo Running the integration tests...
280289
@$(INTEGRATION_PROFILE_ENV) bin/container --debug system start --timeout 60 --enable-kernel-install $(SYSTEM_START_OPTS) && \
281290
{ \
291+
if [ -n "$(APP_ROOT)" ]; then CONTAINER_APP_ROOT=$(APP_ROOT) && export CONTAINER_APP_ROOT ; fi ; \
282292
CLITEST_LOG_ROOT=$(LOG_ROOT) && export CLITEST_LOG_ROOT ; \
283293
CLITEST_SCRATCH_ROOT=$(SCRATCH_ROOT) && export CLITEST_SCRATCH_ROOT ; \
284294
CONTAINER_CLI_PATH=$(ROOT_DIR)/bin/container && export CONTAINER_CLI_PATH ; \
285295
echo "==> Warmup pass" && \
286296
$(SWIFT) test $(INTEGRATION_SWIFT_EXTRA) -c $(BUILD_CONFIGURATION) $(SWIFT_CONFIGURATION) --filter "$(WARMUP_FILTER)" && \
287297
echo "==> Concurrent pass (width=$(PARALLEL_WIDTH))" && \
288-
$(SWIFT) test $(INTEGRATION_SWIFT_EXTRA) -c $(BUILD_CONFIGURATION) $(SWIFT_CONFIGURATION) --experimental-maximum-parallelization-width $(PARALLEL_WIDTH) --filter "$(CONCURRENT_FILTER)" && \
298+
$(SWIFT) test $(INTEGRATION_SWIFT_EXTRA) -c $(BUILD_CONFIGURATION) $(SWIFT_CONFIGURATION) $(CONCURRENT_EVENT_STREAM_OPTS) --experimental-maximum-parallelization-width $(PARALLEL_WIDTH) --filter "$(CONCURRENT_FILTER)" && \
289299
echo "==> Global pass (serial)" && \
290-
$(SWIFT) test $(INTEGRATION_SWIFT_EXTRA) -c $(BUILD_CONFIGURATION) $(SWIFT_CONFIGURATION) --experimental-maximum-parallelization-width 1 --filter "$(SERIAL_FILTER)" ; \
300+
$(SWIFT) test $(INTEGRATION_SWIFT_EXTRA) -c $(BUILD_CONFIGURATION) $(SWIFT_CONFIGURATION) $(GLOBAL_EVENT_STREAM_OPTS) --experimental-maximum-parallelization-width 1 --filter "$(SERIAL_FILTER)" ; \
291301
exit_code=$$? ; \
292302
$(INTEGRATION_POST_TEST) \
293303
echo Ensuring apiserver stopped after the CLI integration tests ; \
@@ -298,6 +308,7 @@ endef
298308

299309
.PHONY: integration
300310
integration: init-block
311+
@echo "HOSTNAME: $$(hostname)"
301312
$(RUN_INTEGRATION)
302313

303314
.PHONY: coverage-integration
@@ -310,6 +321,7 @@ coverage-integration: INTEGRATION_POST_TEST = cp $(COV_DATA_DIR)/*.profraw $(COV
310321
# process/module profile in its own file so they don't collide.
311322
coverage-integration: INTEGRATION_PROFILE_ENV = LLVM_PROFILE_FILE=$(COVERAGE_OUTPUT_DIR)/integration/%p-%m%c.profraw
312323
coverage-integration: coverage-all
324+
@echo "HOSTNAME: $$(hostname)"
313325
@mkdir -p $(COVERAGE_OUTPUT_DIR)/integration
314326
@rm -f $(COVERAGE_OUTPUT_DIR)/integration/*.profraw
315327
$(RUN_INTEGRATION)

0 commit comments

Comments
 (0)