diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 1560611..c1ae195 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -22,8 +22,8 @@ To test the quickstart environment:
1. Copy the repository directory over to `C:\choco-setup\files\` on the test machine. You do not need to copy the `.git` directory.
1. Open an elevated Windows PowerShell console.
-1. Run `C:\choco-setup\files\Start-C4bSetup.ps1`, and continue through the guide steps as detailed in `README.md`.
-1. Run `C:\choco-setup\files\Start-C4bVerification.ps1` and check that all tests pass.
+1. Run `C:\choco-setup\files\Initialize-C4bSetup.ps1`, and continue through the guide steps as detailed in `README.md`.
+1. Run `C:\choco-setup\files\Test-C4bSetup.ps1` and check that all tests pass.
## Testing a PR
@@ -43,7 +43,7 @@ Invoke-RestMethod "https://ch0.co/qsg-go" | Invoke-Expression
```
1. Perform each step of the Quickstart Guide, and make sure the changes you have attempted to make work appropriately.
-1. Run `Start-C4bVerification.ps1` and check that all tests pass.
+1. Run `Test-C4bSetup.ps1` and check that all tests pass.
1. If everything looks OK, push your branch and create your Pull Request.
## Creating a PR
diff --git a/Initialize-C4bSetup.ps1 b/Initialize-C4bSetup.ps1
index dbcdbd7..cb8541b 100644
--- a/Initialize-C4bSetup.ps1
+++ b/Initialize-C4bSetup.ps1
@@ -48,7 +48,7 @@ param(
$DatabaseCredential = $(
if ((Test-Path C:\choco-setup\clixml\chocolatey-for-business.xml) -and (Import-Clixml C:\choco-setup\clixml\chocolatey-for-business.xml).DatabaseUser) {
(Import-Clixml C:\choco-setup\clixml\chocolatey-for-business.xml).DatabaseUser
- } elseif ($PSCmdlet.ParameterSetName -eq 'Install') {
+ } else {
[PSCredential]::new(
"chocodbuser",
(ConvertTo-SecureString "$(New-Guid)-$(New-Guid)" -Force -AsPlainText)
diff --git a/OfflineInstallPreparation.ps1 b/OfflineInstallPreparation.ps1
index e574079..838c77c 100644
--- a/OfflineInstallPreparation.ps1
+++ b/OfflineInstallPreparation.ps1
@@ -108,6 +108,7 @@ foreach ($Package in (Get-Content $PSScriptRoot\files\chocolatey.json | ConvertF
"download", "$($Package.Name)"
"--output-directory", $PackageWorkingDirectory
"--ignore-dependencies"
+ "--no-progress"
)
$ChocoArgs += switch ($Package.psobject.properties.name) {
"Version" { "--version=$($Package.Version)" }
diff --git a/README.md b/README.md
index 8bef2c3..b3f084b 100644
--- a/README.md
+++ b/README.md
@@ -77,8 +77,7 @@ Below are the minimum requirements for setting up your C4B server via this guide
> - Run the following to zip up your offline bundle: `Compress-Archive -Path ~\Downloads\choco-quickstart-scripts\choco-quickstart-scripts-main\* -DestinationPath ~\Downloads\C4B-Files.zip`.
> - Transfer the `C4B-Files.zip` from your downloads folder to your offline system. All further steps will be carried out on the offline system.
> - Run `Expand-Archive -Path \path\to\C4B-Files.zip -DestinationPath C:\choco-setup\files -Force` on your offline system.
-> - Run `Set-Location "$env:SystemDrive\choco-setup\files"; Set-ExecutionPolicy Bypass Process; .\Start-C4bSetup.ps1` on your offline system.
-> - Proceed to Step 2!
+> - Proceed to Certificate Options!
### Step 1: Begin C4B Setup
@@ -90,39 +89,18 @@ Below are the minimum requirements for setting up your C4B server via this guide
Set-ExecutionPolicy Bypass -Scope Process -Force
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::tls12
Invoke-RestMethod https://ch0.co/qsg-go | Invoke-Expression
- Set-Location "$env:SystemDrive\choco-setup\files"
- .\Initialize-C4bSetup.ps1
```
- >
- > What does this script do? (click to expand)
- >
- > - Installs Chocolatey client from https://community.chocolatey.org
- > - Prompts for your C4B license file location, with validation
- > - Converts your C4B license into a Chocolatey package
- > - Configures local "choco-setup" directories
- > - Downloads setup files from "choco-quickstart-scripts" GitHub repo
- > - Downloads Chocolatey packages required for setup
- >
- >
+#### Certificate Options
-> :memo:**Offline Install**: You can now copy the `C:\choco-setup\` directory to any computer to continue the installation. To zip up that directory, run `Compress-Archive -Path C:\choco-setup\files\* -DestinationPath C:\choco-setup\C4B-Files.zip`. Move the archive to your new machine, and run `Expand-Archive -Path /path/to/C4B-Files.zip -DestinationPath C:\choco-setup\files -Force`. You should then run `Set-Location "$env:SystemDrive\choco-setup\files"; .\Start-C4bSetup.ps1`, and continue with the guide.
-
-#### Running with a Certificate
-
-**ALTERNATIVE 1 : Custom SSL Certificate** - If you have your own custom SSL certificate (purchased/acquired, or from your Domain CA), you can paste and run the following script with the `Thumbprint` value of your SSL certificate specified:
+**Custom SSL Certificate** - If you have your own custom SSL certificate (purchased/acquired, or from your Domain CA), you can paste and run the following script with the `Thumbprint` value of your SSL certificate specified:
```powershell
Set-Location "$env:SystemDrive\choco-setup\files"
.\Initialize-C4bSetup.ps1 -Thumbprint ''
```
-> :warning:**REMINDER**: If you are using your own SSL certificate, be sure to place this certificate in the `Local Machine > Trusted People` certificate store before running the above script, and ensure that the private key is exportable.
-
-> :memo: **NOTE**
-> A Role and User credential will be configured to limit access to your Nexus repositories. As well, CCM Client and Service Salts are configured to further encrypt your connection between CCM and your endpoint clients. These additional settings are also incorporated into your `Register-C4bEndpoint.ps1` script for onboarding endpoints.
-
-**ALTERNATIVE 2 : Wildcard SSL Certificate** - If you have a wildcard certificate, you will also need to provide a DNS name you wish to use for that certificate:
+**Wildcard SSL Certificate** - If you have a wildcard certificate, you will also need to provide a DNS name you wish to use for that certificate:
```powershell
Set-Location "$env:SystemDrive\choco-setup\files"
@@ -136,6 +114,30 @@ Set-Location "$env:SystemDrive\choco-setup\files"
.\Initialize-C4bSetup.ps1 -Thumbprint deee9b2fabb24bdaae71d82286e08de1 -CertificateDnsName chocolatey.foo.org
```
+> :warning:**REMINDER**: If you are using your own SSL certificate, be sure to place this certificate in the `Local Machine > Trusted People` certificate store before running the above script, and ensure that the private key is exportable.
+
+> :memo: **NOTE**
+> A Role and User credential will be configured to limit access to your Nexus repositories. As well, CCM Client and Service Salts are configured to further encrypt your connection between CCM and your endpoint clients. These additional settings are also incorporated into your `Register-C4bEndpoint.ps1` script for onboarding endpoints.
+
+**Self-Signed Certificate** - If you are running a bare-minimum proof of concept environment, you can generate a self-signed certificate and use that.
+
+```powershell
+Set-Location "$env:SystemDrive\choco-setup\files"
+.\Initialize-C4bSetup.ps1
+```
+
+>
+> What does this script do? (click to expand)
+>
+> - Installs Chocolatey client from https://community.chocolatey.org
+> - Prompts for your C4B license file location, with validation
+> - Converts your C4B license into a Chocolatey package
+> - Configures local "choco-setup" directories
+> - Downloads setup files from "choco-quickstart-scripts" GitHub repo
+> - Downloads Chocolatey packages required for setup
+>
+>
+
#### Script: Nexus Setup
As part of the C4B setup, we install and configure Sonatype Nexus Repository, which is used for hosting your Chocolatey packages internally:
@@ -198,23 +200,6 @@ As part of the C4B setup, we create a readme and install the Chocolatey Agent on
> :mag: **FYI**: A `Readme.html` file will now be generated on your desktop. This file contains login information for all 3 web portals (CCM, Nexus, and Jenkins). This `Readme.html`, along with all 3 web portals, will automatically be opened in your browser.
-### Script: Verification
-
-As a part of the C4B setup, we run tests to validate that your environment is correctly configured:
-
->
-> What does this script do? (click to expand)
->
-> - Verifies Nexus Repository installation
-> - Verifies Central Management installation
-> - Verifies Jenkins installation
-> - Ensures system firewall is configured
-> - Ensures Windows Features are installed
-> - Ensures services are correctly configured
-> - Ensured README is created
->
->
-
### Step 2: Setting up Endpoints
1. Find the `Register-C4bEndpoint.ps1` script in the `C:\choco-setup\files\scripts\` directory on your C4B Server. Copy this script to your client endpoint.