aerogear / aerogear-digger-installer

Ansible role for installing AeroGear Digger on OpenShift
https://aerogear.org/
Apache License 2.0
4 stars 17 forks source link

macOS base installer #9

Closed aidenkeating closed 7 years ago

aidenkeating commented 7 years ago

@PhilipGough @wei-lee This is my current progress on the task.

So basically there are lists of gems, npm packages, homebrew packages and node versions.

The first thing it does is install brew packages that you list. There's some commented out stuff to do with installing brew but the standard way involves prompts. I have linked a role that is for installing brew (https://github.com/geerlingguy/ansible-role-homebrew).

These are then used in the role which installs Ruby and RVM and then the gems you list with a version if specified.

It does the same for node. Although there's some issue with installing the node version at the moment.

{"cmd": "nvm install 6", "failed": true, "item": 6, "msg": "[Errno 2] No such file or directory", "rc": 2}

philipgough commented 7 years ago

@aidenkeating This looks like a good start. I would prefer to call the roll provision-osx or something more clear than that. Will be adding some code on top of this myself

aidenkeating commented 7 years ago

@PhilipGough Just pushed up changes now, except for the xcode stuff which I'm still working on. The install scripts have been brought down locally but to access Homebrew we will still need to pull it from GitHub. Some of the install scripts will also still use curl so I'm not sure if there's a benefit to keeping them locally in this repo. wdyt?

aidenkeating commented 7 years ago

@PhilipGough Would you mind taking a look at the changes here. I'm not sure if the things I have in defaults will be overridden by the things specified in vars? Should they be moved out to the vars/buildfarm file?

philipgough commented 7 years ago

@aidenkeating That default vars location is fine and those can be overridden from anywhere. The roles defaults are the lowest ranked variables

philipgough commented 7 years ago

@aidenkeating layout looks great. Just some comments/thoughts. Next step after resolving those is too lock down the test server behind the proxy, see if we hit any issues and document any additional config that might need to be done, WDYT?

aidenkeating commented 7 years ago

@PhilipGough Good idea. Will start addressing those comments now. Thanks 👍

aidenkeating commented 7 years ago

@PhilipGough Are you happy for this to be merged? I added some information on the hosts that the macOS provision needs access to.

There were a few manual steps needed on the Jenkins side, but that will be resolved in another ticket.

philipgough commented 7 years ago

@aidenkeating Yes I think we are good to go here. Do we have a list of those steps and anything else such as urls that we need to get out to documented?

Nice work on this btw 👍

aidenkeating commented 7 years ago

@PhilipGough There's a ticket for properly documenting the full urls we need access to (the hosts are in the README here):

The Jenkins steps are defined in a ticket and will be automated (in https://issues.jboss.org/browse/AGDIGGER-68).

Again though, this will probably require some documentation in case the user doesn't want to auto-configure the Jenkins node for some reason so I'll add that to that documentation ticket above (https://issues.jboss.org/browse/AGDIGGER-119).

Would you mind approving?

aidenkeating commented 7 years ago

Squashed! Thanks again for the help 👍