support-firecloud
is software and configuration that supports various cycles of software development, through a canonical set of commands.
This was conceived within TobiiPro's Cloud Services.
git clone
this repository and you will gain access to:
- a bootstrap process of a developer machine based around GNU and Homebrew
- cross-platform. No more worries about this is how it works on a developer machine (e.g. MacOS/Windows) and this is how it works in the CI (Linux). Everything works the same everywhere!
- Apple MacOS
- Linux (Alpine)
- Linux (Debian)
- Linux (Ubuntu)
- Microsoft Windows (WSL)
- potentially more if you request/contribute it
- brings common GNU utilities (bash, make, grep, sed, find, etc), version locked. No more worries about different flags, different behaviour or missing features!
- brings Homebrew. No more worries about different versions available in distros' repositositories, or libraries/utilities not being available at all.
- cross-platform. No more worries about this is how it works on a developer machine (e.g. MacOS/Windows) and this is how it works in the CI (Linux). Everything works the same everywhere!
- sane per-user configuration (e.g. git)
- various utility scripts, most of them written in pure bash making them easy to read through, easy to run
- documentation of common tasks like bootstrapping, create github repositories, managing secrets, etc
Import this repository as a submodule
, and you will gain access to:
- a bootstrap process of a CI machine based around GNU and Homebrew
- cross-provider. No more worries about the effort to add another CI or to switch to another CI. Everything works the same everywhere!
AppVeyor_________
CircleCI_________
Cirrus CI________
Codeship_________
Github Actions CI
Gitlab CI________
Semaphore________
Travis CI________
- Integration with Travis CI is unstable since it now requires a subscription.
- The new pricing model for travis-ci.com
- Travis CI's new pricing plan threw a wrench in my open source works
- Travis CI is no longer providing CI minutes for open source projects
- cross-platform. See above.
- Docker images available for Linux
- cross-provider. No more worries about the effort to add another CI or to switch to another CI. Everything works the same everywhere!
- a robust yet flexible build system based on GNU Make
- sane per-repo configuration (e.g. vscode)
- various utility scripts
- a robust yet flexible AWS CloudFormation build system based on GNU Make
TODO
/bin
has executable scripts, mostly shell/sh
has common include shell scripts e.g. sourced from/bin
shell scripts/bootstrap
has scripts that help bootstrap a machine/dev
has scripts that help bootstrap a developer machine/dockerfiles
has bootstrapped Dockerfiles/ci
has scripts that help steer the CI pipelines/gitconfig
has git configuration/repo
has configuration that is repo-specific, for those repositories bootstrapped withsupport-firecloud
- newcomer
- daily work
git
(and Github) Pull Requests- working with
make
- working with a local
npm
dependency - how to release
- style
Use common sense and BE CONSISTENT. (Google)
- shell
- Makefile
- JavaScript/TypeScript
- SASS
- set up a new
git
repository - Amazon Web Services
- https://developers.google.com/tech-writing/overview
- https://github.com/google/styleguide/blob/gh-pages/docguide/philosophy.md
- https://www.julian.com/guide/write/intro