Enable FreeBSD/OpenBSD CI #47
Workflow file for this run
This file contains hidden or 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: Pull request | |
| permissions: | |
| contents: read | |
| on: | |
| pull_request: | |
| types: [opened, reopened, synchronize, ready_for_review] | |
| env: | |
| OPENBSD_META_DATA_CONTENT: | | |
| { | |
| "instance-id": "iid-local01", | |
| "dsmode": "local" | |
| } | |
| OPENBSD_USER_DATA_CONTENT: | | |
| #cloud-config | |
| timezone: UTC | |
| write_files: | |
| - content: | | |
| set -ex | |
| function atexit { | |
| echo 1 > /tmp/result | |
| tar cvf /dev/sd1c -C /tmp result | |
| halt -p; | |
| } | |
| trap atexit EXIT | |
| printf '\033\143' | |
| export PATH=/usr/local/bin:$PATH | |
| mount /dev/sd3c /mnt | |
| cp -r /mnt/repo /home/repo/ | |
| cd /home/repo/ | |
| swift build | |
| echo $? > /tmp/result | |
| tar cvf /dev/sd1c -C /tmp result | |
| halt -p | |
| path: /etc/rc.local | |
| permissions: '0755' | |
| jobs: | |
| tests: | |
| name: Test | |
| uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@0.0.10 | |
| with: | |
| linux_os_versions: '["amazonlinux2", "bookworm", "noble", "jammy", "rhel-ubi9"]' | |
| linux_build_command: "swift build" | |
| linux_exclude_swift_versions: '[{"swift_version": "5.8"}, {"swift_version": "5.9"}, {"swift_version": "5.10"}]' | |
| windows_build_command: "Invoke-Program swift build" | |
| windows_exclude_swift_versions: '[{"swift_version": "5.9"}]' | |
| macos_build_command: "xcrun swift build" | |
| macos_exclude_xcode_versions: '[{"xcode_version": "16.0"}, {"xcode_version": "16.1"}]' | |
| freebsd_build_command: "swift build" | |
| enable_macos_checks: true | |
| enable_ios_checks: true | |
| enable_freebsd_checks: true | |
| enable_linux_static_sdk_build: true | |
| enable_wasm_sdk_build: true | |
| enable_embedded_wasm_sdk_build: true | |
| enable_android_sdk_build: true | |
| openbsd: | |
| name: OpenBSD (7.8 - amd64) | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| container: | |
| image: ghcr.io/3405691582/openbsd-swift-amd64:7.8 | |
| env: | |
| CPU: "4" | |
| MEM: "16G" | |
| KVM: "-enable-kvm" | |
| options: --device /dev/kvm | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Write cloud-init files | |
| run: | | |
| echo "$OPENBSD_META_DATA_CONTENT" > /usr/local/share/cidata/meta-data | |
| echo "$OPENBSD_USER_DATA_CONTENT" > /usr/local/share/cidata/user-data | |
| - name: Prepare cloud-init | |
| run: | | |
| cp -r $GITHUB_WORKSPACE /usr/local/share/cidata/repo/ && \ | |
| cat /usr/local/share/cidata/meta-data && \ | |
| cat /usr/local/share/cidata/user-data && \ | |
| ls /usr/local/share/cidata | |
| - name: Run | |
| run: /usr/local/bin/cmd.sh | |
| - name: Report | |
| run: | | |
| ls -l /usr/local/share/tape && \ | |
| exit $(cat /usr/local/share/tape/result) | |
| source-integrity: | |
| name: Source integrity check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Run update.sh and check for modifications | |
| run: | | |
| bash update.sh | |
| if [ -n "$(git diff --name-only)" ]; then | |
| echo "::error::Source files do not match the upstream SQLite release. The following files differ:" | |
| git diff | |
| exit 1 | |
| fi | |
| soundness: | |
| name: Soundness | |
| uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main | |
| with: | |
| license_header_check_project_name: "Swift.org" | |
| license_header_check_enabled: false | |
| unacceptable_language_check_enabled: false |