This PR builds on [AC##9024][1], and implements setting the Nimbus endpoints from [a secret set at build time][2].
For production use, this requires a secret named `nimbus_url` to be put into CI.
Note: Nimbus is currently behind a feature flag.
If developers wish to use a Nimbus server for local development, you can set the url by adding an entry into local.properties, e.g.:
```
nimbus.remote-settings.url=https://settings.stage.moz4ws.net
```
Without setting server, Nimbus will be able to function, except no experimental definitions will be fetched, and features under experiment will be configured as if not enrolled in the experiment.
[1]: https://github.com/mozilla-mobile/android-components/pull/9024
[2]: https://groups.google.com/a/mozilla.com/g/android-components-team/c/lAGVKQy8aiA/m/rY3uGAwhBAAJ
* Steps to fix prepush hooks error
Updating Readme to include fix to error "Could not initialize class org.codehaus.groovy.runtime.InvokerHelper" which came up while running prepush hooks with Java version 14 on Mac
This change switches to using python scripts directly in a-c and a-s repositories, which achieves two things:
- we avoid overhead of running through a-c and a-s gradle's build phases, which is quite significant
- all of the logic for checking if projects are up-to-date or need to be republished now lives in those projects
End result is that local fenix builds now incur zero costs if there are no changes in a-c or a-s,
and if there are _any_ changes at all, the corresponding project is reliably recompiled and republished.
Adding this small point while we ramp up our localization story (many people have started localizing this project directly from GitHub which is not our current process).
* Updates Fenix taskcluster tasks to support beta release
* Throw error if -PversionName isn't set for release builds
* Uses beta secrets for beta
* Improves nightly and beta treeherder symbols