Skip to content

Instantly share code, notes, and snippets.

@pedroduartecosta
Last active March 31, 2018 14:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pedroduartecosta/0a8c9569b339e4246a8648f3a5e7cff6 to your computer and use it in GitHub Desktop.
Save pedroduartecosta/0a8c9569b339e4246a8648f3a5e7cff6 to your computer and use it in GitHub Desktop.
Project Development Best Practices
  • Implement CI/CD pipelines
    • Gitlab CI
      • Use Runners
    • Github
      • Use TravisCI or others
    • Necessary stages
      • Build Code
      • Run Tests
        • Code quality
        • Unit testing
        • End-to-end testing (front-end tests)
      • Deploy
        • On develop branch deploy to staging server
        • On master branch deploy to production server
  • Deployment Options
    • AWS (recommend using beanstalk service)
    • Heroku also a good choice
    • Nanobox (hard to add to gitlab ci, perfect on github)
  • Protect master and develop branchs, only allow merge requests which need to be peer reviwed before aproving the request
  • Use linters on IDEs
  • Use a diferente database for development and production environments
  • USE envionment variables fo sensitive data, keep this on a config file
  • Use docker images for better compatibility and easy configuration
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment