Currently, I'm a one-man show; using SVN for version control, Pester for Unit Testing, Jenkins for automated builds, and an internal ticketing system to track projects. It works great for *me*, but I can't see this workflow scaling up to support a team.
How today's teams are keeping track of projects, features requests, bugs, version controlling their source code, and automating builds?
Same as any other software development. There are lots of options, but you've got all the basic blocks covered in your current arrangement.
– TeamCity for CI
– Octopus Deploy for delivery
– Pester for unit testing PowerShell code
– Jira for ticketing
– Usually git for source control, though we have some customers who use TFS or VSO instead.
What sort of team is this? In an org with significant talent and the expectation that you'll treat production code as production code? In org where you have a bunch of click-next-admins who need prodding just to use tools you write, let alone source control? For ops teams (sysadmins, dbas, security, etc.), dev teams, or a mix?
Anyhow! We use the following in a predominantly *nix ecosystem:
– Source control: GitLab CE (git)
– Unit testing: Pester (for PowerShell)
– CI: GitLab CE CI
– CD: GitLab CE CI + Various scripts. e.g. PSDeploy
– Tracking: Internal ticketing system, Trello, Hipchat, etc. Bug tracking and feature requests might move to GitLab issues. Not very formal (small team encompassing nearly all roles)
When you say you don't see the workflow scaling up, what issues are you imagining? Those components are very important if you have code running in production (regardless of whether your ops team is proactive enough to be learning them).