* chore: fix package-lock.json
* chore: another package-lock fix attempt
* chore: another fix attempt
* chore: another fix attempt
* chore: ?
* chore: 21st times the charm
* chore: more attempts....
* chore: at a loss
* chore: rollback some unneeded fix attempts
* chore: move gh-badges install hack to postinstall
* chore: disable cypress and husky setup in heroku
* Apply suggestions from code review
Co-Authored-By: Paul Melnikow <github@paulmelnikow.com>
* chore: update node engines and remove ghbadges
* Check versions
* Pin to working npm version
* Reset unrelated changes
* Reset one more file
The buildpack config doesn't seem to be needed. This would affect review apps, staging, and self-hosting.
Also, devDependencies are installed by default during the build: https://devcenter.heroku.com/changelog-items/1376
By removing `NPM_CONFIG_PRODUCTION=false` we allow these to be pruned so they're kept out of the slug. This also has the advantage of creating a test environment in PRs where missing production dependencies will cause things to break. That'd be a good thing!
This implements the configuration mechanism I described in #2621. The heavy lifting is delegated to [node-config](https://github.com/lorenwest/node-config) with a minor assist from [dotenv](https://github.com/motdotla/dotenv).
`private/secret.json` has been replaced with environment variables and/or `config/local.yml`. See `doc/server-secrets.md`.
- Heroku reads the Node version from package.json. We're about to upgrade to Node 8 so this change to `engines` is only pre-emptive. It won't have any effect on the production servers.
- The production deploy scripts were missing the frontend files. This fixes that.
- This modifies the build setup to allow `BASE_URL=/`, which makes all requests relative to the page itself. That simplifies deploying the "debugging" frontend to the production servers, and makes it easy to host the frontend on Heroku.
- Followup from #1163
- Retire try.html
- Separate build config for dev and production
- Move config for badge examples into the JS build
- Move the prod transform into npm scripts
- In the future this could be handled using a bundler plugin
- make website builds production build as before
- Run the production build in CI to make sure it’s working
- Build the frontend on Heroku
This will allow us to create a review app for a pull request. A review app is a transient deploy of Shields with a unique URI. We can use it to interactively test new PRs without needing to run the branch locally.
Review apps would be especially useful, in conjunction with something like Netlify (#960), to test issues affecting SVG badge rendering on different browsers (#1132).
For the review app to be helpful for layout purposes, we're going to need Verdana on the CI machine. The font there is not measuring text correctly.