Skip to content
This repository has been archived by the owner on Sep 19, 2021. It is now read-only.

[RFC] Add dependency rebuilding (32/64 bit). #20

Merged
merged 1 commit into from
Sep 13, 2014

Conversation

fwalch
Copy link
Member

@fwalch fwalch commented Sep 12, 2014

This has been used to generate neovim/deps#4. Here's a full Travis test build: https://travis-ci.org/fwalch/bot-ci/builds/35124444. Output is in https://github.com/fwalch/deps/tree/testing.

@@ -2,9 +2,10 @@

BUILD_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
source ${BUILD_DIR}/ci/common/common.sh
source ${BUILD_DIR}/ci/common/dependencies.sh
source ${BUILD_DIR}/ci/common/neovim.sh
source ${BUILD_DIR}/ci/common/travis-dependencies.sh
Copy link
Member

Choose a reason for hiding this comment

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

small nit: travis-deps.sh ? Nevermind, I see why you named it like this.

@fwalch fwalch force-pushed the rebuild-deps branch 2 times, most recently from 2e92081 to 1d20f81 Compare September 12, 2014 14:32
@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

Changed the file names; build is running at https://travis-ci.org/fwalch/bot-ci/builds/35124444.

@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

Added a prompt to push to a repository for local builds and adapted the README. Example commit from a local build: fwalch/neovim-deps@d7dd51b

@justinmk
Copy link
Member

I think ci/common/neovim.sh, ci/common/doc.sh, and ci/common/{dependencies.sh names should not be changed. Only deps-repo.sh is a special case to avoid confusion; but changing the others adds confusion.

It's not a huge concern, but I would like to make it easy for other devs to keep up with the changes in bot-ci.

@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

Hm, my idea was that changing all repository-related library scripts to -repo would increase consistency and thus understandability. But if you think otherwise, I'll change it. For the Travis dependencies, should I keep travis-deps.sh or rename it back to dependencies.sh?

@justinmk
Copy link
Member

Yeah, but it's not really clear what neovim-repo really means, for example. We need neovim.sh for a number things; yes it comes from a repo, but that isn't really relevant.

rename it back to dependencies.sh?

I think it should stay dependencies.sh.

@fwalch fwalch force-pushed the rebuild-deps branch 2 times, most recently from 5d29cc1 to abb6da0 Compare September 12, 2014 16:57
@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

Okay, done. Also, if /opt/neovim-deps is an accessible Git repo, the script now won't delete the directory, but pull from the given DEPS_REPO/DEPS_BRANCH. To not interfere with the existing repo too much (change Git config, write to .git/info/sparse-checkout), it won't use Git subtree for local builds.

Build is at https://travis-ci.org/fwalch/bot-ci/builds/35143356.

@fwalch fwalch force-pushed the rebuild-deps branch 2 times, most recently from ec99f59 to ae3fd5d Compare September 12, 2014 17:42
@fwalch fwalch mentioned this pull request Sep 12, 2014
26 tasks
done
} || echo "No changes for ${CI_TARGET//-/ }."
return
} || prompt_key_local "Build finished, do you want to commit and push the results to ${!repo} ${!branch} (change by setting ${repo}/${branch})?" && {
Copy link
Member

Choose a reason for hiding this comment

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

Very slick :)

@justinmk
Copy link
Member

@fwalch I just ran bot-ci and it failed on a few things. I won't be able to investigate for the next few hours. If you have a chance to look at the logs, any idea if this PR will fix it?

@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

@justinmk The recent directory changes (/32/, /64/) to neovim/deps are causing this, I think.. so this PR should fix it. The latest test build ran successfully, and that was based on neovim/neovim@6a8932a (so using an up-to-date deps repo).

@fwalch
Copy link
Member Author

fwalch commented Sep 12, 2014

@justinmk Updated with is_ci_build, successful build at https://travis-ci.org/fwalch/bot-ci/builds/35167250.

echo "${1}"
echo "Press a key to continue, CTRL-C to abort..."
read -n 1 -s
fi
Copy link
Member

