Tests: roll forward to latest major .NET runtime #3

Merged
gsadmin merged 12 commits from dev into main 2026-06-04 00:47:39 +00:00

12 Commits

Author SHA1 Message Date
GraceSolutions 2cbd5c2008 Add BulkSecretsTransformationAttribute for -Secrets parameter normalization
Publish to PowerShell Gallery / build (pull_request) Failing after 37s
Publish to PowerShell Gallery / release (pull_request) Has been skipped
Publish to PowerShell Gallery / publish (pull_request) Has been skipped
Normalizes Hashtable, OrderedDictionary, PSObject-wrapped, and typed generic dictionaries into IDictionary<string,string>[] before parameter binding, enabling native PowerShell @{...} and [ordered]@{...} literals against the strongly-typed -Secrets parameter on New-/Update-InfisicalSecret. Adds 8 transformation tests; 174/174 passing.
2026-06-03 20:21:00 -04:00
GraceSolutions 211fbcf34d Bulk v4 batch routes + strongly-typed -Secrets IDictionary[string,string][]
- Endpoint registry: register POST/PATCH/DELETE /api/v4/secrets/batch as preferred candidates for BulkCreate/Update/Delete; v3 raw routes retained as automatic fallback.
- DTOs: add projectId (required for v4) alongside workspaceId on the three batch request envelopes; both serialized when set, both ignored when null.
- SecretsClient: populate ProjectId in CreateBatch/UpdateBatch/DeleteBatch so v4 succeeds on first attempt.
- Cmdlets: -Secrets on New/Update-InfisicalSecret changed from Hashtable[] to IDictionary<string,string>[] for stronger typing and tab-completion; converter rewritten to accept IEnumerable<IDictionary<string,string>>. TagIds parsed from comma-separated string; nested Metadata dropped from bulk hashtable surface (still settable programmatically on bulk items).
- Tests: 166 passing (was 161). Bulk endpoints now resolve to v4 primary with v3 fallback; new tests verify projectId envelope serialization, dual-key omission, and TagIds trimming.
2026-06-03 20:06:13 -04:00
GraceSolutions e0a6ef02df M9: bulk + duplicate + connection inheritance
- Bulk parameter sets on New-/Update-/Remove-InfisicalSecret via v3/secrets/batch/raw.
- Copy-InfisicalSecret cmdlet wrapping v4/secrets/duplicate.
- InfisicalCmdletBase.Resolve{ProjectId,Environment,SecretPath,ApiVersion,OrganizationId} with verbose inheritance logging.
- All resource cmdlets refactored to use the resolution helpers.
- InfisicalBulkSecretConverter for flexible Hashtable -> DTO mapping.
- 22 new unit tests covering registry, DTOs, converter, and inheritance helpers. Total: 161 passing.
2026-06-03 19:59:11 -04:00
GraceSolutions 09c3d5c68b M8: CHANGELOG + DesignSpec for 2026.06.03.2136 (CRUD + auth provider expansion); refresh published manifest/binary 2026-06-03 17:38:45 -04:00
GraceSolutions d9822aab7a M7: Auth providers - JWT/OIDC/LDAP/Azure/GCP IAM via Connect-Infisical parameter sets 2026-06-03 17:36:34 -04:00
GraceSolutions 3d93fb1173 M6: Secrets mutation - New/Update/Remove cmdlets + client methods + DTO tests 2026-06-03 17:30:29 -04:00
GraceSolutions 84ece43d29 M5: Tags CRUD - model, DTOs, mapper, client, 5 cmdlets + tests 2026-06-03 17:27:49 -04:00
GraceSolutions 5316144933 M4: Folders CRUD - model, DTOs, mapper, client, 5 cmdlets + tests 2026-06-03 17:25:46 -04:00
GraceSolutions 6eab0713b5 M3: Environments CRUD - model, DTOs, mapper, client, 5 cmdlets + tests 2026-06-03 17:23:11 -04:00
GraceSolutions 0ebacddb2c M2: Projects CRUD - model, DTOs, mapper, client, 5 cmdlets + tests 2026-06-03 17:21:02 -04:00
GraceSolutions 612ecf2c7d M1: endpoint registry + shared API invoker for full CRUD expansion 2026-06-03 17:17:53 -04:00
GraceSolutions 269f0ea438 Tests: roll forward to latest major .NET runtime
Adds <RollForward>LatestMajor</RollForward> to the test project so the net8.0 testhost can run on hosts that only have a newer .NET runtime installed (e.g. CI hosts with .NET 10 only). Locally with .NET 8 present this is a no-op; on the runner with .NET 10.0.8 the testhost will roll forward instead of aborting with 'You must install or update .NET to run this application'.
2026-06-03 17:02:10 -04:00