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

Developer-machine friendly setup script #2443

Closed
michbarsinai opened this issue Aug 10, 2015 · 23 comments
Closed

Developer-machine friendly setup script #2443

michbarsinai opened this issue Aug 10, 2015 · 23 comments

Comments

@michbarsinai
Copy link
Member

Part of the automated integration test suite, we need a script that a developer can run locally to setup a dataverse instance.

Assumptions:

  • PSQL, GlassFish installed
  • Dataverse installed on GF (e.g. by NetBeans)
  • PSQL's table structure correct (e.g. by JPA).

Script will:

  • Install reference data (needed for SWORD)
  • Update Jhove
  • Update Solr's schema
  • Create initial database data (root dv, blocks, NA value, etc.)
  • Anything else?

Script will not:

  • Require root access
  • Take too long

Post-installation, we should have an installation that's ready to support the full dataverse functionality, with the exception of functionality supported by Apache fronts (e.g. Shibboleth login). This can later serve as the starting point for automated integration testing.

@michbarsinai michbarsinai added this to the Candidates for 4.2 milestone Aug 10, 2015
@michbarsinai michbarsinai added Type: Suggestion an idea Component: Code Infrastructure formerly "Feature: Code Infrastructure" labels Aug 10, 2015
@michbarsinai
Copy link
Member Author

Assigning @scolapasta to route this. Also, @pdurbin, please add references to your scripts that do parts of this already.

@pdurbin
Copy link
Member

pdurbin commented Aug 11, 2015

https://github.com/IQSS/dataverse/tree/4.2/scripts/database/homebrew is where I've been putting scripts that I use on my laptop (where I use homebrew to install PostgreSQL and other software). Some highlights:

@scolapasta scolapasta modified the milestones: In Review, Candidates for 4.2 Sep 17, 2015
@scolapasta scolapasta removed their assignment Jan 27, 2016
@scolapasta scolapasta removed this from the Not Assigned to a Release milestone Jan 28, 2016
@bmckinney
Copy link
Contributor

first pass available here: https://github.com/bmckinney/dataverse-osx-playbook

tested on mavericks and yosemite so far

@pdurbin pdurbin mentioned this issue Mar 16, 2016
11 tasks
@pdurbin
Copy link
Member

pdurbin commented Mar 16, 2016

In pull request #3017 it says the installer no longer has to be run as root.

@bmckinney I'm hoping to try out your playbook real soon now on a new laptop. Thanks!

@pdurbin
Copy link
Member

pdurbin commented Jun 8, 2016

Over at #3163 we're considering adding a "dev mode" to the standard installer.

@pdurbin
Copy link
Member

pdurbin commented Jun 8, 2016

I mentioned this issue in a talk I gave last week: 2016-06-01 Setting Up Your Dataverse Development Environment - http://bl.ocks.org/pdurbin/raw/7847a0642f8bd6601a07c3619b4a35f6

@pdurbin
Copy link
Member

pdurbin commented Jun 28, 2017

@michbarsinai it's been a while since you opened this issue. What are your thoughts on it these days?

@michbarsinai
Copy link
Member Author

I still think that as a developer, I won't run a setup script that requires root access on my machine. If our script still requires that, this issue should be kept open.

As part os setting up a development environment for ROS, I once managed to link my MacOS python against a different version of Python the was brought in from homebrew. This killed all the python-using programs on my laptop, including ones that were running it under the covers. We're talking about 2 workdays lost just getting the system back together without a full re-install. So for me, at least, this is a very real issue.

@pdurbin
Copy link
Member

pdurbin commented Jun 28, 2017

@michbarsinai http://guides.dataverse.org/en/4.7/installation/installation-main.html#running-the-dataverse-installer says, "NEW in Dataverse 4.3: It is no longer necessary to run the installer as root! Just make sure the user that runs the installer has the write permission in the Glassfish directory." Have you tried it? I haven't. I use https://github.com/pdurbin/dataverse-osx-playbook and scripts at https://github.com/IQSS/dataverse/tree/develop/scripts/database/homebrew .

@michbarsinai
Copy link
Member Author

I haven't, but that seems to be the QA tests that needs doing to close this issue. Maybe someone on the mailing list could verify that is works.

@pdurbin
Copy link
Member

pdurbin commented Jun 28, 2017

I could imagine running vagrant up to spin up a Linux desktop machine that installs Netbeans, clones the repo, and runs the installation script as non-root. In fact, I have a proof of concept from the DVN 3 days at https://github.com/dvn/dvn-netbeans if anyone wants to run with that ball.

@djbrooke
Copy link
Contributor

Hey @michbarsinai - is this something that you have interest in reviewing (and the bandwidth to do so :))?

@pdurbin
Copy link
Member

pdurbin commented Nov 1, 2017

@michbarsinai are you still interested in improvements in this area? Please see the comment I just left at #3905 (comment) . I'm moving this out of Code Review because my improvements are currently tied up with Glassfish upgrades and there's a bug or two.

@michbarsinai
Copy link
Member Author

michbarsinai commented Nov 1, 2017 via email

@pdurbin
Copy link
Member

pdurbin commented Nov 2, 2017

@michbarsinai no worries.

As discussed during standup this morning, I think I'm the only one who cares about this issue and #3905 at the moment so I'm throwing this issue into the "Inbox" at https://waffle.io/IQSS/dataverse to hang out with hundreds of friends. 😄

I pushed what I have so far:

https://github.com/IQSS/dataverse/compare/2443-3905-dev-setup

Here too in case someone deletes that branch:

https://github.com/pdurbin/dataverse/tree/2443-3905-dev-setup

@pdurbin pdurbin removed their assignment Nov 2, 2017
@pdurbin pdurbin added Help Wanted: Code Mentor: pdurbin User Role: Hackathon Participant Core developers, frequent contributors, drive-by contributors, etc. and removed Help Wanted: Code Mentor: pdurbin Status: Development User Role: Hackathon Participant Core developers, frequent contributors, drive-by contributors, etc. labels Nov 2, 2017
@pdurbin
Copy link
Member

pdurbin commented Aug 6, 2018

@michbarsinai and I just discussed this issue and he's fine with closing it now that the installer doesn't require root.

@pdurbin pdurbin closed this as completed Aug 6, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants