Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Deep Dive HCL@Terraform Meetup #3

Keke
December 02, 2019

Deep Dive HCL@Terraform Meetup #3

My Presentation about HCL about Terraform Meetup #3.

Keke

December 02, 2019
Tweet

More Decks by Keke

Other Decks in Technology

Transcript

  1. Terraform Meetup Tokyo #3
    Keke Twitter: @_k_e_k_e
    “Deep Dive HCL”
    Building Terraform file

    View Slide

  2. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”
    “ϓϩάϥϜ͔ΒTerraformϑΝΠϧΛ࡞Δํ๏”
    ”಺༰”
    (௿ϨϕϧͳAPI͔Β)

    View Slide

  3. Keke Twitter: @_k_e_k_e
    New Grad Merpay SRE
    Hobby: Reading Novels, Comics
    About me
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  4. “HCL”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  5. “HCL != .tf”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  6. “HCL”
    “Hashicorp Configuration Language”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  7. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”
    “HCLͷ༻్”
    “Terraform”
    “Github Actions”

    View Slide

  8. “HCLͰ.tfΛॻ͍͍ͯΔ”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  9. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  10. “Block Type”
    “Type(label)” “Name(label)”
    “Block”
    “Attribute” “Expression”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”
    “File”

    View Slide

  11. “Terraform with Go”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  12. “Block Type”
    “Type(label)” “Name(label)”
    “Block”
    “Attribute” “Expression”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”
    “File”

    View Slide

  13. “hcl.File”
    “HCL file”
    “HCL file”
    ParseHCL
    ParseHCL
    *hcl.File
    *hcl.File
    *hcl.File
    Merge
    Body
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  14. “hcl.Body”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  15. “hcl.Block”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  16. “HCL Structure”
    hcl.Body …
    K
    hcl.File hcl.Body
    hcl.Bodk
    hcl.Block
    K
    hcl.Attrib
    ute
    hcl.Attrib
    ute
    “HCL file”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  17. “HCL Structure”
    hcl.Body …
    K
    hcl.File hcl.Body
    hcl.Bodk
    hcl.Block
    K
    hcl.Attrib
    ute
    hcl.Attrib
    ute
    “HCL file”
    gohcl.EncodeIntoBody() -> io.WriteFile
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  18. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  19. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  20. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  21. “Building Blocks (and Attributes)”
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  22. “HCL Structure”
    hcl.Body …
    K
    hcl.File hcl.Body
    hcl.Bodk
    hcl.Block
    K
    hcl.Attrib
    ute
    hcl.Attrib
    ute
    “HCL file”
    gohcl.EncodeIntoBody() -> io.WriteFile
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  23. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  24. https://buildmedia.readthedocs.org/media/pdf/hcl/guide/hcl.pdf
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  25. “Datadog Monitor at Scale w/ Terraform”
    “Merpay Advent Calendar 2019 12/9”
    https://qiita.com/advent-calendar/2019/merpay
    “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”

    View Slide

  26. “Terraform Meetup Tokyo #3 Keke (twitter: @_k_e_k_e)”
    “Thank you”

    View Slide