There are a few common gotchas that are easy to fix if know what to look for.
Your front-end loads within an iframe on a subdomain of
app.featurepeek.com. Your app should account for this in order to function properly on FeaturePeek. That means that you shouldn't framebust or depend on the URL to match a domain that you own.
I see a blank page when loading my environment
This usually means that your front-end does not allow to be run within an
iframe. Your app probably has the
X-Frame-Options HTTP header set to
deny. If this is the case, you'll need to remove this header. You can conditionalize only adding the header in non-FeaturePeek environments by checking if the
FEATUREPEEK_HOST environment variable is absent.
Otherwise, your app has the
frame-ancestors Content Security Policy directive set. You'll need to whitelist
https://*.featurepeek.com in order for your app to display properly on FeaturePeek:
Content-Security-Policy: frame-ancestors 'self' *.featurepeek.com ;
I'm not seeing my GitHub organization when I onboard
If you haven't already, you'll need to remove third-party restrictions for your GitHub org.
- Go to your organization's page on GitHub.
- Click the Settings tab.
- Click "Third-party access" in the sidebar.
- Remove restrictions to allow third-parties to access your org's metadata.
Read GitHub's help article about OAuth Access Restrictions for more detail.
I can't log in to my app within FeaturePeek
A caveat of the OAuth 2 spec is that OAuth logins are not recommended to be embedded within an
iframe. Depending on your browser settings, authentication may not go through as expected.
In Safari, this may happen if you have the Prevent cross-site tracking preference enabled. WebKit uses Intelligent Tracking Prevention that unfortunately limits logging in to a separate domain when within an
iframe. Double-check that you have preference unchecked in Safari Preferences > Privacy, then relaunch your browser for the setting to take effect.
For more information, please read Auth0's document on Cross-Origin Authentication.
Some of my page's subresources 404
crossorigin="anonymous" attribute is set, even when the subresources are loaded from the same origin.
To fix, simply remove the
crossorigin attribute on tags pointing to relative files on the same origin. Specifying
crossorigin on resources known to be on the same origin does nothing in the first place.
Pinging FeaturePeek in CI responds with "Couldn't find Project"
It's possible that there is a mismatch between your GitHub repo name and your FeaturePeek project name. Please ensure that the name of your repo on GitHub matches the name of your project on FeaturePeek. This most commonly occurs to forks.
My environments take too long to spin up
Pinging FeaturePeek only takes a few seconds, so if there's a noticeable slow-down, it's probably due to the build itself.
You should make sure that you are building your front-end in CI before running any tests. If your CI service supports concurrent jobs, move your build + ping FeaturePeek phase into a job that runs in parallel to your test job.