From 307cb1d1143ba7f86d24f4084912dabcb90848b3 Mon Sep 17 00:00:00 2001 From: Sam Date: Tue, 9 Feb 2021 16:33:14 +1100 Subject: [PATCH] DEV: add helper script to run ember cli (#12005) This little helper script allows for easy ember cli development. To see the options run `bin/ember-cli -h` It allows you to proxy try.discourse.org with the `bin/ember-cli --try` switch, which effectively allows for some development without a rails installed. It passes on arguments to ember-cli so you can customize port and so on. It makes the assumption that on local people are using `bin/unicorn` for development. (it includes some extra discourse specific helpers) --- bin/ember-cli | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 bin/ember-cli diff --git a/bin/ember-cli b/bin/ember-cli new file mode 100755 index 0000000000..1a3da32de0 --- /dev/null +++ b/bin/ember-cli @@ -0,0 +1,33 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true + +require 'pathname' + +RAILS_ROOT = File.expand_path("../../", Pathname.new(__FILE__).realpath) +PORT = ENV["UNICORN_PORT"] ||= "9292" + +Dir.chdir(RAILS_ROOT) # rubocop:disable Discourse/NoChdir +Dir.chdir("app/assets/javascripts/discourse") # rubocop:disable Discourse/NoChdir + +PROXY = + if ARGV.include?("--try") + "https://try.discourse.org" + else + "http://localhost:#{PORT}" + end + +if ARGV.include?("-h") || ARGV.include?("--help") + puts "ember-cli OPTIONS" + puts "--try To proxy try.discourse.org", "" + puts "The rest of the arguments are passed to ember server per:", "" + exec "yarn run ember server --help" +end + +args = ["run", "ember", "server"] + ARGV.reject { |a| a == "--try" } + +if !args.include?("--proxy") + args << "--proxy" + args << PROXY +end + +exec "yarn", *args.to_a.flatten