Skip to content
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

Install guide modifications based on recent build attempts #543

Closed
wants to merge 3 commits into from
Closed

Install guide modifications based on recent build attempts #543

wants to merge 3 commits into from

Conversation

dcardon
Copy link

@dcardon dcardon commented Dec 16, 2015

I found that an install on a fresh VM didn't succeed without a few global npm installations and without telling git to used https instead of git (optional depending on your network).

Some additional npm install dependencies I found when doing a fresh installation.
@dcardon
Copy link
Author

dcardon commented Dec 16, 2015

What is this PR for?

A minor (but hopefully useful to others) documentation change.

What type of PR is it?

Documentation

Todos

N/A

Is there a relevant Jira issue?

No

How should this be tested?

Someone else could test this on a fresh VM / server.

Screenshots (if appropriate)

N/A

Questions:

  • Does the licenses files need update? No
  • Is there breaking changes for older versions? No
  • Does this needs documentation? No

README.md Outdated
@@ -35,6 +35,11 @@ sudo apt-get install git
sudo apt-get install openjdk-7-jdk
sudo apt-get install npm
sudo apt-get install libfontconfig
sudo npm -g install grunt-cli
Copy link
Member

Choose a reason for hiding this comment

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

Technically, neither node, nor npm or
grunt-cli https://github.com/apache/incubator-zeppelin/blob/master/zeppelin-web/package.json#L29
or bower https://github.com/apache/incubator-zeppelin/blob/master/zeppelin-web/package.json#L10
are required to be installed manually on the environment, as they all are beeing taken care of by mvn package in zeppelin-web through the frontend-maven-pluging and there is a ./grunt wrapper for manual run too

Copy link
Author

Choose a reason for hiding this comment

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

Unfortunately, this was not my experience. I followed these instructions on a fresh CentOS 7 install and the zeppelin-web module build failed without the npm install steps. Are you saying that it should work if you remove the sudo apt-get install npm step?

Copy link
Member

Choose a reason for hiding this comment

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

Thank you for sharing the experience!

What I was trying to say is that mvn package was designed to build zeppelin on clean environment, including web application, without requirements to have node.js&npm pre-installed there.

If it does not work like that on some environments - it has to be a bug well worth firing a JIRA issue.
Having those things installed sounds like a reasonable workaround to me in such cases.

Copy link
Author

Choose a reason for hiding this comment

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

Thanks! I totally agree it would be better to have these install automatically--I'll look and see if I can modify the pom.xml to get that working without the additional steps.

@jeffsteinmetz
Copy link
Contributor

If you follow the virtual machine instructions here, it installs with all required dependencies.
You will see that grunt and bower are not required (since maven handles it).

https://zeppelin.incubator.apache.org/docs/0.6.0-incubating-SNAPSHOT/install/virtual_machine.html

@dcardon
Copy link
Author

dcardon commented Dec 21, 2015

Thanks, @jeffsteinmetz! I didn't know that guide existed. I did run into issues running this on Windows, but eventually this does work (after manual Ansible installation within the VM itself).

I retried my previous install attempt, this time on a clean CentOS 7 install and it looks like the embedded bower and grunt installs contain hidden git pulls. So, this time I just did the git config --global url."https://".insteadOf git:// command and everything built just fine. It seems all of my build issues relate back to the corporate firewall.... So, maybe it's better just to keep the note about the git workaround in the install.

@jeffsteinmetz
Copy link
Contributor

We could reference this VM guide earlier in the Zeppelin documentation. Let me know if you think there is a documentation location at the top of the project that you feel would be beneficial.
It could be added to:
https://zeppelin.incubator.apache.org/docs/0.6.0-incubating-SNAPSHOT/development/howtocontribute.html

Also, could you let me know what version of Windows you were running when you installed Vagrant, Virtual Box and Ansible?
You shouldn’t need to install Ansible in the VM itself. The base VM only requires the bundled python – which exists in Ubuntu 14.04 LTS.

If it warrants additional research, we could test the VM installation steps on the specific version of Windows and improve the documentation.

What version of Ansible does your Window host machine (not VM) report?

@felixcheung
Copy link
Member

@dcardon @jeffsteinmetz where are we on this?

@dcardon
Copy link
Author

dcardon commented Mar 4, 2016

Thanks for following up, @felixcheung!

I've modified the changes to only call out the possible need to run git through https:// instead of git://, which was the root cause of the issue I encountered.

I think it's worthwhile to keep this documented because:

  • the maven build failures made it really unclear that this was causing the failure
  • most users behind corporate firewalls are likely to run into this issue

The Ansible VM on Windows is a separate issue that isn't part of the PR.

@jeffsteinmetz
Copy link
Contributor

I too confirmed, the build runs in the VM without NPM / Node installed.

The VM installs node and ruby (ruby for docs only) so that a developer can build and test updates to their code outside of the Maven workflow.

Let me know if you think there is a documentation location at the top of the project that you feel would be beneficial.
A reference to the VM could be added to:
https://zeppelin.incubator.apache.org/docs/0.6.0-incubating-SNAPSHOT/development/howtocontribute.html

@asfgit asfgit closed this in c38a0a0 May 9, 2018
asfgit pushed a commit that referenced this pull request May 9, 2018
close #83
close #86
close #125
close #133
close #139
close #146
close #193
close #203
close #246
close #262
close #264
close #273
close #291
close #299
close #320
close #347
close #389
close #413
close #423
close #543
close #560
close #658
close #670
close #728
close #765
close #777
close #782
close #783
close #812
close #822
close #841
close #843
close #878
close #884
close #918
close #989
close #1076
close #1135
close #1187
close #1231
close #1304
close #1316
close #1361
close #1385
close #1390
close #1414
close #1422
close #1425
close #1447
close #1458
close #1466
close #1485
close #1492
close #1495
close #1497
close #1536
close #1545
close #1561
close #1577
close #1600
close #1603
close #1678
close #1695
close #1739
close #1748
close #1765
close #1767
close #1776
close #1783
close #1799
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants