Skip to main content

Developer PowerShell

Developer PowerShell is a PowerShell profile that is optimized for development. It is a collection of scripts and configurations that are used to set up a development environment. The profile is designed to be used with the OctoMesh development environment.

Definitions and Concepts

  • Main Repositories: All repositories that are the "core" of OctoMesh, currently all except Plugs and Sockets. They are connecting directly or indirectly to MongoDB directly.
  • Main Services: The services of the main repositories

Here is a list of users that are needed for main services to connect to mongodb.

UserDefault Password in dev environmentComment
octo-system-adminOctoAdmin1User for creating tenants and configuration tenant independent
octo-system-ds-user-0OctoUser1User for the databases, 0 is the name of the database in MongoDB.

Powershell Commands

CommandDescription
Invoke-CloneMainReposClones all main repositories to your root directory.
Invoke-BuildAllBuilds all repositories starting with octo-* and a solution file (*.sln).
Invoke-BuildBuilds a repository for .NET using the current directory by default or defining by parameter repositoryPath
Start-OctoStarts the main services
Invoke-BuildAndStartOctoBuilds all repositories and starts the main services
Install-OctoInfrastructureUses the docker compose file located at infrastructure to compose the infrastructure dependencies
Uninstall-OctoInfrastructureUninstalls the infrastructure dependencies by using docker compose file at infrastructure
Start-OctoInfrastructureStarts the infrastructure dependencies by using docker compose file at infrastructure
Stop-OctoInfrastructureStops the infrastructure dependencies by using docker compose file at infrastructure
Get-OctoInfrastructureStatusGets the status of containers by using docker compose file at infrastructure
Push-GitRepoPush a repository to github using the current directory by default or defining by parameter repositoryPath
Push-AllGitReposPush all repositories starting with octo-*
Sync-AllGitReposPulls all repositories starting with octo-*
Sync-AllSubmodulesPulls all submodules of all repositories starting with octo-*
Sync-GitRepoPulls a repository from github using the current directory by default or defining by parameter repositoryPath
Sync-SubmodulePulls all submodules of a repository from github using the current directory by default or defining by parameter repositoryPath
Copy-AllNugetPackagesScans all octo-* and mm-* directories for nuget packages for version 999.0.0 and copies them to $NUGETPATH
Remove-GlobalNugetPackagesRemoves in global nuget package folder ($GLOBALNUGETPACKAGESPATH) all meshmaker nuget packages in version 999.0.0
Sync-NugetPackagesCopies, removes globally and restores nuget packages