terramate-io / terramate

Terramate CLI is an open-source Infrastructure as Code (IaC) Orchestration and Code Generation tool for Terraform, OpenTofu and Terragrunt.
https://terramate.io
Mozilla Public License 2.0
3.12k stars 86 forks source link

feat(cloud): sync plan serial with changeset data #1783

Closed snakster closed 2 days ago

snakster commented 4 days ago

What this PR does / why we need it:

This PR sends the serial from the Terraform tfstate alongside the changeset details. This allows TMC to potentially discard data from older plans that would otherwise replace newer data.

Which issue(s) this PR fixes:

Special notes for your reviewer:

Does this PR introduce a user-facing change?

no
github-actions[bot] commented 4 days ago
metric: time/op
CloudReadLines-4: old 989µs ± 5%: new 999µs ± 4%: delta: 0.00%
CloudReadLine-4: old 6.94ms ± 1%: new 7.16ms ± 2%: delta: 3.15%
ListFiles-4: old 53.2µs ± 1%: new 53.1µs ± 1%: delta: 0.00%
Generate-4: old 2.54s ± 1%: new 2.56s ± 2%: delta: 0.00%
GenerateRegex-4: old 1.70s ± 1%: new 1.71s ± 1%: delta: 0.76%
TokensForExpressionComplex-4: old 1.26ms ± 1%: new 1.24ms ± 0%: delta: -0.93%
TokensForExpressionPlainStringNoNewline-4: old 785ns ± 0%: new 779ns ± 1%: delta: -0.70%
TokensForExpressionStringWith100Newlines-4: old 21.8µs ± 1%: new 21.5µs ± 0%: delta: -1.13%
TokensForExpressionObjectWith100KeysWithNumberValues-4: old 1.45ms ± 0%: new 1.44ms ± 0%: delta: -0.82%
TokensForExpression-4: old 1.26ms ± 0%: new 1.25ms ± 0%: delta: -0.81%
PartialEvalComplex-4: old 579µs ± 0%: new 577µs ± 0%: delta: -0.44%
PartialEvalSmallString-4: old 3.60µs ± 0%: new 3.59µs ± 1%: delta: -0.37%
PartialEvalHugeString-4: old 1.89ms ± 0%: new 1.88ms ± 1%: delta: -0.57%
PartialEvalHugeInterpolatedString-4: old 4.97ms ± 1%: new 4.94ms ± 1%: delta: -0.64%
PartialEvalObject-4: old 24.4µs ± 0%: new 24.3µs ± 1%: delta: -0.41%
TmAllTrueLiteralList-4: old 6.26ms ± 0%: new 6.26ms ± 0%: delta: 0.00%
TmAllTrueFuncall-4: old 160µs ± 0%: new 160µs ± 0%: delta: 0.00%
TmAnyTrueLiteralList-4: old 147ms ± 0%: new 147ms ± 0%: delta: 0.00%
TmAnyTrueFuncall-4: old 161µs ± 0%: new 161µs ± 0%: delta: -0.19%
TmTernary-4: old 2.86µs ± 0%: new 2.86µs ± 1%: delta: 0.00%
TmTry-4: old 52.0µs ± 0%: new 52.0µs ± 0%: delta: 0.00%
metric: alloc/op
CloudReadLines-4: old 3.12MB ± 0%: new 3.12MB ± 0%: delta: 0.00%
CloudReadLine-4: old 3.37MB ± 0%: new 3.37MB ± 0%: delta: 0.00%
ListFiles-4: old 22.0kB ± 0%: new 22.0kB ± 0%: delta: 0.00%
Generate-4: old 2.32GB ± 0%: new 2.32GB ± 0%: delta: 0.00%
GenerateRegex-4: old 955MB ± 0%: new 955MB ± 0%: delta: 0.00%
TokensForExpressionComplex-4: old 404kB ± 0%: new 404kB ± 0%: delta: 0.00%
TokensForExpressionPlainStringNoNewline-4: old 512B ± 0%: new 512B ± 0%: delta: 0.00%
TokensForExpressionStringWith100Newlines-4: old 12.4kB ± 0%: new 12.4kB ± 0%: delta: 0.00%
TokensForExpressionObjectWith100KeysWithNumberValues-4: old 394kB ± 0%: new 394kB ± 0%: delta: -0.00%
TokensForExpression-4: old 404kB ± 0%: new 404kB ± 0%: delta: -0.00%
PartialEvalComplex-4: old 408kB ± 0%: new 408kB ± 0%: delta: 0.00%
PartialEvalSmallString-4: old 1.74kB ± 0%: new 1.74kB ± 0%: delta: 0.00%
PartialEvalHugeString-4: old 166kB ± 0%: new 166kB ± 0%: delta: 0.00%
PartialEvalHugeInterpolatedString-4: old 4.38MB ± 0%: new 4.38MB ± 0%: delta: 0.00%
PartialEvalObject-4: old 21.9kB ± 0%: new 21.9kB ± 0%: delta: 0.00%
TmAllTrueLiteralList-4: old 1.74MB ± 0%: new 1.74MB ± 0%: delta: 0.00%
TmAllTrueFuncall-4: old 45.5kB ± 0%: new 45.5kB ± 0%: delta: -0.00%
TmAnyTrueLiteralList-4: old 37.9MB ± 0%: new 37.9MB ± 0%: delta: 0.00%
TmAnyTrueFuncall-4: old 45.6kB ± 0%: new 45.6kB ± 0%: delta: -0.00%
TmTernary-4: old 1.20kB ± 0%: new 1.20kB ± 0%: delta: 0.00%
TmTry-4: old 11.2kB ± 0%: new 11.2kB ± 0%: delta: 0.00%
metric: allocs/op
CloudReadLines-4: old 5.54k ± 0%: new 5.54k ± 0%: delta: 0.00%
CloudReadLine-4: old 60.0k ± 0%: new 60.0k ± 0%: delta: 0.00%
ListFiles-4: old 321 ± 0%: new 321 ± 0%: delta: 0.00%
Generate-4: old 25.9M ± 0%: new 25.9M ± 0%: delta: 0.00%
GenerateRegex-4: old 18.6M ± 0%: new 18.6M ± 0%: delta: 0.00%
TokensForExpressionComplex-4: old 4.83k ± 0%: new 4.83k ± 0%: delta: 0.00%
TokensForExpressionPlainStringNoNewline-4: old 20.0 ± 0%: new 20.0 ± 0%: delta: 0.00%
TokensForExpressionStringWith100Newlines-4: old 227 ± 0%: new 227 ± 0%: delta: 0.00%
TokensForExpressionObjectWith100KeysWithNumberValues-4: old 3.19k ± 0%: new 3.19k ± 0%: delta: 0.00%
TokensForExpression-4: old 4.84k ± 0%: new 4.83k ± 0%: delta: -0.01%
PartialEvalComplex-4: old 3.65k ± 0%: new 3.65k ± 0%: delta: 0.00%
PartialEvalSmallString-4: old 23.0 ± 0%: new 23.0 ± 0%: delta: 0.00%
PartialEvalHugeString-4: old 35.0 ± 0%: new 35.0 ± 0%: delta: 0.00%
PartialEvalHugeInterpolatedString-4: old 23.1k ± 0%: new 23.1k ± 0%: delta: 0.00%
PartialEvalObject-4: old 153 ± 0%: new 153 ± 0%: delta: 0.00%
TmAllTrueLiteralList-4: old 13.6k ± 0%: new 13.6k ± 0%: delta: -0.00%
TmAllTrueFuncall-4: old 460 ± 0%: new 460 ± 0%: delta: 0.00%
TmAnyTrueLiteralList-4: old 252k ± 0%: new 252k ± 0%: delta: 0.00%
TmAnyTrueFuncall-4: old 462 ± 0%: new 462 ± 0%: delta: 0.00%
TmTernary-4: old 28.0 ± 0%: new 28.0 ± 0%: delta: 0.00%
TmTry-4: old 147 ± 0%: new 147 ± 0%: delta: 0.00%