Skip to content

PR checks and how to fix failures

Olga Dalton edited this page Jul 23, 2020 · 2 revisions

Whenever you open a PR in the common Objective-C library, following checks are triggered:

License/CLA

As a contributor to the open source library, you'll need to sign the Contributor License Agreement: https://cla.opensource.microsoft.com/AzureAD/microsoft-authentication-library-common-for-objc

Travis CI (Push & PR)

Travis CI pipeline validates that common Objective-C library is building for both iOS and macOS, and ensures that all unit tests pass successfully. Travis build configuration can be found here

If you're seeing failures, try following:

  1. On your machine, run "python ./build.py" script to ensure that fix any test failures, or
  2. Open IdentityCore.xcworkspace and ensure that IdentityCoreTests iOS and IdentityCoreTests Mac succeed

[MSAL] Common core submodule update check

Common library contains common code used by both the Active Directory Authentication Library (ADAL) and the Microsoft Authentication Library (MSAL). Therefore, when updates are made to the common library, it is important to make sure that dependent libraries are also updated.

This CI pipeline ensures that common library updates don't require any additional MSAL updates.

If you see it failing, then:

  1. Check out dev branch of MSAL repository: https://github.com/AzureAD/microsoft-authentication-library-for-objc
  2. Create new branch with your name/common-core-update
  3. Run "git submodule update --init"
  4. Navigate to "MSAL/IdentityCore" folder
  5. Point Git submodule to your branch in common library
  6. Make sure MSAL builds and tests are passing. Fix any tests that are failing.
  7. Submit a pull request in MSAL repository with your submodule update and any MSAL and/or test fixes.
  8. Once your pull request is approved, merge it to dev branch
  9. Re-run CI build in common library, which should now succeed

[Broker] Common core submodule update check

This check is similar to the previous one, but applies to the Microsoft Authentication Broker. Steps to resolve issues are the same. However, if you're external to Microsoft, you won't be able to resolve issues by yourself. Someone from Microsoft Identity team will help you to resolve the build failure.

Don't forget to update changelog for common library

This check ensures that each PR owner updates changelog.txt file. Each new feature and/or bug fix needs to be represented in the changelog.txt file.