55 types : [opened, reopened, synchronize]
66
77jobs :
8- soundness :
9- name : Soundness
10- uses : swiftlang/github-workflows/.github/workflows/soundness.yml@main
11- with :
12- api_breakage_check_container_image : " swift:6.0-noble"
13- docs_check_container_image : " swift:6.0-noble"
14- license_header_check_project_name : " SwiftContainerPlugin"
15- shell_check_container_image : " swift:6.0-noble"
16-
17- unit-tests :
18- name : Unit tests
19- uses : apple/swift-nio/.github/workflows/unit_tests.yml@main
20- with :
21- linux_5_9_enabled : false
22- linux_5_10_enabled : false
23- linux_6_0_arguments_override : " --skip SmokeTests"
24- linux_nightly_6_0_arguments_override : " --skip SmokeTests"
25- linux_nightly_main_arguments_override : " --skip SmokeTests"
26-
27- integration-tests :
28- name : Integration tests
8+ endtoend-tests :
9+ name : End to end tests
2910 runs-on : ubuntu-latest
3011 services :
3112 registry :
3213 image : registry:2
3314 ports :
3415 - 5000:5000
35- container :
36- image : swift:6.0-noble
3716 steps :
3817 - name : Checkout repository
3918 uses : actions/checkout@v4
@@ -44,13 +23,27 @@ jobs:
4423 # https://github.com/actions/checkout/issues/766
4524 run : git config --global --add safe.directory ${GITHUB_WORKSPACE}
4625
47- - name : Run test job
48- env :
49- REGISTRY_HOST : registry
50- REGISTRY_PORT : 5000
26+ - name : Install the static SDK
27+ run : |
28+ swift sdk install \
29+ https://download.swift.org/swift-6.0.2-release/static-sdk/swift-6.0.2-RELEASE/swift-6.0.2-RELEASE_static-linux-0.0.1.artifactbundle.tar.gz \
30+ --checksum aa5515476a403797223fc2aad4ca0c3bf83995d5427fb297cab1d93c68cee075
31+
32+ - name : Build the example
5133 run : |
52- swift test
34+ cd Examples/HelloWorldHummingbird
35+ sed -i'.bak' -e '/swift-container-plugin/ s/(url:.*),/(path: "..\/.."),/' Package.swift
36+ swift package \
37+ --swift-sdk x86_64-swift-linux-musl \
38+ --allow-network-connections all \
39+ build-container-image \
40+ --repository localhost:5000/hummingbird \
41+ --from scratch
5342
54- swift-6-language-mode :
55- name : Swift 6 Language Mode
56- uses : apple/swift-nio/.github/workflows/swift_6_language_mode.yml@main
43+ - name : Run the example
44+ run : |
45+ docker run -d --platform linux/amd64 -p 8080:8080 localhost:5000/hummingbird
46+
47+ - name : Check that the service is running
48+ run : |
49+ curl -v localhost:8080 | grep "Hello World"
0 commit comments