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
Deploy documentation and make extended tests visible #1447
Conversation
1 is too low and causes already running builds to fail if you push new commits, there are no good reasons for this confusing behaviour
@Croydon I see you are switching to |
Before the documentation gets deployed all tests already ran. If you put it at the end, you first deploy new binaries and then documentation, which is worse in my opinion. |
You see the point with stages is to run your test first and when they pass you move to the stage where you deploy the binaries and then to the stage where you update the docs. At least that's the steps I take in other projects and that's the one I'll propose. |
This is possible as well, sure. Current order in this pull request:
Order in master right now:
So this pull request is already a huge improvement to this. You can surely improve it even more, but I think that would be follow up work. What is missing in this pull request is possibly the fixing of the tests, however, technically speaking even this is another issue. |
From what I see, currently
With stages we can have:
Note here that we can trigger 'Stage Test' on every occasion except release and all others on release. |
Come to think of it 'Stage Code Coverage report' can be combined with 'Stage Test' by altering the running travis script. |
See issue nodegit#1449
@Croydon What does the |
Here is my proposal of a simplified |
@JimiC I haven't used stage conditions or grouping the script steps into the stages on purposes as it is too buggy right now. See travis-ci/beta-features#28 Beyond that, your script seems to do the same as my version. before_script is preparing the environment for the steps later. Like setting some flags for GYP and downloading lcov. From my perspective this pull request's work is done. Not sure who needs to review this. @implausible maybe? |
What you describe is Regarding the condition declaration in stages what I used is safe as I have dealt with the bugs in another project and used those that work. I'm merely proposing simplicity versus complexity for the |
@Croydon I will get to this before the next release so we can start having good docs again. |
This was cancelled/failing on travis. @Croydon |
@implausible It's weird. Either the stage condition did work in this case (it's still a buggy beta feature), but then the overall build status should not be set to "failed". And if there was another reason then there should be some log... Could you please just restart the build? |
I will have a look in the next 36 hours. |
@Croydon I canceled the PR this time. It looks like you need another condition in the deploy stage which only causes it to run if the build is NOT in a PR. It is trying to update documentation in this PR. |
No, let it run. The job runs but the documentation will NOT get deployed. https://github.com/inexorgame/nodegit/blob/f725ac5950b0ba7fb126c0845212f1a78377a62e/.travis.yml#L106 |
Aha, thanks that's what I was missing. Thanks @Croydon! |
.travis.yml
Outdated
@@ -98,7 +103,7 @@ after_success: | |||
node-pre-gyp publish --target_arch=$TARGET_ARCH; | |||
fi | |||
|
|||
- if [ $TRAVIS_BRANCH == "master" ] && [ $TRAVIS_PULL_REQUEST == "false" ] && [ $TRAVIS_OS_NAME == "linux" ] && [ $NODE_VERSION == "6" ] && [ $TARGET_ARCH == "x64" ]; then | |||
- if [ $TRAVIS_BRANCH == "master" ] && [ $TRAVIS_PULL_REQUEST == "false" ] && [ $DEPLOY_DOCUMENTATION == "true" ]; then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should not deploy documentation unless it is a deploy build. Please add the TRAVIS_TAG condition.
Thanks @Croydon! |
As discovered in #1402 the docs aren't getting deployed anymore.
Also the tests don't run.
This fixes both (fix #1402) and has some other simplifications.
The tests are failing right now. This is already the case in the current master branch, but was hidden since no tests ran...