diff --git a/.github/workflows/swift.yml b/.github/workflows/swift.yml new file mode 100644 index 0000000..6902d68 --- /dev/null +++ b/.github/workflows/swift.yml @@ -0,0 +1,45 @@ +name: Build and Test + +on: + push: + pull_request: + schedule: + - cron: "5 7 * * 1" + +jobs: + linux: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + image: + - swift:5.0.3-xenial + - swift:5.1.5-xenial + - swift:5.2.5-xenial + - swift:5.3.2-xenial + - swift:5.3.2-bionic + container: ${{ matrix.image }} + steps: + - name: Checkout Repository + uses: actions/checkout@v2 + - name: Build Swift Debug Package + run: swift build -c debug + - name: Build Swift Release Package + run: swift build -c release + - name: Run Tests + run: swift test + nextstep: + runs-on: macos-latest + steps: + - name: Select latest available Xcode + uses: maxim-lobanov/setup-xcode@v1.2.1 + with: + xcode-version: 12.2 + - name: Checkout Repository + uses: actions/checkout@v2 + - name: Build Swift Debug Package + run: swift build -c debug + - name: Build Swift Release Package + run: swift build -c release + - name: Run Tests + run: swift test diff --git a/.travis.d/before-install.sh b/.travis.d/before-install.sh deleted file mode 100755 index f8d4b74..0000000 --- a/.travis.d/before-install.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -if [[ "$TRAVIS_OS_NAME" == "Linux" ]]; then - sudo apt-get -q update - sudo apt-get install -y wget \ - clang-3.8 libc6-dev make git libicu52 libicu-dev \ - git autoconf libtool pkg-config \ - libblocksruntime-dev \ - libkqueue-dev \ - libpthread-workqueue-dev \ - systemtap-sdt-dev \ - libbsd-dev libbsd0 libbsd0-dbg \ - curl libcurl4-openssl-dev \ - libssl-dev \ - libedit-dev \ - libpython2.7 \ - python2.7 python2.7-dev \ - libxml2 - - sudo update-alternatives --quiet --install /usr/bin/clang clang /usr/bin/clang-3.8 100 - sudo update-alternatives --quiet --install /usr/bin/clang++ clang++ /usr/bin/clang++-3.8 100 -fi diff --git a/.travis.d/install.sh b/.travis.d/install.sh deleted file mode 100755 index 2d1b622..0000000 --- a/.travis.d/install.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash - -# Install Swift - -wget "${SWIFT_SNAPSHOT_NAME}" - -TARBALL="`ls swift-*.tar.gz`" -echo "Tarball: $TARBALL" - -TARPATH="$PWD/$TARBALL" - -cd $HOME # expand Swift tarball in $HOME -tar zx --strip 1 --file=$TARPATH -pwd - -export PATH="$PWD/usr/bin:$PATH" -which swift - -if [ `which swift` ]; then - echo "Installed Swift: `which swift`" -else - echo "Failed to install Swift?" - exit 42 -fi -swift --version - - -# Environment - -TT_SWIFT_BINARY=`which swift` - -echo "${TT_SWIFT_BINARY}" diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 6f8d07e..0000000 --- a/.travis.yml +++ /dev/null @@ -1,35 +0,0 @@ -language: generic - -notifications: - slack: nozeio:LIFY1Jtkx0FRcLq3u1WliHRZ - -matrix: - include: - - os: Linux - dist: trusty - env: SWIFT_SNAPSHOT_NAME="https://swift.org/builds/swift-5.0.2-release/ubuntu1404/swift-5.0.2-RELEASE/swift-5.0.2-RELEASE-ubuntu14.04.tar.gz" - sudo: required - - os: Linux - dist: trusty - env: SWIFT_SNAPSHOT_NAME="https://swift.org/builds/swift-5.1.3-release/ubuntu1404/swift-5.1.3-RELEASE/swift-5.1.3-RELEASE-ubuntu14.04.tar.gz" - sudo: required - - os: Linux - dist: xenial - env: SWIFT_SNAPSHOT_NAME="https://swift.org/builds/swift-5.2-release/ubuntu1604/swift-5.2-RELEASE/swift-5.2-RELEASE-ubuntu16.04.tar.gz" - sudo: required - - os: osx - osx_image: xcode11 - - -before_install: - - ./.travis.d/before-install.sh - -install: - - ./.travis.d/install.sh - -script: - - export PATH="$HOME/usr/bin:$PATH" - - export SWIFTENV_ROOT="$HOME/.swiftenv" - - export PATH="${SWIFTENV_ROOT}/bin:${SWIFTENV_ROOT}/shims:$PATH" - - swift build -c release - - swift build -c debug