Skip to content

CI/CD pipeline, E2E test infrastructure#679

Merged
al-af merged 23 commits into
developmentfrom
dev/DELIVERY-115705/tooling-automation
May 14, 2026
Merged

CI/CD pipeline, E2E test infrastructure#679
al-af merged 23 commits into
developmentfrom
dev/DELIVERY-115705/tooling-automation

Conversation

@al-af
Copy link
Copy Markdown
Collaborator

@al-af al-af commented May 12, 2026

Summary

  • E2E test infrastructure: Scenario runner, 6-phase test plan (39 checks across both platforms) covering cold
    launch, deep links, custom events, identity APIs, and consent/stop
  • CI/CD pipelines: RC release with OIDC npm publishing, Android + iOS E2E workflows, RC smoke test, production
    release + promote workflows
  • QA example app: Auto-run flow exercising all SDK APIs with [AF_QA] log markers
  • Added getSDKVersion API
  • Deep link reliability: iOS -deepLinkURL launch arg (bypasses iOS 17/18 dialog), Android
    performOnDeepLinking in `onNewIntent

@github-actions github-actions Bot changed the title CI: RC pipeline workflows Release 6.17.9 May 13, 2026
al-af added 8 commits May 13, 2026 12:11
Migrates the npm publish steps in the production and RC release workflows to use OpenID Connect (OIDC) for authentication. This removes the reliance on a long-lived npm token secret, improving security by leveraging short-lived, ephemeral credentials.
Refactors and expands the React Native E2E test suite (v1.0.0 to v1.1.0) with more granular validation for critical SDK functionalities.

Key enhancements include:
*   Detailed checks for cold launch, background/foreground deep links, custom events with rich parameters, and identity API round-trips.
*   A comprehensive test for the `stop()` API, verifying event suppression and resumption.
*   Updates the example app (`App.tsx`) and adds `getCustomerUserId` to native/JS interfaces to enable these new test scenarios.

This significantly improves pre-publish validation and overall plugin reliability.
Resets device identifiers (Android ID) or privacy settings (iOS simulator) when a fresh install is required. This ensures the AppsFlyer server treats the device as truly new, allowing for accurate `is_first_launch` reporting and reliable attribution testing.
Fixes a timing issue in the example app's E2E test by delaying the `stop()` API call. This ensures the SDK has sufficient time to receive `onInstallConversionData` before being stopped, preventing premature termination of the request.

Enhances CI workflows to:
*   Update the iOS build cache key to include `example/.env`, ensuring a fresh build when environment variables change and preventing stale test configurations.
*   Log `.env` keys (with values redacted) during workflow runs for better debugging without exposing secrets.
@al-af al-af changed the title Release 6.17.9 CI/CD pipeline, E2E test infrastructure May 14, 2026
@al-af al-af marked this pull request as ready for review May 14, 2026 09:18
Copy link
Copy Markdown
Collaborator

@Dani-Koza-AF Dani-Koza-AF left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM !

@al-af al-af merged commit 36dd1b3 into development May 14, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants