Skip to content

FEATURE EP-0 Modernises Vaporshell code and pulls from new AWS spec format - #7

Open
stuhay wants to merge 8 commits into
mainfrom
stuart
Open

FEATURE EP-0 Modernises Vaporshell code and pulls from new AWS spec format#7
stuhay wants to merge 8 commits into
mainfrom
stuart

Conversation

@stuhay

@stuhay stuhay commented Mar 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

Modernises the VaporShell module by migrating to the new AWS CloudFormation Resource Provider Schema format and removing deprecated/dead code.

Schema Pipeline Migration

  • Migrate from monolithic CFN spec to Resource Provider Schemas — downloads per-region zip files from 37 regions (up from 23) using the new https://schema.cloudformation.<region>.amazonaws.com/CloudformationSchema.zip URLs
  • New adapter function ConvertFrom-ProviderSchema transforms JSON Schema format into the legacy structure that Convert-SpecToFunction expects — zero changes needed to the function generator
  • Result: 1,667 resource types (identical to baseline), 8,985 property types (335 new additions, 0 regressions), zero parse errors across 10,652 generated files

Build Pipeline Cleanup

  • Replace Azure Pipelines gist dependency with local ci/BuildHelpers.ps1 (40 lines vs 400)
  • Remove dead Twitter/PoshTwit publishing task (API deprecated 2023)
  • Remove GitHub release publishing to SCRT-HQ (original author org)
  • Simplify build.ps1 — no more gist download or stale module dependencies

Deprecated Code Removal

  • Replace cfn-flip (archived 2023) with powershell-yaml module for YAML conversion
  • Bump minimum PowerShell from 3.0 to 5.1
  • Delete ProcessRequest3.ps1 (PS3-only code path)
  • Modernise AWS credential handling: StoredProfileAWSCredentials to CredentialProfileStoreChain
  • Remove AWSPowerShell/AWSPowerShell.NetCore legacy fallbacks from Import-AWSSDK.ps1
  • Update Pester from v4 to v5

Metadata Updates

  • Module manifest updated for ITV (author, company, copyright, URLs)
  • Added AWS::LanguageExtensions to PseudoParams.txt
  • Removed dead Spotinst icon URL

Testing

  • 55 Pester 5 tests (31 unit + 24 integration) — all passing
  • Full build comparison against installed module confirms zero regressions
  • All generated PowerShell files validate with zero parse errors

@snyk-io-eu

snyk-io-eu Bot commented Mar 6, 2026

Copy link
Copy Markdown

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@stuhay stuhay changed the title FEATURE EP-0 Adds missing intrinsic functions FEATURE EP-0 Adds missing intrinsic functions and fixes remain RetainExceptOnCreate errors Mar 6, 2026
stuhay added 2 commits March 6, 2026 15:44
…ormat - Migrate from monolithic CloudFormation Resource Specification to new Resource Provider Schemas (per-region zip downloads from 37 regions) - Add ConvertFrom-ProviderSchema adapter to transform JSON Schema format into legacy spec structure for Convert-SpecToFunction compatibility - Add 55 Pester 5 unit and integration tests for schema pipeline - Replace Azure Pipelines gist with local ci/BuildHelpers.ps1 - Remove dead Twitter/PoshTwit publishing task - Remove GitHub release publishing to SCRT-HQ - Replace cfn-flip dependency with powershell-yaml module - Bump minimum PowerShell version from 3.0 to 5.1 - Delete ProcessRequest3.ps1 (PS3-only code path) - Modernise AWS credential handling (CredentialProfileStoreChain) - Remove AWSPowerShell/AWSPowerShell.NetCore legacy fallbacks - Update module manifest for ITV (author, URLs, copyright) - Add AWS::LanguageExtensions to PseudoParams - Update Pester requirement from v4 to v5
@stuhay stuhay changed the title FEATURE EP-0 Adds missing intrinsic functions and fixes remain RetainExceptOnCreate errors FEATURE EP-0 Modernises Vaporshell code and pulls from new AWS spec format Jul 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant