diff --git a/.github/workflows/main.yml b/.github/workflows/android.yml similarity index 54% rename from .github/workflows/main.yml rename to .github/workflows/android.yml index 8a9ca62..f53c428 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/android.yml @@ -1,4 +1,4 @@ -name: CI +name: CI_Android on: push: branches: [ master ] @@ -6,50 +6,6 @@ on: branches: [ master ] jobs: - iOS: - runs-on: macos-latest - defaults: - run: - working-directory: build - steps: - - uses: actions/checkout@v2 - - - name: Create build directory - run: mkdir -p build - working-directory: . - - - name: Configure - run: | - cmake \ - -GXcode \ - -DCMAKE_SYSTEM_NAME=iOS \ - "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" \ - -DCMAKE_OSX_DEPLOYMENT_TARGET=8 \ - -DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY \ - "-DMACOSX_BUNDLE_GUI_IDENTIFIER=GSL.\$(EXECUTABLE_NAME)" \ - -DMACOSX_BUNDLE_BUNDLE_VERSION=3.0.1 \ - -DMACOSX_BUNDLE_SHORT_VERSION_STRING=3.0.1 \ - .. - - - name: Build - run: cmake --build . --parallel `sysctl -n hw.ncpu` --config Release -- -sdk iphonesimulator - - - name: Start simulator - run: | - RUNTIME=`xcrun simctl list runtimes iOS -j|jq '.runtimes|last.identifier'` - UDID=`xcrun simctl list devices iPhone available -j|jq -r ".devices[$RUNTIME]|last.udid"` - xcrun simctl bootstatus $UDID -b - - - name: Test - run: | - for TEST in `find tests/Release-iphonesimulator -depth 1 -name "*.app"` - do - xcrun simctl install booted $TEST - TEST_ID=`plutil -convert json -o - $TEST/Info.plist|jq -r ".CFBundleIdentifier"` - xcrun simctl launch --console booted $TEST_ID - xcrun simctl uninstall booted $TEST_ID - done - Android: runs-on: macos-latest defaults: diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml new file mode 100644 index 0000000..e6330bb --- /dev/null +++ b/.github/workflows/ios.yml @@ -0,0 +1,51 @@ +name: CI_iOS +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + iOS: + runs-on: macos-latest + defaults: + run: + working-directory: build + steps: + - uses: actions/checkout@v2 + + - name: Create build directory + run: mkdir -p build + working-directory: . + + - name: Configure + run: | + cmake \ + -GXcode \ + -DCMAKE_SYSTEM_NAME=iOS \ + "-DCMAKE_OSX_ARCHITECTURES=arm64;x86_64" \ + -DCMAKE_OSX_DEPLOYMENT_TARGET=8 \ + -DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY \ + "-DMACOSX_BUNDLE_GUI_IDENTIFIER=GSL.\$(EXECUTABLE_NAME)" \ + -DMACOSX_BUNDLE_BUNDLE_VERSION=3.0.1 \ + -DMACOSX_BUNDLE_SHORT_VERSION_STRING=3.0.1 \ + .. + + - name: Build + run: cmake --build . --parallel `sysctl -n hw.ncpu` --config Release -- -sdk iphonesimulator + + - name: Start simulator + run: | + RUNTIME=`xcrun simctl list runtimes iOS -j|jq '.runtimes|last.identifier'` + UDID=`xcrun simctl list devices iPhone available -j|jq -r ".devices[$RUNTIME]|last.udid"` + xcrun simctl bootstatus $UDID -b + + - name: Test + run: | + for TEST in `find tests/Release-iphonesimulator -depth 1 -name "*.app"` + do + xcrun simctl install booted $TEST + TEST_ID=`plutil -convert json -o - $TEST/Info.plist|jq -r ".CFBundleIdentifier"` + xcrun simctl launch --console booted $TEST_ID + xcrun simctl uninstall booted $TEST_ID + done diff --git a/README.md b/README.md index 9063596..c3005c4 100644 --- a/README.md +++ b/README.md @@ -108,8 +108,8 @@ If you successfully port GSL to another platform, we would love to hear from you Target | CI/CD Status :------- | -----------: -iOS | ![CI](https://github.com/microsoft/GSL/workflows/CI/badge.svg) -Android | ![CI](https://github.com/microsoft/GSL/workflows/CI/badge.svg) +iOS | ![CI_iOS](https://github.com/microsoft/GSL/workflows/CI_iOS/badge.svg) +Android | ![CI_Android](https://github.com/microsoft/GSL/workflows/CI_Android/badge.svg) Note: These CI/CD steps are run with each pull request, however failures in them are non-blocking.