This repository has been archived by the owner on Jun 18, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 13
Adds build VM and corresponding Makefile #6
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Trusty dusty 64, good enough for a start. The 14.04 LTS release is showing its age, but it's mostly useful for the automatic mounting of the /vagrant directory, which is currently broken in the 16.04 vagrant image. Ignores .vagrant directory, since it's only used for local VMs, and should never be committed to version control.
Will use an external role for configuring NodeJS, and the internal role will handle building the application. Ignores the external Ansible role geerlingguy.nodejs, as well.
Convenient wrappers for bootstrapping the Ansible dependencies, creating the build VM, and running the build process. The build process is currently failing on the 'npm run build-app' command; working on it.
Currently resolves to 4.4.7, which is an LTS and strongly recommended "for most users" on the nodejs.org homepage.
Two npm modules seem to be required at the site-wide level: * cross-env * webpack In particular, the build scripts expect `cross-env` to be found in PATH. The other app-level dependencies can be installed locally to the project root, which is in /vagrant in the build VM.
Several development libraries are required to build the electron app under Linux. Installed.
More accurately describes what the task is doing, and is also consistent with the npm subcommands declared in package.json.
The geerlingguy.nodejs role kindly sets up environment config in /etc/profile.d, which is great for interactive sessions, but Ansible will ignore those when running the `command` module to keep the env slim. To use that info, we'll declare a var with all the environment variable we want, and stick that on each task requiring it.
There wasn't any useful information in there anyway.
The new `npm run dist` command made it into the package.json file already, but the docs were still recommending the old commands. Updated the README with reference to the Makefile, but that only builds Linux packages in the Linux VM.
LGTM. I haven't looked into getting cross platform builds working, but I did read a couple of opinions warning that it's probably not worth the hassle (at least for windows). With the tools we are currently using, this issue appears to be blocking building the .dmg on the build vm. Getting linux builds working on OSX is way easier, not super helpful though. |
Thanks for linking to LinusU/node-appdmg#14, that's just the magic I was looking for. Subscribed to that thread. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Creates a Vagrantfile and lightweight Ansible playbook for running the build process inside an Ubuntu 14.04 Linux VM. Now, running
make build
will handle the entire build process for Linux packages.Updated the README to include the new
npm run dist
command, which still must be run manually (not in automation) for the OS X platform. @GabeIsman can you confirm that the restructured README is still accurate for OS X builds? Also, if you have any thoughts on building for all platforms within the VM, I'm all ears.Closes #5.