-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Semantic release blocked by always-failing Travis CI on merge push #3448
Comments
The different CI behaviour between master and PRs is because 3.a Grunt task There are started but not captured browser stack sessions: https://travis-ci.org/github/karma-runner/karma/jobs/668845791#L702-L755. Can someone with the correct account look into those sessions? |
I don't understand "PRs from forks". We seem to succeed on Travis when PR commits are tested, but then fail on Travis when those same commits are tests after merging into master. Is one or the other of these "PRs from forks"? Maybe you are saying that TRAVIS_WITHOUT_BS is true for PR commit tests but false for tests after merging? So that the TRAVIS_WITHOUT_BS==false path fails so merge commits fail.
|
Each pull request has a source branch. This can be a branch from the original repository This is what I called a "PR from a fork". It appears that you create your own PRs from a personal fork as well, which this is not strictly necessary when you have write permissions and could create PR branches here directly. Now there are secure environment variables in Travis, like If those secure variables were available in PRs from forks, a random guy from the internet could submit a change like diff --git a/.travis.yml b/.travis.yml
index 5295ece..96cca22 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -44,6 +44,10 @@ before_script:
script:
- npm run travis
+ - echo "browser stack $BROWSER_STACK_ACCESS_KEY"
+ - echo "npm $NPM_TOKEN"
+ - echo "github $GH_TOKEN"
+ - echo "🦹"
after_success:
# run automated release process with semantic-release and let Travis esecute it automatically. Suddenly all your credentials are leaked. In order to prevent that, Travis makes those secure environment variables unavailable in PRs from forks. All builds created from this repo directly (i.e. master builds, branch builds and PRs from branches) are considered trusted and have access to secure variables. The original documentation by Travis is available here.
Right. And this is because TRAVIS_WITHOUT_BS depends on TRAVIS_SECURE_ENV_VARS.
The Travis log of a master build shows URLs of browser stack sessions that were started, like e.g. https://automate.browserstack.com/builds/7c418d1aa417fa54d51f6d48bebdb5f85fd82b8c/sessions/aecaf26c351de3a75a637fa7731c51fe40326a94. I cannot access those links as I get a Login form only. I think there might be useful information available behind those links. |
Ok excellent, thanks! I can't use that link either but I know how to reset the travis values to ones I can access. I will be able to do that Monday. |
Ok we've made progress. I switched the browserstack username to one controlled by Unfortunately we are not done. The install of semantic-release fails with an obscure error:
I attempted to reproduce this locally but it looks like the issue is OS dependent. When installing on a mac I see
So the install works on my mac, so I can't debug the issue there. The |
Looks like this is a known issue browserify/watchify#374 |
To me it looks more like NPM having hard time to build a dependency tree because UPD Yup, packages are installed successfully. |
It looks like |
Well, I thought all the problems were solved. Both browserstack and saucelabs now work in the new config (except for one flaky proxy test which needs to be fixed). The release fails on git push tag. This implies that the GH_TOKEN is incorrect. I re-added it but it did not fix us:
I checked and karmarunnerbot has write access. The master branch on karma-runner/karma has "branch protection" unlike karma-jasmine. So maybe that is why we fail. I set karmarunnerbot as a branch exception. |
That will never be true. So the semantic-release can't work for this kind of protected branch thing. |
AFAICT the karmarunnerbot has to be a project Admin, not Maintainer. (The github protected branches are confusing and buggy0. |
We have semantic-release setup but it never triggers because the Travis CI always fails on
push
.I think the sequence is:
The travis Build History is red for branch master going back months:
https://travis-ci.org/github/karma-runner/karma/builds?utm_medium=notification&utm_source=github_status
The text was updated successfully, but these errors were encountered: