Reference
Informative materials on specific tools and patterns within SweetOps.
The many tools that make up the SweetOps approach
Best Practices
Collection of some of our docker-specific best practices.
Here’s a collection of some nice little hacks for docker.
The EditorConfig enables developers to define and maintain consistent coding styles between different editors and IDEs. It consists of a simple file format (.editorconfig) for defining coding styles such as tabs vs spaces. Most text editors support the format and adhere to defined styles. The config files are easily readable and they work nicely with version control systems.
The Feature Branch Workflow is a requirement for CI/CD. It’s a process by which all feature development takes place in a dedicated branch instead of the master branch. This makes it easy for multiple developers to collaborate on a particular feature while at the same time ensuring that the master branch remains stable.
Use .gitignore Use a .gitignore file in the root of every repo to exclude files that should never be committed.
Here’s an example of the .gitignore from our documentation repository.
themes/cloudposse/static/css/* themes/cloudposse/static/js/* static/webfonts/* static/css/* static/js/*
The GOST Framework is a method of clearly articulating a process for achieving a goal.
We’ve written thousands of lines of Makefile. These are our best practices from the trenches.
Developers (Makers) and Managers work differently. Interrupts are costly for developers and therefore the business.
Using Markdown is essential for clear communication on mediums such as GitHub, Slack or just plain text. Here are some of our recommendations on when to use certain conventions.
We strongly advise all companies to use “1Password for Teams” as their password management solution.
Features Shared MFA - useful for root accounts like AWS MFA Integration with Duo Groups Slack Integration Cloud Storage Cross-platform support (OSX, Windows, Linux, & Web) Alternatives LastPass
Submitting a Pull Request Prior to submitting your pull request, you might want to do a few things to clean up your branch and make it as simple as possible for the original repo’s maintainer to test, accept, and merge your work. If any commits have been made to the upstream master branch, you should rebase your development branch so that merging it will be a simple fast-forward that won’t require any conflict resolution work.
The RACI Responsibility assignment matrix is used to clarify the participation by various roles in completing tasks or deliverables as it relates to projects or teams.
Software versioning is the most widely adopted scheme for assigning unique version version numbers to software releases.
Our opinionated best-practices for Terraform
A small collection of helpful hints
OSX Enable File Vault Auto-lock Screen Saver Use MacID to Autolock Enable “Find My Mac” AWS Vault Leverage Key Chain for Secrets Use security command on the command line to add/remove secrets. Query keychain to retrieve secrets. Do not export secrets to the environment.