Fixes#361
New Settings:
- PowerPlatformSolutionFolder - containing the name of the folder
containing a PowerPlatform Solution (only one)
- companyId and ppEnvironmentUrl added to deploymentSettings for
environments.
New Actions:
- BuildPowerPlatform - to build a PowerPlatform Solution
- DeployPowerPlatform - to deploy a PowerPlatform Solution
- PullPowerPlatformChanges - to pull changes made in PowerPlatform
studio into the repository
- ReadPowerPlatformSettings - to read settings and secrets for
PowerPlatform deployment
- GetArtifactsForDeployment - originally code from deploy.ps1 to
retrieve artifacts for releases or builds - now as an action to read
apps into a folder.
New Workflows:
- Pull PowerPlatform Changes
- Push PowerPlatform Changes
Other changes
- Getting artifacts for deployment moved from deploy.ps1 to a seperate
action
- Test for specific version of containerhelper moved to avoid many
warnings
- Add scenarios for PowerPlatform
- Add PowerPlatformSolution artifact to builds
- Add unpack parameter to DownloadArtifact to unpack after download.
TO:DO
- [x] Fix failing CI tests
- [x] Ensure End 2 End test are passing
- [x] Increment version number in PowerPlatform project (awaits
Increment Version Number PR from @mazhelez)
- [x] Unit Tests
- [x] End 2 End test
- [x] Remove PREVIEW prefix from various docs
- [x] Remove usage of private version of BcContainerHelper
- [x] Release notes
- [x] Document new settings
---------
Co-authored-by: freddydk <freddydk@users.noreply.github.com>
Co-authored-by: Maria Zhelezova <43066499+mazhelez@users.noreply.github.com>
Co-authored-by: Alexander Holstrup <117829001+aholstrup1@users.noreply.github.com>
Co-authored-by: andersgMSFT <90765077+andersgMSFT@users.noreply.github.com>
### The only real code change is in ReadSecrets
- If you precede a secret name with an asterisk in ReadSecrets/get, it
will be encrypted (as well as base64 encoded)
- Secrets used as SecureString in code will be requested as encrypted
(codeSignCertificatePassword and KeyVaultCertificatePassword) - allows
us to use ConvertTo-SecureString (without the -plaintext clause)
- Refactor connection to Azure KeyVault to only get credentials once and
keep clientSecret as secureString
This part also contains a bug fix that was introduced in
GetKeyVaultSecret during secrets refactoring (identified by secretName
parameter was never used)
### Whitespace only changes:
- Missing BOM on .ps1 files (all now have BOM - half didn't)
- Whitespace trailing lines (fixed everywhere)
### Suppressions:
- Suppress Analyzer on parameter blocks on test runners
- Suppress ConvertTo-SecureString (with plain text) in ReadSecretsHelper
- since we get GitHub secrets in clear text in code.
- Variables initialized in BeforeAll in tests
- Assigning isWindows, isMacOS and isLinux when running PS5
### Renaming functions to not use dash in names (must then follow
cmdlets)
### Removing actor+token from ReadSettings action as this is no longer
needed
- Functionality needing these have been moved to seperate actions
---------
Co-authored-by: freddydk <freddydk@users.noreply.github.com>
Co-authored-by: Maria Zhelezova <43066499+mazhelez@users.noreply.github.com>