Recent Releases of carbonifer

carbonifer - v0.4.0

Few bug fixes and adds the following support for:

  • GCP Google Kubernetes Engine (for defined instances)
  • AWS RDS instances
  • AWS EC2 instance launch template
  • AWS Autoscaling groups

Some internal reorg have been done:

  • Estimate resources of child modules
  • Define mapping of terraform resources in yaml files (more info in doc)

Changelog

  • a1ccf7b Add doc for terraform plan mapping mechanism (#95)
  • ae97944 Add missing AWS/EC2 ephemeral storages (#91)
  • a543471 Adding first support for Google Kubernetes Engine (#87)
  • a698270 Estimate resources in child modules (#82)
  • 163a825 Fix unit conversions (#101)
  • c448c54 Make replicas and counts clearer (#90)
  • 97ad90f Reorg : tf resource mapping as yaml file (#80)
  • 8e622ee Supports aws_db_instance (RDS) (#81)
  • f313cc2 [AWS] EC2 instance launch template (#96)
  • 2621e25 [AWS] Fix: override disk when mounted on same device name (#97)
  • f1c796b [AWS] autoscaling group (#93)

Consumption - Computation and Communication - Go
Published by github-actions[bot] over 1 year ago

carbonifer - v0.4.0

Terraform mapping

Large refactoring of the way it interprets terraform files. Now, for supporting a new resource type, it's required to write a yaml file, in which we describe with JQ queries (jq filters) how to get each property of a resource (vCPU, memory, storage...). Those mapping yaml files are located in internal/plan/mappings and for introducing a new resource we just need to add a new file there. This is documented in doc/terraform_mapping.md.

Resource support

It also introduces support of:

  • Google Kubernetes Engine
  • AWS RDS instances
  • AWS Autoscaling group (without support of mixed instances policy)
  • AWS EC2 instance launch template

Changelog

  • ae97944 Add missing AWS/EC2 ephemeral storages (#91)
  • a543471 Adding first support for Google Kubernetes Engine (#87)
  • a698270 Estimate resources in child modules (#82)
  • c448c54 Make replicas and counts clearer (#90)
  • 97ad90f Reorg : tf resource mapping as yaml file (#80)
  • 8e622ee Supports aws_db_instance (RDS) (#81)
  • f1c796b [AWS] autoscaling group (#93)
  • f313cc2 [AWS] EC2 instance launch template (#96)

Consumption - Computation and Communication - Go
Published by github-actions[bot] over 1 year ago

carbonifer - v0.3.4

Changelog

  • d344676 Fix: case when resource is nil

Consumption - Computation and Communication - Go
Published by github-actions[bot] over 1 year ago

carbonifer - v0.3.3

Changelog

  • d7f6fa4 Resolve locals variables (#78)

Consumption - Computation and Communication - Go
Published by github-actions[bot] almost 2 years ago

carbonifer - v0.3.2

Changelog

  • ecfacb4 Resolve Expressions when it references variables in called modules (#77)

Consumption - Computation and Communication - Go
Published by github-actions[bot] almost 2 years ago

carbonifer - v0.3.1

Changelog

  • 1d5b47a Fix how to get aws default region (#76)

Consumption - Computation and Communication - Go
Published by github-actions[bot] almost 2 years ago

carbonifer - v0.3.0

Few bug fixes and adds the following support for:

  • AWS
    • EC2 instances (with inline EBS, no GPU support for now)
    • EBS volume

It also embeds default config files and coefficient files into the binary, the executable is by default self sufficent. Once installed you don't need extra files to run it (but you can still override it)

Changelog

  • 1ef2458 Bump go to 1.20 and dependencies (#71)
  • eb24405 Embed data files and use it by default (#68)
  • 7b31f83 Embed default config file (#47)
  • 896b349 Get AWS_REGION from env var (#66)
  • 6ee9739 Make carbonifer available as Go library (#41)
  • 5ccac0f Use plan file is already exists (#70)
  • 12b79b6 [AWS] EC2 supports inline EBS (#72)
  • c58a4f0 [AWS] Introduce AWS EC2 basic (#63)
  • df974af [AWS] Supports EBS volumes and snapshot (#73)

Consumption - Computation and Communication - Go
Published by github-actions[bot] almost 2 years ago

carbonifer - v0.2.0

GCP

Few bug fixes and adds the following support for:

  • GPUs accelerators
  • Cloud SQL Instance
  • Managed Instance Group
    • fixed size
    • with autoscaler
  • Compute Instance from template

On top of existing resource types, it now supports:

Resource Limitations Comment
google_compute_instance_group_manager Count will be the target size. Uses machine specifications from google_compute_instance_template
google_compute_region_instance_group_manager Count will be the target size. Uses machine specifications from google_compute_instance_template
google_compute_instance_from_template Uses machine specs from google_compute_instance_template
google_compute_autoscaler Takes an average size Will set target size of google_compute_instance_group_manager
google_sql_database_instance Custom machine also supported

Changelog

Bug fixes

  • e0e27cb Fix absolute path as first arg (#33)
  • bb01d9c Fix: Use ConfigResource references for disk self link instead of url (#27)

New features

  • a3b56c7 Support counts (#32)
  • f9f906d [GCP] Instance Group Manager (#28)
  • 311053c [GCP] Compute Instance from template (#38)
  • fc05b63 [GCP] Instance group autoscaler (#34)
  • a94d696 [GCP] Regional Instance Group Manager (#36)
  • e8aa987 [GCP] Support for Cloud SQL database instances (#20)
  • 054ed27 [GCP] Supports machine types with GPU (#19)

Consumption - Computation and Communication - Go
Published by github-actions[bot] about 2 years ago

carbonifer - v0.1.0

GCP

Resource Limitations Comment
google_compute_instance GPU not supported yet Custom machine and nested boot disk type supported
google_compute_disk size needs to be set, otherwise get it from image
google_compute_region_disk size needs to be set, otherwise get it from image

Data resources:

Resource Limitations Comment
google_compute_image disk_size_gb needs can be set, otherwise get it from image only if GCP credentials are provided

Consumption - Computation and Communication - Go
Published by github-actions[bot] over 2 years ago