bingen.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package opencost
  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=21]
  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:NodeOverhead
  42. // @bingen:generate:SharedAsset
  43. // @bingen:end
  44. // Allocation Version Set: Includes Allocation pipeline specific resources
  45. // @bingen:set[name=Allocation,version=23]
  46. // @bingen:generate[migrate]:Allocation
  47. // @bingen:generate[stringtable]:AllocationSet
  48. // @bingen:generate:AllocationSetRange
  49. // @bingen:generate:AllocationProperties
  50. // @bingen:generate:AllocationProperty
  51. // @bingen:generate:AllocationLabels
  52. // @bingen:generate:AllocationAnnotations
  53. // @bingen:generate:RawAllocationOnlyData
  54. // @bingen:generate:PVAllocations
  55. // @bingen:generate:PVKey
  56. // @bingen:generate:PVAllocation
  57. // @bingen:generate:LbAllocations
  58. // @bingen:generate:LbAllocation
  59. // @bingen:generate:GPUAllocation
  60. // @bingen:end
  61. // @bingen:set[name=CloudCost,version=3]
  62. // @bingen:generate:CloudCost
  63. // @bingen:generate:CostMetric
  64. // @bingen:generate[stringtable]:CloudCostSet
  65. // @bingen:generate:CloudCostSetRange
  66. // @bingen:generate:CloudCostProperties
  67. // @bingen:generate:CloudCostLabels
  68. // @bingen:end
  69. //go:generate bingen -package=opencost -version=17 -buffer=github.com/opencost/opencost/core/pkg/util