事前ビルドしたcartonを使ってCIを短縮する #32
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- .github/workflows/test.yml | |
- bin/test | |
- Sources | |
- Tests | |
- Package.resolved | |
- Package.swift | |
jobs: | |
test-linux: | |
runs-on: ubuntu-22.04 | |
env: | |
SWIFT: swift-DEVELOPMENT-SNAPSHOT-2024-04-02-a | |
SWIFT_WASM: swift-wasm-DEVELOPMENT-SNAPSHOT-2024-04-03-a | |
steps: | |
- run: > | |
sudo apt-get update && | |
sudo apt-get install -y | |
binutils | |
git | |
gnupg2 | |
libc6-dev | |
libcurl4-openssl-dev | |
libedit2 | |
libgcc-9-dev | |
libpython3.8 | |
libsqlite3-0 | |
libstdc++-9-dev | |
libxml2-dev | |
libz3-dev | |
pkg-config | |
tzdata | |
unzip | |
zlib1g-dev | |
curl | |
binaryen | |
libappindicator1 | |
fonts-liberation | |
jq | |
- run: curl -L -O https://download.swift.org/development/ubuntu2204/${{ env.SWIFT }}/${{ env.SWIFT }}-ubuntu22.04.tar.gz | |
working-directory: /home/runner | |
- run: tar xzf ${{ env.SWIFT }}-ubuntu22.04.tar.gz | |
working-directory: /home/runner | |
- run: echo /home/runner/${{ env.SWIFT }}-ubuntu22.04/usr/bin >> ${GITHUB_PATH} | |
- run: swift --version | |
- run: > | |
swift experimental-sdk install | |
https://github.com/swiftwasm/swift/releases/download/${{ env.SWIFT_WASM }}/${{ env.SWIFT_WASM }}-ubuntu22.04_x86_64.artifactbundle.zip | |
- run: curl -L -O https://github.com/omochi/carton-build/releases/download/0.0.2/carton.tar.gz | |
working-directory: /home/runner | |
- run: tar xzf arton.tar.gz | |
working-directory: /home/runner | |
- run: echo /home/runner/carton >> ${GITHUB_PATH} | |
- run: carton --version | |
- uses: actions/checkout@v4 | |
- run: swift package resolve | |
- run: swift build --build-tests | |
- run: swift test | |
- run: > | |
swift build --experimental-swift-sdk wasm32-unknown-wasi | |
--build-tests | |
-Xswiftc -static-stdlib | |
-Xswiftc -Xclang-linker -Xswiftc -mexec-model=reactor | |
-Xlinker --export-if-defined=__main_argc_argv | |
--disable-build-manifest-caching | |
-Xlinker --stack-first | |
-Xlinker --global-base=1048576 | |
-Xlinker -z -Xlinker stack-size=1048576 | |
- run: > | |
CartonFrontend test | |
--prebuilt-test-bundle-path .build/debug/swift-reactPackageTests.wasm | |
--environment browser --headless | |
env: | |
WEBDRIVER_PATH: /usr/bin/chromedriver | |