Choose a reason for hiding this comment

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

Won't this return 0/truthy for non-local builds?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, this is for things that the user might want to abort locally, but Travis should do in all cases (e.g. https://github.com/neovim/bot-ci/pull/20/files#diff-eb23d815554bddb9ac4f5c48c7f8601fR60).

justinmk added a commit that referenced this pull request Sep 13, 2014
Add dependency rebuilding (32/64 bit).
@justinmk justinmk merged commit a6fc23d into neovim:master Sep 13, 2014
@justinmk
Copy link
Member

Thanks again!

@fwalch fwalch deleted the rebuild-deps branch September 13, 2014 18:28
@fwalch
Copy link
Member Author

fwalch commented Sep 13, 2014

@justinmk Oh, infinite push loop:

Retry pushing to neovim/deps master.
From git://github.com/neovim/deps

  • branch master -> FETCH_HEAD
    Current branch master is up to date.

You have about 55 minutes (until Travis aborts/times out the build) to give Marvim write access to neovim/deps 😁

@justinmk
Copy link
Member

Thanks for catching that!

@justinmk
Copy link
Member

@tarruda @fwalch The vroom tests are failing with this:

No handlers could be found for logger "neovim.uv_stream"

�[3g        �H        �H        �H        �H        �H        �H        �H        �H        �H
�c�[!p�[?3;4l�[4l�>
�[1m�[36mtest/legacy/test2-filename-recognition.vroom�(B�[m

�[33mERROR�(B�[m: Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/vroom/runner.py", line 70, in __call__
    self.env.vim.Start()
  File "/usr/local/lib/python2.7/dist-packages/vroom/neovim_mod.py", line 45, in Start
    self.conn = neovim.connect(self.args.servername)
  File "/usr/local/lib/python2.7/dist-packages/neovim/__init__.py", line 22, in connect
    client.discover_api()
  File "/usr/local/lib/python2.7/dist-packages/neovim/client.py", line 255, in discover_api
    channel_id, api = self.rpc_request("vim_get_api_info", [])
  File "/usr/local/lib/python2.7/dist-packages/neovim/client.py", line 92, in rpc_request
    err, result = self.rpc_blocking_request(method, args)
  File "/usr/local/lib/python2.7/dist-packages/neovim/client.py", line 71, in rpc_blocking_request
    self.stream.send(method, args, response_cb)
  File "/usr/local/lib/python2.7/dist-packages/neovim/rpc_stream.py", line 32, in send
    self.stream.send([0, request_id, method, args])
  File "/usr/local/lib/python2.7/dist-packages/neovim/msgpack_stream.py", line 36, in send
    self.stream.send(self.packer.pack(msg))
  File "/usr/local/lib/python2.7/dist-packages/neovim/uv_stream.py", line 170, in send
    raise err
IOError: no such file or directory

Seems like a path might need to be updated in the python-client or in the vroom task for travis?

@fwalch
Copy link
Member Author

fwalch commented Sep 13, 2014

Hm, strange.. I ran a build from the deps PR, and it worked: https://travis-ci.org/fwalch/neovim/builds/35042442. I only found paths in .travis.yml (neovim/pynvim#30).

@justinmk
Copy link
Member

I ran a build from the deps PR, and it worked: https://travis-ci.org/fwalch/neovim/builds/35042442. I

@fwalch Can you restart that build and see what happens? Something between yesterday and today broke something, somehow. If that same build succeeds, we can at least rule out the deps repo I guess. Nevermind, just noticed it's running against a different branch: fwalch/neovim@14c6cb2

@fwalch
Copy link
Member Author

fwalch commented Sep 13, 2014

When I exit nvim, sometimes I get the following message:

Error detected while processing /usr/share/nvim/runtime/plugin/python_setup.vim:
line   41:
Before returning from a RPC call, channel 1 was closed by the client
Press ENTER or type command to continue

Could it be that it fails trying to log/output this error message (error occurs at raise err)?

@justinmk
Copy link
Member

Good question! I don't see that error, but it could be a clue.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants