bingen.go 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package kubecost
  2. ////////////////////////////////////////////////////////////////////////////////
  3. // NOTE: If you add fields to _any_ struct that is serialized by bingen, please
  4. // make sure to add those fields to the END of the struct definition. This is
  5. // required for backwards-compatibility. So:
  6. //
  7. // type Foo struct {
  8. // ExistingField1 string
  9. // ExistingField2 int
  10. // }
  11. //
  12. // becomes:
  13. //
  14. // type Foo struct {
  15. // ExistingField1 string
  16. // ExistingField2 int
  17. // NewField float64 // @bingen: <- annotation ref: bingen README
  18. // }
  19. //
  20. ////////////////////////////////////////////////////////////////////////////////
  21. // Default Version Set (uses -version flag passed) includes shared resources
  22. // @bingen:generate:Window
  23. // @bingen:generate:Coverage
  24. // @bingen:generate:CoverageSet
  25. // Asset Version Set: Includes Asset pipeline specific resources
  26. // @bingen:set[name=Assets,version=18]
  27. // @bingen:generate:Any
  28. // @bingen:generate:Asset
  29. // @bingen:generate:AssetLabels
  30. // @bingen:generate:AssetProperties
  31. // @bingen:generate:AssetProperty
  32. // @bingen:generate[stringtable,preprocess,postprocess]:AssetSet
  33. // @bingen:generate:AssetSetRange
  34. // @bingen:generate:Breakdown
  35. // @bingen:generate:Cloud
  36. // @bingen:generate:ClusterManagement
  37. // @bingen:generate:Disk
  38. // @bingen:generate:LoadBalancer
  39. // @bingen:generate:Network
  40. // @bingen:generate:Node
  41. // @bingen:generate:SharedAsset
  42. // @bingen:end
  43. // Allocation Version Set: Includes Allocation pipeline specific resources
  44. // @bingen:set[name=Allocation,version=16]
  45. // @bingen:generate:Allocation
  46. // @bingen:generate[stringtable]:AllocationSet
  47. // @bingen:generate:AllocationSetRange
  48. // @bingen:generate:AllocationProperties
  49. // @bingen:generate:AllocationProperty
  50. // @bingen:generate:AllocationLabels
  51. // @bingen:generate:AllocationAnnotations
  52. // @bingen:generate:RawAllocationOnlyData
  53. // @bingen:generate:PVAllocations
  54. // @bingen:generate:PVKey
  55. // @bingen:generate:PVAllocation
  56. // @bingen:end
  57. // @bingen:set[name=Audit,version=1]
  58. // @bingen:generate:AllocationReconciliationAudit
  59. // @bingen:generate:TotalAudit
  60. // @bingen:generate:AggAudit
  61. // @bingen:generate:AuditFloatResult
  62. // @bingen:generate:AuditMissingValue
  63. // @bingen:generate:AssetReconciliationAudit
  64. // @bingen:generate:EqualityAudit
  65. // @bingen:generate:AuditType
  66. // @bingen:generate:AuditStatus
  67. // @bingen:generate[stringtable]:AuditSet
  68. // @bingen:generate:AuditSetRange
  69. // @bingen:end
  70. // @bingen:set[name=CloudCostAggregate,version=2]
  71. // @bingen:generate:CloudCostAggregate
  72. // @bingen:generate[stringtable]:CloudCostAggregateSet
  73. // @bingen:generate:CloudCostAggregateSetRange
  74. // @bingen:generate:CloudCostAggregateProperties
  75. // @bingen:generate:CloudCostAggregateLabels
  76. // @bingen:end
  77. // @bingen:set[name=CloudCostItem,version=2]
  78. // @bingen:generate:CloudCostItem
  79. // @bingen:generate[stringtable]:CloudCostItemSet
  80. // @bingen:generate:CloudCostItemSetRange
  81. // @bingen:generate:CloudCostItemProperties
  82. // @bingen:generate:CloudCostItemLabels
  83. // @bingen:end
  84. //go:generate bingen -package=kubecost -version=17 -buffer=github.com/opencost/opencost/pkg/util